我正在为一篇科学论文准备一些情节,这些情节需要既宽又短以适应页数限制。但是,当我将它们另存为 pdf 时,x 轴标签丢失了,因为(我认为)它们在边界框之外。
将以下内容放入 iPython 笔记本中可重现该问题。
%pylab inline
pylab.rcParams['figure.figsize'] = (8.0, 2.0)
plot([1,5,2,4,6,2,1])
xlabel("$x$")
ylabel("$y$")
savefig("test.pdf")
生成的 pdf 文件如下所示:
如何更改 pdf 文件的边界框?理想情况下,我想要一个“正确执行”的解决方案,即自动调整大小,以便一切都整齐地适合,包括摆脱左右不必要的空间 - 但我很着急,所以我会接受任何改变边界框的方法,如果必须的话,我会猜测数字直到它看起来正确为止。
最佳答案
经过一番谷歌搜索,我找到了答案:您可以将 bbox_inches='tight'
传递给 savefig
命令,它会自动将边界框调整为内容的大小:
%pylab inline
pylab.rcParams['figure.figsize'] = (8.0, 2.0)
plot([1,5,2,4,6,2,1])
xlabel("$x$")
ylabel("$y$")
savefig("test.pdf",bbox_inches='tight')
我猜这些有点紧。
请注意,这与 Ffisegydd 的回答略有不同,因为它调整边界框以适应绘图,而不是更改绘图以适合边界框。 (但两者都适合我的目的。)
关于python - 如何防止 Matplotlib 剪掉我的轴标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22808834/