百度或谷歌matplotlib库绘图时产生中文乱码问题,得到的最多的答案就是下面几行代码:
import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei']
很明显,这是因为mac下没有SimHei字体库,于是大多数教程都叫你怎么下载SimHei字体怎么放到mac的字体库,以及配置matplotlib的字体库,可是这些教程大都是几年前的,有的已经失效,有的则过于复杂。
于是...为什么要费这些功夫呢,直接找找mac底下有哪些支持中文的字体库不就好了嘛...然后我还真找到了 Arial Unicode MS ,亲测可用,代码如下:
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
不信你可以用下面的完整的绘图代码试试看:
进群:960410445 即可获取大量的PDF以及源码教程,文件内自行下载即可!
测试代码
import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] plt.figure() names = ['5','10','15','20','25'] x = range(len(names)) y = [0.855,0.84,0.835,0.815,0.81] y1=[0.86,0.85,0.853,0.849,0.83] plt.plot(x,y,marker='o',mec='r',mfc='w',label=u'y=x^2曲线图') plt.plot(x,y1,marker='*',ms=10,label=u'y=x^3曲线图') plt.legend() # 让图例生效 plt.xticks(x,names,rotation=45) plt.margins(0) plt.subplots_adjust(bottom=0.15) plt.xlabel(u"time(s)邻居") #X轴标签 plt.ylabel("RMSE") #Y轴标签 plt.title("我就看看中文能不能用") #标题 plt.show()