2003031117—李昇科—Python数据分析第四周作业—matplotlib的学习
| 项目 | 内容 |
| 课程班级博客链接 | 20级数据班(本) |
| 这个作业要求链接 | python数据分析第四周作业要求 |
| 博客名称 | 2003031117—李昇科—Python数据分析第四周作业—matplotlib的学习 |
| 要求 | 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果) |
题目一:扩展阅读,撰写学习心得。
1.扩展阅读:matplotlib常用设置
心得:这篇文章介绍了一些关于matplotlib的操作和运用。设置图像大小时 ,当已经存在对象时,学到了新的代码来改变图像的大小(f.set_figheight(15) f.set_figwidth(15) )。在标注的时候
若出现重叠现象,在重叠的两者之间添加一个刻度,使其不显示就可。增加x轴与y轴的间隔,只要x轴的标注向右移动一些。移动刻度标注时,可通过设置 set_horizontalalignment()来控制标注的
左右位置,控制刻度标注的上下位置也可以用labelpad参数进行设置。学习了图像以及图像中的一些操作:设置子图标题,图像中的空白部分。
2.扩展阅读:matplotlib进阶设置
心得:通过阅读学习这篇文章,我学会了一些关于maplotlib的一些技巧操作。如果不想每次使用matplotlib时都在代码部分进行配置,可以修改matplotlib的文件参数。可以用matplot.get_config()
命令来找到当前用户的配置文件目录。学习了如何显示中文,关于线条的标记,以及颜色的设置。在图中给特殊点做标记,首先,我们在对应的函数图像位置上画一个点;然后,向横轴引一条垂线,
以虚线标记;最后,写上标签。
题目二:
1.课上例题,男女朋友的数量。
- 假设大家在30岁的时候,根据自己的实际情况,统计出来了从11岁到30岁每年交的女(男)朋友的数量如列表a,请绘制出该数据的折线图,以便分析自己每年交女(男)朋友的数量走势
- a = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
- 要求: y轴表示个数 x轴表示岁数,比如11岁,12岁等
代码:
1 from matplotlib import pyplot as plt 2 3 #设置中文 4 plt.rcParams['font.sans-serif']='SimHei'#用来正常显示中文标签 5 plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号 6 7 #X和Y的取值 8 x = range(11,31) 9 y = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1] 10 11 #设置画布 12 plt.figure(figsize=(15,8),dpi = 80) 13 plt.plot(x,y) 14 15 plt.title("男女朋友的数量趋势")#设置标题 16 #设置x与y的刻度 17 xticks_label = ["{}岁".format(i) for i in x] 18 yticks_label = ["{}个".format(i) for i in y] 19 20 plt.xticks(x,xticks_label) 21 plt.yticks(y,yticks_label) 22 23 plt.show()
结果:

2.销量统计
- 假如需要统计量一家店铺七月、八月上旬1-10日每天店铺产品销量个数,并进行销量趋势对比
- 七月销量:[20,50,30,5,10,55,23,33,41,22]
- 八月销量:[5,10,32,18,20,22,36,63,82,71]
- 绘制折线图,横轴为日期,纵轴为销量
代码:
1 from matplotlib import pyplot as plt 2 3 #设置中文 4 plt.rcParams['font.sans-serif']='SimHei'#用来正常显示中文标签 5 plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号 6 7 #X和y1,y2的取值 8 x = range(1,11) 9 y1 = [20,50,30,5,10,55,23,33,41,22] 10 y2 = [5,10,32,18,20,22,36,63,82,71] 11 12 #设置画布 13 plt.figure(figsize=(15,8),dpi = 80) 14 15 plt.title("七月/八月上旬销量统计")#设置标题 16 17 #添加七月八月的图像 18 plt.plot(x,y1,label = "七月") 19 plt.plot(x,y2,label = "八月") 20 21 #设置x的刻度 22 xticks_label = ["{}日".format(i) for i in x] 23 plt.xticks(x,xticks_label) 24 25 #添加x轴y轴的名称 26 plt.xlabel("x") 27 plt.ylabel("y") 28 29 plt.legend(["七月上旬销售统计","八月上旬销售统计"]) 30 plt.show()
结果:


浙公网安备 33010602011771号