gpt4 book ai didi

python - 强制 matplotlib 修复绘图区域

转载 作者:行者123 更新时间:2023-11-30 22:38:15 27 4
gpt4 key购买 nike

我有多个具有相同 x 轴的图。我想将它们堆叠在一份报告中并将所有内容排列整齐。然而,matplotlib 似乎会根据 y 刻度标签长度稍微调整它们的大小。

是否可以强制绘图区域和位置相对于我保存到的 pdf Canvas 在各个绘图中保持相同?

import numpy as np
import matplotlib.pyplot as plt
xs=np.arange(0.,2.,0.00001)
ys1=np.sin(xs*10.) #makes the long yticklabels
ys2=10.*np.sin(xs*10.)+10. #makes the short yticklabels

fig=plt.figure() #this plot ends up shifted right on the canvas
plt.plot(xs,ys1,linewidth=2.0)
plt.xlabel('x')
plt.ylabel('y')

fig=plt.figure() #this plot ends up further left on the canvas
plt.plot(xs,ys2,linewidth=2.0)
plt.xlabel('x')
plt.ylabel('y')

最佳答案

您的问题有点不清楚,但是将它们绘制为同一图中的子图应该保证两个子图的轴和图形大小将彼此对齐

import numpy as np
import matplotlib.pyplot as plt

xs=np.arange(0.,2.,0.00001)
ys1=np.sin(xs*10.) #makes the long yticklabels
ys2=10.*np.sin(xs*10.)+10. #makes the short yticklabels

fig, (ax1, ax2) = plt.subplots(2, 1)
ax1.plot(xs,ys1,linewidth=2.0)
ax1.set_xlabel('x')
ax1.set_ylabel('y')

ax2.plot(xs,ys2,linewidth=2.0)
ax2.set_xlabel('x')
ax2.set_ylabel('y')

plt.subplots_adjust(hspace=0.3) # adjust spacing between plots
plt.show()

这会产生下图:

enter image description here

关于python - 强制 matplotlib 修复绘图区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43641191/

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