解决方案一:
下载中文字体(黑体,看准系统版本)
- 步骤一:下载 SimHei 字体(或者其他的支持中文显示的字体也行)
- 步骤二:安装字体
linux下:拷贝字体到 usr/share/fonts 下:
sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf
- windows和mac下:双击安装
- 步骤三:删除~/.matplotlib中的缓存文件
cd ~/.matplotlib rm -r *
- 步骤四:修改配置文件matplotlibrc
vi ~/.matplotlib/matplotlibrc
将文件内容修改为:
font.family : sans-serif font.sans-serif : SimHei axes.unicode_minus : False
解决方案二:
在Python脚本中动态设置matplotlibrc,这样也可以避免由于更改配置文件而造成的麻烦,具体代码如下:
from pylab import mpl # 设置显示中文字体 mpl.rcParams["font.sans-serif"] = ["SimHei"]
有时候,字体更改后,会导致坐标轴中的部分字符无法正常显示,此时需要更改axes.unicode_minus参数:
# 设置正常显示符号 mpl.rcParams["axes.unicode_minus"] = False