Ubuntu16.04中matplotlib显示中文字体乱码解决方案

时间:2024-03-17 09:12:21

网上教程很多,但也比较杂乱,因此本博文整理了一下我最终成功的方案,供大家参考。
1、找到simhei.ttf文件
在Windows系统C盘中搜索得到一个文件名叫simhei.ttf的简体字字体文件,这个文件在一般的Windows系统中都会有的,搜索一下耐心等待就有
2、查看自己所用matplotlib库所在路径

import matplotlib
print(matplotlib.matplotlib_fname())

例如我的输出结果是:
/home/zhanghm/.virtualenvs/dl4cv/lib/python3.5/site-packages/matplotlib/mpl-data/matplotlibrc
3、拷贝simhei.ttf文件到上述matplotlib库所在路径的fonts/ttf文件夹下
Ubuntu16.04中matplotlib显示中文字体乱码解决方案
4、修改matplotlib库配置文件
打开第2步输出的文件/home/zhanghm/.virtualenvs/dl4cv/lib/python3.5/site-packages/matplotlib/mpl-data/matplotlibrc,增加以下内容:

font.family			 : sans-serif
font.sans-serif		 : SimHei
axes.unicode_minus   : False

Ubuntu16.04中matplotlib显示中文字体乱码解决方案
5、删除主文件夹下的.cache/matplotlib文件夹
注意这一步不能少