- 下载字体
SimHei.ttf或者 arial unicode ms或者从windows的fonts中复制中文简体SIMSUNB.ttf
- 将以上字体复制到ubuntu系统文件夹下
sudo cp ~/arial\ unicode\ ms.ttf /usr/share/fonts/arial\ unicode\ ms.ttf
- 复制字体到matplotlib的安装目录下,我的在虚拟环境中,安装如下:
/home/python/.virtualenvs/ai/lib/python3.5/site-packages/matplotlib/mpl-data/fonts
- 在/home/python/.virtualenvs/ai/lib/python3.5/site-packages/matplotlib/mpl-data/文件夹中找到matplotlibrc,打开以下三个配置信息,并添加字体:
font.family : sans-serif
font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde,
sans-serif axes.unicode_minus:False,#作用就是解决负号'-'显示为方块的问题
- 删除matplotlib的字体缓存
cd ~/.cache/matplotlib
rm -rf fontList.py3k.cache
参考资料:https://www.zhihu.com/question/25404709