python ubuntu matplotlib 无法显示中文

python ubuntu matplotlib 无法显示中文

博主最近很郁闷,因为在做NLP分析词向量的时候,一直想看看词向量训练的效果,但是在ubuntu16.04上使用matplotlib展示的时候发现无法显示中文。就像下图一样:

python ubuntu matplotlib 无法显示中文_第1张图片

后来博主在网上查了很久,各种方法都试了,但是仍然没有用。于是博主决定自己尝试着弄。终于在我苦心尝试下,找到了一个好办法。

  • 下载字体msyh.ttf,网址:http://www.linuxidc.com/Linux/2009-11/22691.htm 解压之后是msyh.ttf 文件
  • 把上面的那个文件放在你的matplotlib字体文件夹,如果你找不到你的matplotlib安装文件夹,你可以先打开python,然后使用命令
    import matplotlib
    print(matplotlib.__file__)
    就会输出你的matplotlib的安装位置,例如你的位置为/usr/local/lib/python3.5/dist-packages/matplotlib,那就把字体文件放在/usr/local/lib/python3.5/dist-packages/matplotlib/mpl-data/fonts/ttf/里面
  • 删除matplotlib缓存文件夹内所有的东西。一般在~/.cache/matplotlib,如果你不知道在哪儿,打开python,使用以下命令就可以输出
    import matplotlib
    print(matplotlib.get_cachedir())
  • 重点来了,上面的我不确定是否可以省略,但是这一步很关键,在你使用pyplot画图之前加入
plt.rcParams['font.family'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False

然后就可以很完美的导入中文了
python ubuntu matplotlib 无法显示中文_第2张图片

Any question owned you can contact me with wechat : liu806353105, or e-mail:[email protected]

你可能感兴趣的:(linux设置)