代码改变世界

解决matplotlib中文显示问题

2018-07-13 22:02  爱学习的小伟子  阅读(5707)  评论(0编辑  收藏  举报

在python中默认是不显示中文的,用matplotlib绘图时,汉字会显示一个方框,如下代码:

import matplotlib.pyplot as plt 

squares = [1,4,9,16,25]

plt.plot(squares, linewidth=5)

#设置图表标题,并给坐标轴就加上标签
plt.title("平方数",fontsize=24)
plt.xlabel("",fontsize=14)
plt.ylabel("值得平方",fontsize=14)

#设置刻度标记大小
plt.tick_params(axis='both',labelsize=14)
plt.show()

显示结果如下:

汉字显示为方框,需要手动添加中文字体的名称。

增加的代码如下:

from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']

 

最终的代码为:

import matplotlib.pyplot as plt 

from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']

squares = [1,4,9,16,25]

plt.plot(squares, linewidth=5)

#设置图表标题,并给坐标轴就加上标签
plt.title("平方数",fontsize=24)
plt.xlabel("",fontsize=14)
plt.ylabel("值得平方",fontsize=14)

#设置刻度标记大小
plt.tick_params(axis='both',labelsize=14)
plt.show()

这时的输出结果为:

这时就可显示汉字,但我的X坐标轴的显示不知道为何缺少一半,还需要继续高手指点一二。


原博客地址:https://blog.csdn.net/u013038499/article/details/52449768