删除matplotlib图中的xticks?
我有一个semilogx情节,我想删除xticks。 我试过了:
plt.gca().set_xticks([]) plt.xticks([]) ax.set_xticks([])
网格消失(好),但小蜱(在主蜱的地方)仍然存在。 如何删除它们?
tick_params
方法对于这样的东西非常有用。 此代码closures主要和次要的滴答,并从x轴删除标签。
from matplotlib import pyplot as plt plt.plot(range(10)) plt.tick_params( axis='x', # changes apply to the x-axis which='both', # both major and minor ticks are affected bottom='off', # ticks along the bottom edge are off top='off', # ticks along the top edge are off labelbottom='off') # labels along the bottom edge are off plt.show() plt.savefig('plot') plt.clf()
不是OP所要求的,但是一个简单的方法来禁用所有的轴线,刻度和标签就是简单地调用:
plt.axis('off')
有一个比John Vinyard给出的更好,更简单的解决scheme。 使用NullLocator
:
import matplotlib.pyplot as plt plt.plot(range(10)) plt.gca().xaxis.set_major_locator(plt.NullLocator()) plt.show() plt.savefig('plot')
希望有所帮助。
以下是我在matplotlib邮件列表中find的另一种解决scheme:
import matplotlib.pylab as plt x = range(1000) ax = plt.axes() ax.semilogx(x, x) ax.xaxis.set_ticks_position('none')
或者,您可以传递一个空的勾号位置和标签
plt.xticks([], [])
试试这个删除标签(但不是滴答):
import matplotlib.pyplot as plt plt.setp( ax.get_xticklabels(), visible=False)
例