系统:MacOS Catalina 10.15.4,python:3.7.6
在网上找到了很多,基本都是让下载SimHei字体,然后放到plt的字体库,然后配置,然而。。。没用
搞这么麻烦,为什么不直接找找Mac下到底支持哪些字体不就好了嚒,然后发现Arial Unicode MS,亲测可用,代码如下:
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
更改后永久生效
- 找到字体路径(跟其他教程一样)
import matplotlib
print(matplotlib.matplotlib_fname())
进入该路径,我的是在:/Users/zhangyan/opt/anaconda3/envs/python37/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
- 编辑文件matplotlibrc
可直接在文件最下面加上三行:
font.family: sans-serif
font.sans-serif: Arial Unicode MS, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
axes.unicode_minus: False
然后把~/.matplotlib目录下多两个文件删掉(缓存文件放心删):
rm -rf ~/.matplotlib/*
- 重启python,即可解决中文及负号无法正常显示多问题