Python / Matplotlib:如何在带有刻度但没有刻度标签的子图中绘图?

时间:2014-05-12 20:56:57

标签: python matplotlib axis-labels axes

我可以删除刻度标签:

ax.axes.get_yaxis().set_visible(False)

但这也消除了蜱虫。我想保留滴答声。

2 个答案:

答案 0 :(得分:5)

只需使用NullFormatter

即可
ax = plt.gca()
ax.yaxis.set_major_formatter(matplotlib.ticker.NullFormatter())
plt.draw()

答案 1 :(得分:4)

+1 @tcaswell回答,我想这是标准的方法。但它的缺点是格式化程序现在丢失了,当你在绘图上移动鼠标时,你没有得到鼠标所指向的点的坐标。

这是我通常依赖的一个很好的功能,特别是因为"数据光标"默认情况下,Matplotlib中缺少Matlab中存在的工具(link)(有关具有类似功能的插件,请参阅mpldatacursor)。在Matplotlib中,我用鼠标悬停在一个点上,然后阅读' live'格式化程序提供的坐标。

要关闭标签而不杀死格式化程序,您可以使用

plt.setp(ax.get_yticklabels(), visible=False)