##关于matplotlib的中文显示,我是从另一个blog中获取
Python-matplotlib-中文字体显示和设置_python matplotlib中文字体-CSDN博客
题目如图:
个人的代码解析:
from matplotlib import pyplot as plt
import matplotlib #这个是为了引入中文字体
a = [1,0,1,1,2,4,3,2,3,4,4,5,6,7,4,3,3,1,1,1]
x = range(11,31)
plt.figure(figsize=(20,8),dpi=80)
plt.plot(x,a)
_year = ["{}岁".format(i) for i in x]
matplotlib.rcParams['font.sans-serif']=['SimHei'] #引入中文 黑体
matplotlib.rcParams['axes.unicode_minus']=False #正常显示负号
plt.xticks(list(x),_year,rotation=45)
#下面是显示标签 xlabel在x轴显示标签 ylable类似
plt.xlabel("岁数")
plt.ylabel("个数")
#title 显示 这个图表的标题
plt.title("11岁到30岁每年交的女(男)朋友的数量")
#alpha 是透明度 且 范围是0~1 plt.grid是绘制网格
plt.grid(alpha=0.4)
plt.show()
对一个疑问点进行解析:
plt.xticks(list(x),_year,rotation=45)
list(x) 是这里只能用数组
_year也是一个数组 ,并且要和list(x)的一一对应,并且_year在这个传参是标签,就是把list(x)里的数,用_year里的字符串给一一覆盖了。
rotation是角度 你可以自己定义它的角度。