解决Linux环境下Jupyter中matplotlib中文乱码问题

直接切入正题

  1. 下载SimHei字体
    可以戳这里,链接失效的话可以百度随便搜一个下载

  2. 找到matplotlib的文件位置

import matplotlib
matplotlib.matplotlib_fname()

比如我的位置是
/home/uname/anaconda3/envs/tf2/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc

进入到上述文件夹下的mpl-data/fonts
解决Linux环境下Jupyter中matplotlib中文乱码问题_第1张图片
将下载好的SimHei.ttf导入进去

  1. 返回到mpl-data目录,打开matplotlibrc文件,搜索定位到font.family
    取消font.familyfont.seriffont.sans-serif的注释,并在font.seriffont.sans-serif后添加SimHei,保存
  2. 进入到~/.cache目录,删除该目录下的matplotlib文件夹
cd ~/.cache
rm -rf  matplotlib
  1. 重新打开jupyter,可以输入如下代码查看是否导入SimHei字体
from matplotlib import font_manager
a = sorted([f.name for f in font_manager.fontManager.ttflist])
for i in a:
    print(i)

解决Linux环境下Jupyter中matplotlib中文乱码问题_第2张图片
6. 在导入matplotlib包之后加一句

plt.rcParams['font.sans-serif']=['SimHei']

这样用matplotlib绘图即可正常显示中文。

你可能感兴趣的:(软件安装及配置,linux,jupyter,中文乱码,python)