【发布时间】:2011-01-11 16:42:50
【问题描述】:
我正在尝试在任一轴上绘制一个没有刻度线或数字的图形(我使用传统意义上的轴,而不是 matplotlib 命名法!)。我遇到的一个问题是 matplotlib 通过减去一个值 N 来调整 x(y)ticklabels,然后在轴的末端加上 N。
这可能含糊不清,但下面的简化示例突出了这个问题,'6.18' 是 N 的违规值:
import matplotlib.pyplot as plt
import random
prefix = 6.18
rx = [prefix+(0.001*random.random()) for i in arange(100)]
ry = [prefix+(0.001*random.random()) for i in arange(100)]
plt.plot(rx,ry,'ko')
frame1 = plt.gca()
for xlabel_i in frame1.axes.get_xticklabels():
xlabel_i.set_visible(False)
xlabel_i.set_fontsize(0.0)
for xlabel_i in frame1.axes.get_yticklabels():
xlabel_i.set_fontsize(0.0)
xlabel_i.set_visible(False)
for tick in frame1.axes.get_xticklines():
tick.set_visible(False)
for tick in frame1.axes.get_yticklines():
tick.set_visible(False)
plt.show()
我想知道的三件事是:
首先如何关闭此行为(尽管在大多数情况下它很有用,但并非总是如此!)我查看了
matplotlib.axis.XAxis并找不到任何合适的东西如何让 N 消失(即
X.set_visible(False))是否有更好的方法来完成上述操作?如果相关的话,我的最终图将是图中的 4x4 子图。
【问题讨论】:
-
我有点怀疑这里的任何答案是否真的回答了这个问题。在我看来,这个问题似乎是在询问如何get rid of the offset。然而,所有答案都显示了如何摆脱 all 刻度标签的各种方法。如果问题已被答案取代,也许应该编辑问题以询问答案提供的解决方案是什么?
标签: python matplotlib plot