Matplotlib中绘图产生的Type3不兼容怎么办
Admin 2022-07-01 群英技术资讯 706 次浏览
python matplotlib画图产生的Type 3 fonts字体不兼容
使用Type 42字体来生成PostScript 和PDF 文件。
import matplotlib matplotlib.rcParams['pdf.fonttype'] = 42 matplotlib.rcParams['ps.fonttype'] = 42
补充:Type 3字体的解决办法
这个问题困扰了我一天了,成功解决,这种感觉太爽了。
提交MNRAS的pdf文件可能会因为含有type3字体而无法在线生成proof。
pdffonts paper.pdf
如果是,则先考虑官方的建议,在文件头部加入:
\usepackage[T1]{fontenc} \usepackage{aecompl}
问题依旧的话,应该是插图中含有type3字体。比如用python画图,默认的似乎就是输出成type3. 修改
~/.matplotlib/matplotlibrc
加入(或者修改)如下两行
ps.fonttype : 42 # Output Type 3 (Type3) or Type 42 (TrueType) pdf.fonttype : 42 # Output Type 3 (Type3) or Type 42 (TrueType)
另一种解决方式是,将问题图片(如果是eps格式)用eps2eps转换一遍。但转换之后的图片中的字体被像素化了,放大时不清晰,不推荐。
还有一个方法效果好一些:先转成pdf再转回eps, 比如对fig.eps,
epstopdf fig.eps fig.pdf pdftops -eps -r 400 fig.pdf fig.eps
补充:python3 PIL使用font字体错误:OSError: cannot open resource问题解决
>>> from PIL import ImageFont >>> ImageFont.truetype <function truetype at 0x0000021178B82B70> >>> ImageFont.truetype("NotoSansCJK-Regular.ttc", 30) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "D:\Users\52489\Anaconda3\lib\site-packages\PIL\ImageFont.py", line 261, in truetype return FreeTypeFont(font, size, index, encoding, layout_engine) File "D:\Users\52489\Anaconda3\lib\site-packages\PIL\ImageFont.py", line 144, in __init__ self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot open resource
缺少对应字体文件: NotoSansCJK-Regular.ttc
在网上找到对应的font文件
以我的Ubuntu 16为例, 字体文件在"/usr/share/fonts/truetype"中,
因此,把下载到的ttc文件放到 /usr/share/fonts/truetype 文件夹当中.
重新启动python环境,即可正常导入.
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天很有可能你已经做了一些使用滑动窗口(也称为移动窗口)的事情,而你甚至不知道它。例如:许多编辑算法都是基于移动窗口的。在GIS中做地形分析的大多数地形栅格度量(坡度、坡向、山坡阴影等)都基于滑动窗口。很多情况下,对格式化为二维数组的数据进行分析时,都很有可能涉及到滑动窗口。滑动窗口操作非常普遍,非常有用。它们也很容易在Python中实现。学习如何实现移动窗口将把你的数据分析和争论技能提升到一个新的水平。
这篇文章主要介绍了通过Python实现一个简单的电影售票系统,文中的示例代码对我们学习Python有一定的帮助,感兴趣的小伙伴可以跟随小编一起学习一下
命名空间是从名称到对象的映射,大部分的命名空间都是通过 Python 字典来实现的。命名空间提供了在项目中避免名字冲突的一种方法。各个命名空间是独立的,没有任何关系的,所以一个命名空间中不能有重名,但不同的命名空间是可以重名而没有任何影响。
这篇文章主要为大家介绍了python的集合类型,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助<BR>
PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。它不仅能够实现强大的GPU加速,同时还支持动态神经网络。本文将介绍PyTorch搭建CNN如何实现风速预测,感兴趣的可以学习一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008