pandas PDF中保存的matplotlib大小大于原始图

5uzkadbs  于 2023-08-01  发布在  其他
关注(0)|答案(2)|浏览(90)

检查matplotlib时,图形大小为:

fig_width, fig_height = plt.gcf().get_size_inches()
print(fig_width, fig_height)

字符串
6.0<Figure size 3600x2400 with 0 Axes>4.0
创建图形的参数之一是:

plt.rcParams["figure.dpi"] = 600


我用下面的代码保存这个图:

plt.savefig("figure.pdf", format= 'pdf', bbox_inches="tight",dpi=600)


当检查结果的PDF大小时,我可以看到它比原来的大:


的数据
我也尝试在不指定dpi的情况下保存图像,但结果是一样的:

plt.savefig("figure.pdf", format= 'pdf', bbox_inches="tight")


我读了this page,但没有找到答案。
我应该如何保存matploblig数字,使生成的pdf是所需的大小6*4英寸和600 dpi分辨率?

4uqofj5v

4uqofj5v1#

不要使用bbox_inches="tight",它试图删除白色边框,但在这样做时改变了无花果大小。
相反,使用layout = 'constrained'layout = 'tight'创建您的数字:

fig = plt.figure(layout='constrained') 
plt.savefig("figure.pdf", dpi=600)

字符串

erhoui1w

erhoui1w2#

plt.savefig()之前添加以下行解决了这个问题:

plt.gcf().set_size_inches(6, 4)

字符串

相关问题