为了创建5个子图,我使用了以下方法:
但这只是去掉了一些勾号,我不理解其背后的逻辑。
`ax = plt.subplots(5, sharex=True)`
接下来,我想要移除每个 y 轴子图的第一个和最后一个标签刻度(因为它们会重叠),我使用了:
`plt.setp([a.get_yticklabels()[0::-1] for a in ax[0:5]], visible=False)`
但这只是去掉了一些勾号,我不理解其背后的逻辑。
plt.subplots
的结果是元组,通常是一个 2D 数组。我在回复中加了一条注释。我的代码仍然与上面的代码不同,因为使用[0::-1]
和使用[0]
是相同的。因此,您只选择第一个标签。 - David Zwickerlabels = ax.get_yticklabels()
可以放在循环外面吗?还是ax
打错了应该是a
?或者是在循环过程中ax.get_yticklabels()
会发生变化? - knia