matplotlib解决中文乱码

Windows下

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

plt.plot((1,2,3),(4,5,7))
plt.xlabel('横坐标')
plt.ylabel('纵坐标')
plt.show()

Linux下

由于Matplotlib只支持ttf字体,Linux的中文字体都为ttc格式,所以需要安装一个中文ttf字体,所以只要下载一个中文ttf格式的字体放在usr/share/fonts下,然后将配置文件修改一下默认的字体就可以了。

http://fontzone.net/download/simhei下载字体,然后进行安装。

删除matplotlib缓存文件:

$ cd ~/.cache/matplotlib
$ rm -rf *.*

同样地使用最前面的代码进行测试。

写中文字符最好以u'中文字'的形式。

参考:

    原文作者:王诗翔
    原文地址: https://www.jianshu.com/p/5dd7c2e1898d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞