我正在使用matplotlib具有“很高”的xlabel的位置绘制数据集(这是在TeX中渲染的公式,其中包含一个分数,因此其高度等于几行文本)。
matplotlib
无论如何,当我绘制数字时,公式的底部总是被切除。更改图形大小似乎无济于事,而且我还无法弄清楚如何将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在底部被切除了。
如果这是机器特定的问题,我将在带有matplotlib 1.0.0的OSX 10.6.8上运行此问题
采用:
import matplotlib.pyplot as plt plt.gcf().subplots_adjust(bottom=0.15)
为标签腾出空间。
编辑:
自从我给出答案以来,matplotlib增加了 tight_layout() 功能。所以我建议使用它:
tight_layout()
plt.tight_layout()
应该为xlabel腾出空间。