Remove xticks in a matplotlib plot?
我有一个半对数图,我想去掉这些符号。我尝试过:
1 2 3 | plt.gca().set_xticks([]) plt.xticks([]) ax.set_xticks([]) |
网格消失(正常),但小刻度(在主刻度的位置)仍保留。如何移除它们?
1 2 3 4 5 6 7 8 9 10 11 | 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=False, # ticks along the bottom edge are off top=False, # ticks along the top edge are off labelbottom=False) # labels along the bottom edge are off plt.show() plt.savefig('plot') plt.clf() |
。
不完全符合操作要求,但禁用所有轴线、刻度和标签的简单方法是简单地调用:
1 | plt.axis('off') |
。
或者,您可以传递一个空的勾号位置并将其标记为
1 | plt.xticks([], []) |
。
以下是我在Matplotlib邮件列表中找到的另一个解决方案:
1 2 3 4 5 6 | import matplotlib.pylab as plt x = range(1000) ax = plt.axes() ax.semilogx(x, x) ax.xaxis.set_ticks_position('none') |
氧化镁
有一个比约翰·温雅德给出的更好、更简单的解决方案。使用
1 2 3 4 5 6 | import matplotlib.pyplot as plt plt.plot(range(10)) plt.gca().xaxis.set_major_locator(plt.NullLocator()) plt.show() plt.savefig('plot') |
号
希望有帮助。
尝试此操作删除标签(但不删除标记):
1 2 3 | import matplotlib.pyplot as plt plt.setp( ax.get_xticklabels(), visible=False) |
例子
这段代码可能有助于只删除xticks。
1 2 | from matplotlib import pyplot as plt plt.xticks([]) |
。
这段代码可能有助于删除xticks和yticks。
1 2 | from matplotlib import pyplot as plt plt.xticks([]),plt.yticks([]) |
1 2 | # remove all the ticks (both axes), and tick labels on the Y axis plt.tick_params(top='off', bottom='off', left='off', right='off', labelleft='off', labelbottom='on') |
。