matplotlib,savefig:忽略DPI设置

时间:2012-04-12 06:30:47

标签: python matplotlib show dpi

我找不到其他人遇到这个问题。在matplotlib中,您可以使用show()或savefig()查看绘图。这些会产生略微不同的图像在我的例子中,savefig()图像更难以理解。我需要让考试生活轻松,所以..

我发现了一些主题,建议我将DPI大小设置为与show()相匹配。我试过了:

- >使用matplotlib.rcParams ['savefig.dpi'] = 80直接设置savefig.dpi。

- >直接在〜/ .matplotlib / matplotlibrc中设置savefig.dpi。

- >将我的rc文件移动到CWD。

- >最后,使用savefig('image.pdf',dpi = 80)

我可以验证该属性确实已设置;但看起来设置是由savefig()igored。有人能帮忙吗?

(简体)代码:

plt.bar(ind, functimes, yerr=stddev, bottom=0, width=barWidth, align='center', color='b')

ax = plt.gca()
ax.legend(barRcts, barLegend)
plt.title("Function Call Overhead")
plt.xlabel("Function ID")
plt.ylabel("Execution Time [us]")

plt.xticks(ind, funcNames)
figtest.autofmt_xdate()

plt.savefig(out_file, dpi=80, format='pdf')

1 个答案:

答案 0 :(得分:4)

PDF保存使用DPI设置进行PDF内部的图像分辨率,而不是任何线条/多边形分辨率(在矢量格式中无意义)。

如果您对屏幕上的输出感到满意,并且不需要具有可扩展的图形,则保存为png可能不错。