使用matplotlib中文,需要导入如下设置:
mpl.rcParams[‘font.family’] = ‘SimHei’# matplotlib其实是不支持显示中文的 显示中文需要一行代码设置字体 plt.rcParams[‘axes.unicode_minus’] = False # 步骤二(解决坐标轴负数的负号显示问题)
完了还报错:
font_manager.py:1328: UserWarning: findfont: Font family [‘SimHei’] not found. Falling back to DejaVu Sans
找到simhei.ttf文件
在Windows系统C盘中搜索得到一个文件名叫simhei.ttf的简体字字体文件。
注意1: 一定要拷贝自己电脑上的simhei.ttf文件(在网络上下载的simhei.ttf文件,可能放在自己的Ubuntu18.04 上无法读取文件,导致依然报错。)
查看自己所用matplotlib库所在路径
import matplotlib print(matplotlib.matplotlib_fname()) 例如我的输出: /home/…python3.6/site-packages/matplotlib/mpl-data/matplotlibrc
有用的部分只有/home/…python3.6/site-packages/matplotlib/mpl-data/,我们要将ttf字体文件拷到该目录的fonts文件夹的ttf文件夹下
拷贝simhei.ttf文件到上述matplotlib库所在路径的fonts/ttf文件夹下
在Linux中使用文件管理器浏览文件,Ctrl + h 是显示隐藏文件(.virtualenvs)
修改matplotlib库配置文件
打开第二步输出的文件/home/…/site-packages/matplotlib/mpl-data/matplotlibrc,增加以下内容:
font.family : sans-serif font.sans-serif : SimHei axes.unicode_minus : False
删除主文件夹下的.cache/matplotlib文件夹
我的主文件夹下的.cache/matplotlib文件夹的路是:
然后重启一下jupyter notebook就可以了,由于上面已经配置了设置,直接使用中文就可以了,不再需要导入设置
|