我找不到其他人遇到这个问题。在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()所欺骗。有人能帮忙吗?

(简体)代码:

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')

最佳答案

PDF保存将DPI设置用于PDF内的图像分辨率,而不用于任何线/多边形分辨率(在矢量格式中没有意义)。

如果您对屏幕上的输出感到满意,并且不需要可缩放的图形,则另存为png可能很好。

关于python - matplotlib,savefig : DPI setting is ignored,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10118523/

10-12 18:30