我想在我创建的地块上隐藏我的刻度标签,但保持这个刻度本身(轴上的小标记)。例如,当我尝试使用我发现的here时,整个刻度线将被删除,而不仅仅是标签。我怎样才能删除标签呢?
答案 0 :(得分:82)
import matplotlib.pylab as plt
fig, ax = plt.subplots()
plt.plot([1,2,3],[4,5,6])
ax.tick_params(labelbottom=False)
plt.show()
答案 1 :(得分:14)
将刻度标签设置为不是空数组,而是设置为空字符串列表。在下面的示例中,我用空字符串替换了xtick标签,使y轴保持不变。如果您愿意,可以从这里选择性地保留某些标签。
import pylab as plt
fig, ax = plt.subplots()
ax.plot([1,2,3],[4,5,6])
labels = [item.get_text() for item in ax.get_xticklabels()]
empty_string_labels = ['']*len(labels)
ax.set_xticklabels(empty_string_labels)
plt.show()
此代码改编自a previous answer。
答案 2 :(得分:1)
我没有找到Divenex为我工作的答案。此答案在不触发任何自动标记的情况下创建了刻度线,因此无需使用“ labelbottom = False”:
如果底部和左侧刻度已经存在:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
plt.plot([1,2,3],[4,5,6])
ax.tick_params(right= True,top= True)
如果没有刻度线:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
plt.plot([1,2,3],[4,5,6])
ax.tick_params(right= True,top= True,left= True, bottom= True)