为什么我的matlab插图在我的matplotlib图中切断了?

为什么我的matlab插图在我的matplotlib图中切断了?

我正在绘制一个数据集,使用的matplotlib地方我有一个相当“高”的xlabel(它是一个在TeX中呈现的公式,包含一个分数,因此其高度相当于几行文本)。


在任何情况下,当我绘制数字时,公式的底部总是被切断。改变图形大小似乎没有帮助,我无法弄清楚如何将x轴“向上”移动以为xlabel腾出空间。这样的事情将是一个合理的临时解决方案,但更好的方法是让matplotlib自动识别标签被切断并相应调整大小。


这是我的意思的一个例子:


import matplotlib.pyplot as plt


plt.figure()

plt.ylabel(r'$\ln\left(\frac{x_a-x_b}{x_a-x_c}\right)$')

plt.xlabel(r'$\ln\left(\frac{x_a-x_d}{x_a-x_e}\right)$')

plt.show()

当你可以看到整个ylabel时,xlabel在底部被切断。


在这是特定于机器的问题的情况下,我在OSX 10.6.8上使用matplotlib 1.0.0运行它


茅侃侃
浏览 526回答 3
3回答

千巷猫影

使用:import matplotlib.pyplot as plt plt.gcf().subplots_adjust(bottom=0.15)为标签腾出空间。编辑:既然我给出了答案,matplotlib就添加了这个tight_layout()功能。所以我建议使用它:plt.tight_layout()应该为xlabel腾出空间。

鸿蒙传说

如果要将其存储到文件中,可以使用bbox_inches="tight"参数解决它:plt.savefig('myfile.png', bbox_inches = "tight")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python