yanxiaoyong的个人博客分享 http://blog.sciencenet.cn/u/yanxiaoyong 在路上……

博文

让linux下的matplotlib显示中文

已有 20023 次阅读 2012-5-3 03:13 |个人分类:Python|系统分类:科研笔记| windows, 中文字体, matplotlib

中文,又是中文…………

linux下各种软件的中文支持确是个不小的问题,最近做的工作与汉字相关,反反复复遇到这类问题。

今天(确切说是昨天)在用matplotlib画图的时候,中文字体总是显示为小方块。按网上的方法修改rc文件后,show方法能显示中文,保存png也没问题,但是保存成pdf或eps时报错 -_-! 论文里肯定要插矢量图的,所以不得不解决。

以前在windows下的时候,解决这个问题的方法是偷梁换柱 —— 用一个中文turetype字体替换matplotlib的vera.ttf。但是,在linux下,根本就找不到vera.ttf这个文件!

这让我很郁闷,后来我在debug模式下查看matplotlib的异常信息,发现matplotlib在找不到适合字体时,会默认使用cmb10.ttf字体,我猜测这个cmb10.ttf应该就等同于windows下的vera.ttf,于是果断用一个中文字体覆盖了cmb10.ttf(位置在/usr/share/matplotlib/mpl-data/fonts/ttf/),嘿嘿,果然成功了,效果灰常不错!

(我的系统是lubuntu 10.04,其他linux平台下如果在上述目录找不到cmb10.ttf,就find或locate一下吧。)


https://blog.sciencenet.cn/blog-404069-566293.html

上一篇:让latex2rtf支持中文
下一篇:祝贺墨西哥获得男足金牌!
收藏 IP: 114.255.218.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (10 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-24 13:51

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部