Matplotlib:更改绘图位置

7

我使用了固定大小的图形,制作了以下图表(不应更改大小):

plt.figure(figsize=(14, 5))

enter image description here

很遗憾,x轴标签无法完全显示。我的问题是:是否有可能将整个图形移到顶部(因为那里有足够的空间)?

代码:

plt.figure(figsize=(14, 5))
plt.plot(time_load,load, linewidth=1.5)
plt.grid(True)
plt.tick_params(labelsize=16)
plt.xlabel('Time [hours]',fontsize=16)
plt.xlim([0,24])
plt.xticks([0,4,8,12,16,20,24])
plt.legend(loc="upper left",fontsize = 'large')

非常感谢您的帮助!

你能想象我们在没有看到生成这个图形的代码的情况下如何帮助你吗? - Leon
抱歉!我添加了代码。 - Matias
3个回答

11

你也可以试试

plt.subplots_adjust(bottom=0.19)

如果0.19增加了太多或太少的间隔以便更好地看到x轴标签,则尝试逐渐微调上下间距。


8

2
您可以使用axes()命令来指定位置为轴。您也可以使用xlim()和ylim()命令。在您的情况下,您可以使用后者。因此,举个例子,xlim方法可用于以下方式:
plt.xlim(X.min()*1.1, X.max()*1.1)
plt.ylim(C.min()*1.1, C.max()*1.1)

这将为数据点腾出一些空间,使其更清晰可见。希望对您有所帮助。 我刚看到代码,您正在使用xlim方法。您想在其他地方创建子图,可以使用axis()方法。
plt.axes([0.3, 0.3, .5, .5])

您可以相应地调整图表。此方法将在图表的右上角创建一个子图。

请在axes()矩形定义中添加4个值的含义。 - Leon
1
非常感谢!我刚刚发现了“plt.tight_layout()”这个命令 --> 你对此有什么看法? - Matias
1
@Matias 看起来正是你所需要的。为什么不自己回答你的问题呢? - Leon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接