python – matplotlib生成的PDF无法在acrobat阅读器中查看
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – matplotlib生成的PDF无法在acrobat阅读器中查看,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1818字,纯文字阅读大概需要3分钟。
内容图文
![python – matplotlib生成的PDF无法在acrobat阅读器中查看](/upload/InfoBanner/zyjiaocheng/697/9b96ec2f1c57422dbd9a6c8babd3dfdf.jpg)
我正在用matplotlib绘制数据,包括LaTeX字体.创建的pdf可以由evince,inkscape,GIMP显示,但不能由acroread resp显示. adobe reader.代码原型适用于大量数据,只有少数情节有这个问题.
...
fig = plt.figure(figsize=(10, 6))
ax = fig.add_subplot(111)
savedpi = 250
fileformat = 'pdf'
...
p12,=ax.plot(plimit12-binSize/2.0, mean12, '-', lw=2)
ax.set_yscale('log')
ax.yaxis.set_major_formatter(matplotlib.ticker.ScalarFormatter())
ax.legend([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12], [ "C01", "C02", "C03", "C04", "C05", "C06", "C07", "C08", "C09", "C10", "C11", "C12"],numpoints=1, loc=1, ncol=3)
plt.savefig(savepath+'veloDisp'+'.pdf',dpi=None,format=fileformat)
其中一个有问题的文件是http://ubuntuone.com/0kuZIKYeZQyGckE5jonPy6
有人遇到过这样的问题吗?
编辑:谢谢William Denman,实际上是在evince中打开并打印成pdf作品,现在也可以在acroread中查看.有趣的是,其他带有LaTeX Fonts的图表从此开始.我没有收到任何错误消息,我可以从中猜出问题出在哪里,这就是为什么我首先要问的原因.现在您的解决方法很好,谢谢.但是我真的想知道如何避免这种情况.由于这些情节应该是出版物的一部分,我还要考虑那些使用Adobe pdf观众的人.
编辑:正如所建议的那样,我在MPL开发者邮件列表上打开了一个帖子,见http://matplotlib.1069221.n5.nabble.com/PDF-not-readable-by-Adobe-PDF-readers-td42580.html
编辑:由matplotlib开发人员解决!问题是这条线
ax.axvline(x=1, c='#000000', lw='2', alpha=0.5)
其中包含一个字符串作为行宽.应该
ax.axvline(x=1, c='#000000', lw=2, alpha=0.5)
不幸的是,标准的pdf后端没有警告(尚未).
解决方法:
在matplotlib中追逐我自己的bug之后,我根据这篇文章和OP在matplotlib网站上推荐的推荐,在matplotlib中追逐bug可以用cairo完成. pip install cairo.然后在所有其他MPL导入之上添加:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import ...
import matplotlib
matplotlib.use("cairo")
from matplotlib.backends.backend_pdf import PdfPages
..etc.
否则追逐将失败,因为后端已经设置并加载….
内容总结
以上是互联网集市为您收集整理的python – matplotlib生成的PDF无法在acrobat阅读器中查看全部内容,希望文章能够帮你解决python – matplotlib生成的PDF无法在acrobat阅读器中查看所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。