问题描述
matplotlib画图的时候中文不能正常显示
x=np.arange(1,10)
y=2*x
plt.plot(x,y,label='这是线')
plt.legend('leftupper')
plt.title('这是标题')
plt.xlabel('x轴')
plt.ylabel('y轴')
plt.show()
解决办法
第一种:临时修改
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
第二种:修改配置
1、搜索下载中文字体,比如SimHei 2、查看字体的安装路径,并将字体放到该路径下。
matplotlib.matplotlib_fname()
'D:\\Anaconda3\\lib\\site-packages\\matplotlib\\mpl-data\\matplotlibrc'
路径为:D:\Anaconda3\Lib\site-packages\matplotlib\mpl-data\fonts\ttf 3、修改配置文件 D:\Anaconda3\Lib\site-packages\matplotlib\mpl-data路径下matplotlibrc文件,修改下面3处:
font.family : sans-serif 去掉
font.sans-serif : SimHei, DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
axes.unicode_minus : False
4、重新加载字体
from matplotlib.font_manager import _rebuild
_rebuild()
5、重新启动运行
|