gpt4 book ai didi

python - 为 matplotlib 中的所有子图设置相同的轴限制

转载 作者:太空狗 更新时间:2023-10-29 22:29:57 25 4
gpt4 key购买 nike

这个问题看起来很简单,但我找不到 pythonic 的方法来解决它。我有几个(四个)子图应该具有相同的 xlimylim。遍历所有子图 à la

f, axarr = plt.subplots(4)
for x in range(n):
axarr[x].set_xlim(xval1, xval2)
axarr[x].set_ylim(yval1, yval2)

并不是最好的做事方式,尤其是对于 2x2 子图——这正是我实际要处理的。我正在寻找类似 plt.all_set_xlim(xval1, xval2) 的内容。

请注意,我不想更改任何其他内容(刻度和标签应单独控制)。

编辑:我正在使用 plt.subplots(2, 2) 包装器。根据 dienz 的回答,我尝试了 plt.subplots(2, 2,sharex=True, sharey=True) – 几乎正确,但现在除左行和底行外,刻度都消失了。

最佳答案

通过 matplotlib.pyplot.setp() 在 Artist 对象上设置 xlimylim 属性 https://matplotlib.org/3.1.0/api/_as_gen/matplotlib.pyplot.setp.html

# Importing matplotlib.pyplot package.
import matplotlib.pyplot as plt

# Assigning 'fig', 'ax' variables.
fig, ax = plt.subplots(2, 2)

# Defining custom 'xlim' and 'ylim' values.
custom_xlim = (0, 100)
custom_ylim = (-100, 100)

# Setting the values for all axes.
plt.setp(ax, xlim=custom_xlim, ylim=custom_ylim)

关于python - 为 matplotlib 中的所有子图设置相同的轴限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31006971/

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