Matplotlib 中文乱码解决方案
终结乱码
Linux系统
- 下载中文字体(黑体)文件,可以从 这里下载。
- 将simhei.ttf文件拷贝到 /usr/share/fonts/ 里面
- 在Python中运行如下代码即可:
from matplotlib.font_manager import _rebuild
_rebuild() #reload一下
Windows系统
Windows系统中,只需要设置matplotlib使用系统内的中文字体即可
测试代码
import matplotlib.pyplot as plt
#在jupyter notebook 中显示图片
%matplotlib inline
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文字符
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号
plt.plot((1,2,3),(4,3,-1))
plt.xlabel(u'横坐标')
plt.ylabel(u'纵坐标')
plt.show()
备注
似乎使用miniconda时会造成额外的问题,建议需要画图的开发环境使用anaconda安装python3。