gpt4 book ai didi

python - 循环内绘制的子图图表非常挤压

转载 作者:行者123 更新时间:2023-12-03 08:52:39 24 4
gpt4 key购买 nike

我有一个包含大约 120 个功能的数据框,我想按年份检查这些功能。我正在循环内绘制每个特征,x =年份,y =特征值。虽然这些绘图成功,但图表因完全被压扁而难以辨认。

我尝试使用 plt.tight_layout() 并使用 plt.rcParams['figure.figsize'] 调整图形大小,但遗憾的是没有效果

for i in range(len(roll_df.columns)):
plt.subplot(len(roll_df.columns), 1, i+1)
name = roll_df.columns[i]
plt.plot(roll_df[name])
plt.title(name, y=0)
plt.yticks([])
plt.xticks([])
plt.tight_layout()
plt.show()

循环运行,但所有绘图在 y 轴上都被挤压以致难以辨认:

plot

最佳答案

Matplotlib 不会自动调整图形的大小。因此,如果您在彼此下方添加更多子图,它将分割可用空间而不是扩展图形。这就是为什么你的 y 轴如此窄。

您可以尝试预先定义图形大小,或根据您有多少个子图来确定图形大小:

n_plots = roll_df.shape[1]
fig, axes = plt.subplots(n_plots, 1, figsize=(8, 4 * n_plots), tight_layout=True)

# Then your usual part, but plot on the created axes
for i in range(n_plots):
name = roll_df.columns[i]
axes[i].plot(roll_df[name])
axes[i].title(name, y=0)
axes[i].yticks([])
axes[i].xticks([])

plt.show()

关于python - 循环内绘制的子图图表非常挤压,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57988457/

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