Mac中的matplotlib作图会显示异常,处理这种异常一种是修改rcParams,但是每次需要输入,略显麻烦,根本上的异常解决办法是修改matplotlibrc
。
1、安装字体并且在jupyternote book
中输入命令:
import matplotlib
print(matplotlib.matplotlib_fname())
则会输出matplotlibrc所在的位置
2、在上述命令之后可以找到matplotlib
所在的位置,可以看到文件matplotlib
和ttf
文件夹,用如下命令把simhei.ttf
文件放到font/ttf
文件夹之下:
cp path-to-ttf文件 font/ttf/
3、把simhei.ttf
文件放入font
文件夹之后,修改matplotlibrc
中的设置,找到font.family : sans-serif
和font.sans-serif : Vera Sans, Lucida Grande ...
这些行,删除前面的#
号:
# font.family : sans-serif
#font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande,Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
顺带同时将找到axes.unicode_minus,将True改为False,作用就是解决负号’-'显示为方块的问题
4、然后清除缓存:
cd ~/.matplotlib
rm - rf *.json *.cache
5、清除完缓存之后,打开jupyter notebook
,输入:
from matplotlib.font_manager import _rebuild
_rebuild()
重建新的配置文件,然后就可以在matplotlib
作图中正常显示中文了