说轴子图的标记显示为“0,20,40,60,80,100”,但我想让最后一个标记100不可见。不知道怎么做matplotlib轴子图?
答案 0 :(得分:4)
如果您正在设置x-ticks的位置,您只需用空字符串替换最后一个标签。
import pylab as plt
x=[12, 13, 14, 15, 16]
y=[14, 15, 16, 17, 18]
xticks=[12,13,14,15,16]
fig=plt.figure()
ax=fig.add_subplot(111)
ax.plot(x,y,'o-')
ax.set_xticks(xticks)
ax.set_xticklabels(xticks[:-1]+[""])
plt.show()
您还可以使用以下内容删除最后的x-tick标签
for label in ax.get_xticklabels():
pass
label.set_visible(False)
答案 1 :(得分:3)
你的问题没有说明你是否想要隐藏滴答线以外的滴答线,所以如果你还想隐藏滴答线,这一行应该这样做
plt.setp(ax.get_xticklines()[-2:],visible=False)
Matplotlib的滴答标签的顺序在底部和顶部之间交替,从左向右移动。因此,隐藏最后两个假设您希望顶部和底部都隐藏了勾选标签。隐藏最底层的一个:
plt.setp(ax.get_xticklines()[-2],visible=False)
或只是最重要的一个:
plt.setp(ax.get_xticklines()[-1],visible=False)
我应该补充一点,这是对@imsc的前一个答案的补充,它应该在任何设置xticklabels标识的行之后输入,以避免将其可见性状态重置为True。