环境
macOS: 12.0.1
matplotlib: 3.4.3
步骤
好些文章都说的添加 rcParams['font.sans-serif']=['SimHei']
且中文字符前加 u 的方法可以解决,但我试了不行。我的系统里就没有 SimHei 这种字体,只能先安装字体。
下载及安装字体
安装字体的教程很多,我主要参考的是下面这个:
matplotlib中文乱码的两种解决方案
下载字体地址我用的是:
https://www.fontpalace.com/fo...
重新加载字体
如果你用 _rebuild()
也碰到如下错误,可以用后面的指令直接清空 matplotlib cache 目录,否则就只能重启环境。
ImportError: cannot import name '_rebuild' from 'matplotlib.font_manager' (/usr/local/lib/python3.8/site-packages/matplotlib/font_manager.py)
清空 cache 目录的指令:
import shutil
import matplotlib
shutil.rmtree(matplotlib.get_cachedir())
最后
搞定。安装了字体后,在 matplotlib 里使用的中文字符串,前面不需要再加 u ,也不需要再在代码里定义字体。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。