使用 savefig 在 matplotlib.pyplot 中增加每英寸点数 (DPI)

Zak*_*akS 3 python matplotlib

这个答案建议使用 plt.savefig 来增加 DPI。我是一个相对的新手,不知道如何使用 .savefig。

savefig 的调用签名需要 fname 来引用需要更多 DPI 的文件(或对象?):

在此处输入图片说明

在下面的代码中,我应该为 fname 使用什么?我应该创建一个对象然后引用它吗?

#previous code generates two dataframes now converted to two lists...

Max_Vals = DFMAX1.tolist()
Min_Vals = DFMIN1.tolist()

fig = plt.figure()

plt.plot(Max_Vals, 'g-')
plt.plot(Min_Vals, 'b-')

fig.set_size_inches(30.,18.)
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

当我在没有 fname 的情况下运行 savefig 时:

plt.savefig(dpi=300)
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

在此处输入图片说明

感谢任何帮助。

aso*_*uin 7

重点plt.savefig()是它允许您将图形导出到文件。如果您只是使用plt.show(),则仅显示图像,此时要将其复制到其他地方,您必须使用打印屏幕或类似工具。

尝试运行:

#previous code generates two dataframes now converted to two lists...

Max_Vals = DFMAX1.tolist()
Min_Vals = DFMIN1.tolist()

fig = plt.figure()

plt.plot(Max_Vals, 'g-')
plt.plot(Min_Vals, 'b-')

fig.set_size_inches(30.,18.)
plt.savefig('100dpi.png', dpi=100)
plt.savefig('200dpi.png', dpi=200)
Run Code Online (Sandbox Code Playgroud)

此时,两个图像文件将保存在您的工作文件夹(可能与您的脚本相同的文件夹)中 - 一个为 100dpi,第二个为 200dpi。