**
Ding,初识matplotlib(以折线图为例)
**
一、首先进行导包,
import matplotlib.pyplot as plt
因图中涉及中文字体,笔者还导入了中文字体包
from matplotlib import font_manager
二、接下来,进行折线图绘制的主体部分
- 设置中文字体的位置
my_font=font_manager.FontProperties(fname='xxx字体的位置')
- 设置xy轴的参数范围
x=range(a,b)
y=[...相应的数值...]
- 折线图绘制的万能模板
_x=list(x)
_xticks_labels=['{}中文'.format(i) for i in range(a,b)]
plt.xticks(_x[::1],_xticks_labels[::1],rotation=45,fontproperties=my_font)
plt.yticks(y)
plt.xlabel('。。。对应中文。。。',fontproperties=my_font)
plt.ylabel('。。。对应中文。。。',fontproperties=my_font)
plt.title('。。。中文。。。',fontproperties=my_font)
#绘制网格
plt.grid(alpha=0.1) #alpha可以调整网格颜色深度
#添加图例
plt.legend(prop=my_font)
plt.show()
介绍完折线图的模板,我们来看一个具体例子吧
需求:绘制11至30岁男(女)性的女(男)朋友数量与年龄的折线图
import matplotlib.pyplot as plt
from matplotlib import font_manager
my_font=font_manager.FontProperties(fname='C:\Windows\Fonts\simsun.ttc')
x=range(11,31)
y_1=[1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y_2=[1,0,3,1,2,2,3,3,2,1,2,1,1,1,1,1,1,1,1,1]
plt.plot(x,y_1,label='自己')
plt.plot(x,y_2,label='同桌')
_x=list(x)
_xticks_labels=['{}岁'.format(i) for i in range(11,31)]
plt.xticks(_x[::1],_xticks_labels[::1],rotation=45,fontproperties=my_font)
plt.yticks(y_1)
plt.xlabel('年龄 单位:岁',fontproperties=my_font)
plt.ylabel('女(男)朋友的数量 单位:个',fontproperties=my_font)
plt.title('交往图',fontproperties=my_font)
plt.grid(alpha=0.1)
plt.legend(prop=my_font)
plt.show()
输出结果如下: