matplotlib默认不支持中文字符。一下有几种解决方法
首先查看电脑系统支持的字体样式
windows10: 去C:\Windows\Fonts目录下查看
linux: 在命令行中输入fc-list查看
该文章讲解以windows10为例
方法一
使用matplotlib中的FontProperties设置中文
在C:\Windows\Fonts目录下边找一个系统支持的中文字体
将上边找到的字体文件“引用”到代码当中
from matplotlib.font_manager import FontProperties # 导入FontProperties
my_font = FontProperties(fname="C:\Windows\Fonts\simkai.ttf", size=14) # 设置字体
from matplotlib import pyplot as plt
import random
from matplotlib.font_manager import FontProperties # 导入FontProperties
my_font = FontProperties(fname="C:\Windows\Fonts\simkai.ttf", size=14) # 设置字体
plt.figure()
fig = plt.figure(figsize=(20,8),dpi=80)
x = range(0,120)
y = [random.randint(20,35) for i in range(120)]
plt.plot(x,y)
_xtick_labels = ["10点{}分".format(i) for i in range(60)]
_xtick_labels += ["11点{}分".format(i) for i in range(60)]
plt.xticks(list(x)[::3],_xtick_labels[::3],rotation=270,fontproperties=my_font)
plt.savefig("./img.png")
plt.show()
x轴刻度成功显示了中文
方法二
待更新