撤消ax.set_yticks([])

时间:2017-07-06 12:36:00

标签: python matplotlib plot

我使用现有脚本绘制非常具体的数据类型。该脚本返回一个ax对象。 这些ax对象用于填充新的较大主图中的子图。

在某个主脚本中,

ax.set_yticks([])

被调用。通常这是想要的。对于其中一个单独的绘图脚本,我想简单地撤消这个并让matplotlib根据数据自动设置我的y刻度,就像从未调用过LinearLayout一样。

1 个答案:

答案 0 :(得分:0)

你可以在调用set_yticks([])之前存储tick定位器并稍后恢复

import matplotlib.pyplot as plt

ax = plt.gca()
ax.plot(range(10), range(10), 'ko')

#store the yticks locator
l = ax.yaxis.get_major_locator()


#hide ticks and display the figure
ax.set_yticks([])
plt.gcf().show()
raw_input('pause') # => no more yticks

#restore the tick locator to its originale state
ax.yaxis.set_major_locator(l)
plt.gcf().canvas.draw()  #refresh the plot to sow the yticks again

plt.show()