matplotlib中文显示-微软雅黑

网上有很多方法,但是基本的是片面的。

参考1 https://tracholar.github.io/wiki/python/matplotlib-chinese-font.html

参考2 https://www.cnblogs.com/touristlee/p/8805655.html

windows下,做到以下三点,可以成功

(1)现在msyh.ttf字体,放到matplot的字体目录,

      路径如 D:\Program\Anaconda3\Lib\site-packages\matplotlib\mpl-data

        参考1有示例

      使用下面代码找路径

import matplotlib
print(matplotlib.matplotlib_fname())

(2)修改文件,matplotlibrc

    参考1或参考2

 

(3) 删除缓存,很重要!

    具体i方式是首先删除 C:\Users\你的用户名\.matplotlib 把这个.matplotlib文件夹删掉,然后重启应用。

 

 

5. 直接使用 

plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签 

也可以显示中文,但是这样显示的英文又不是很美观。SimHei应该是matplotlib自带的字体。

 

6. 注意!!!

使用SimHei 或 Microsoft YaHei 后,生成的pdf文件特别大,前者是4MB多,后者是8MB多,而默认英文字体只有470KB多。

另外,一旦运行了plt.rcParams['font.sans-serif'] = ['SimHei']  ,除非重启应用,否则运行其他文件也是使用该字体,生成很大的pdf

 

7. 参考 http://www.yeolar.com/note/2011/04/28/matplotlib-tips/

http://blog.sciencenet.cn/blog-43412-343002.html

 

8. 这个可行,最好,文件小

https://www.v2ex.com/t/317361

保存pdf出错,truetype ..

    

9. 最终,还是觉得先生成pdf文件,然后在acrobat里改中文最好

 

使用 

plt.rcParams['font.sans-serif'] = ['Times New Roman'] 设置全局字体. 不过这个'Times New Roman' 怎么显示黑体?

posted on 2018-09-17 23:56  longbigfish  阅读(1047)  评论(0编辑  收藏  举报

导航