gpt4 book ai didi

Matplotlib - 沿同一轴的不同刻度标签对齐

转载 作者:行者123 更新时间:2023-12-04 03:00:47 25 4
gpt4 key购买 nike

我有一个带有很多子图的图形,这样轴的最后一个刻度标签写在下一个轴的第一个刻度标签上。 See example here

因为我想在设置时保持子图之间的间距,所以我希望根据刻度有不同的对齐方式,因为它可以通过以下方式生成:

    plt.xticks([0], ha = 'left')
plt.xticks([0.2,0.4], ha = 'center')
plt.xticks([0.6], ha = 'right')

使用它,图中只显示最后一次调用 xticks。换句话说,这个想法是对齐第一个和最后一个刻度标签,使它们留在子图中。

希望我说清楚了!

有什么想法吗?

最佳答案

修复刻度后,您将能够访问和设置刻度标签的对齐方式,以避免相邻子图之间的重叠。

import matplotlib.pyplot as plt

plt.rcParams.update({"xtick.direction" : "in",
"ytick.direction" : "in",
"figure.subplot.wspace" : 0.02,
"axes.xmargin" : 0,
"figure.figsize" : (5,2.4)})

fig, axes = plt.subplots(1,2, sharey=True)
for ax in axes:
ax.plot([0,.3,.6], [0,1,2])
# Fix ticks
ax.set_xticks([0,.2,.4,.6])
# Get ticklabels for fixed ticks
ticklabels = ax.get_xticklabels()
# set the alignment for outer ticklabels
ticklabels[0].set_ha("left")
ticklabels[-1].set_ha("right")

plt.show()

enter image description here

关于Matplotlib - 沿同一轴的不同刻度标签对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49412218/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com