Vin*_*ent 248 python plot matplotlib
我有一个semilogx情节,我想删除xticks.我试过了:
plt.gca().set_xticks([])
plt.xticks([])
ax.set_xticks([])
Run Code Online (Sandbox Code Playgroud)
网格消失(确定),但小蜱(在主蜱的位置)仍然存在.如何删除它们?
Joh*_*ard 407
这个tick_params方法对于这样的东西非常有用.此代码关闭主要和次要刻度,并从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=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()
Run Code Online (Sandbox Code Playgroud)

Mar*_*cek 117
不完全是OP所要求的,但是禁用所有轴线,刻度线和标签的简单方法是简单地调用:
plt.axis('off')
Run Code Online (Sandbox Code Playgroud)
Tom*_*ips 64
以下是我在matplotlib邮件列表中找到的替代解决方案:
import matplotlib.pylab as plt
x = range(1000)
ax = plt.axes()
ax.semilogx(x, x)
ax.xaxis.set_ticks_position('none')
Run Code Online (Sandbox Code Playgroud)

has*_*uke 62
或者,您可以传递空的刻度位置并标记为
plt.xticks([], [])
Run Code Online (Sandbox Code Playgroud)
小智 40
有一个比John Vinyard给出的更好,更简单的解决方案.用途NullLocator:
import matplotlib.pyplot as plt
plt.plot(range(10))
plt.gca().xaxis.set_major_locator(plt.NullLocator())
plt.show()
plt.savefig('plot')
Run Code Online (Sandbox Code Playgroud)
希望有所帮助.
aur*_*ham 24
试试这个删除标签(但不是刻度线):
import matplotlib.pyplot as plt
plt.setp( ax.get_xticklabels(), visible=False)
Run Code Online (Sandbox Code Playgroud)
Ami*_*ose 11
此代码段可能有助于仅删除xticks.
from matplotlib import pyplot as plt
plt.xticks([])
Run Code Online (Sandbox Code Playgroud)
这段代码可能有助于删除xticks和yticks.
from matplotlib import pyplot as plt
plt.xticks([]),plt.yticks([])
Run Code Online (Sandbox Code Playgroud)
那些正在寻找关闭所有刻度和标签的简短命令的人应该没问题
plt.tick_params(top=False, bottom=False, left=False, right=False,
labelleft=False, labelbottom=False)
Run Code Online (Sandbox Code Playgroud)
bool自版本 matplotlib>=2.1.1 以来,它允许输入各个参数
对于自定义刻度设置,文档很有帮助:
https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.tick_params.html