import pylab as plt
x = range(1, 7)
y = (220, 300, 300, 290, 320, 315)
def test(axes):
axes.bar(x,y)
axes.set_xticks(x, [i+100 for i in x])
a = plt.subplot(1,2,1)
test(a)
b = plt.subplot(1,2,2)
test(b)
Почему set_xticks не устанавливает метки тиков?
Я ожидаю в xlabs как 101, 102 ...
Однако, если я переключиться использовать plt.xticks(x, [i+100 for i in x])
и переписать функцию в явном виде, она работает.
Я думаю, потому что в вашем коде set_xticks получает объект генератора, а не список. Попробуйте 'list ([i + 100 для i в x)] вместо. – rabs
@rabs нет никакого генератора, они оба списка, я использую python 2 – colinfang