方法一:适合代码给他人使用
手动指定matplotlib的字体为 SimHei 字体(或者其他的支持中文显示的字体也行)
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号
方法二:适合本地永久解决
下载 SimHei 字体(或者其他的支持中文显示的字体也行)
-
安装字体
-
linux下:拷贝字体到 usr/share/fonts 下:
sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf
-
windows和mac下:双击安装
-
-
删除matplotlib缓存
cd ~/.matplotlib rm -r *
不清楚缓存路径的话, 在jupyter中查看
import matplotlib as mpl mpl.get_cachedir()
-
修改matplotlib的配置
vi ~/.matplotlib/matplotlibrc
文件内容修改为:
font.family : sans-serif font.sans-serif : SimHei axes.unicode_minus : False
查看配置文件路径
import matplotlib as mpl mpl.matplotlib_fname()
-
重启kernel