9

我找不到其他人有这个问题。在 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')
4

1 回答 1

4

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

如果您对屏幕上的输出感到满意,并且不需要可缩放的图形,那么保存为png可能就可以了。

于 2012-07-15T17:04:12.157 回答