Max*_*ers 2 python plot matplotlib
我尝试绘制一些高质量的时间序列,但matplotlib无法保存高质量的数字.在绘图中输出如下图所示,这是截图.
但是使用plt.safefig()或保存按钮会给我以下结果
问题的核心是我必须使用png-backend保存图.Safing as pdf,创建了一个文件,其他应用程序无法打开.即使文件<500 kb.安全性为.eps时也会发生同样的情况.我的代码是这样的:
fig = plt.figure(1, figsize=(10, 6))
ax = fig.add_subplot(111, autoscale_on=True, ylim=(-1,1))
ax.plot(sig_obj, '-k', alpha=.3)
# plot of vertical lines ...
plt.savefig('figure_1.png') # or .pdf
Run Code Online (Sandbox Code Playgroud)
其中sig_obj是一个长度> 350000的数组.在OS X 10.9.4上使用Python 3.4和matplotlib 1.3.3.
有没有人有想法提高我的情节质量?
您可以为光栅图像设置高dpi:
savefig("1.png", dpi=600)
Run Code Online (Sandbox Code Playgroud)
或以矢量格式保存:
savefig("1.svg") # or: "1.pdf" (depending on a backend)
Run Code Online (Sandbox Code Playgroud)