Python数据分析第四周作业

项目 内容
课程班级博客链接 20级数据班(本)
这个作业要求链接  Python数据分析第四周作业
博客名称 2003031124—邱云龙—Python数据分析第四周作业-numpy的简单操作
要求 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果)。

 

 

题目一  扩展阅读,心得体会。

 

1、*扩展阅读:matplotlib常用设置

 

心得:

 

  1. 使用起来极为简单。
  2. 以渐进、交互式方式实现数据可视化。
  3. 表达式和文本使用LaTeX排版。
  4. 对图像元素控制力强。
  5. 可输出PNG、PDF、SVG和EPS等多种格式。

可以开启多窗口模式
在交互模式下,plt.plot()就可显示图像,不需要plt.show()(plt.draw()可以用来刷新图像)
阻塞模式下,只能打开一个窗口,关掉了才能打开另一个
一般matplotlib默认是开启交互模式的(plt.ioff()关闭)
shell中一般是阻塞模式

 

2、*扩展阅读:matplotlib进阶设置

 

心得:基本绘画设置(Figure和Subplot,颜色、标记和线型及添加刻度和标签)

题目一  作业题目

 

  • 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岁等 
#导入绘图包
from matplotlib import pyplot as plt 
import random


#解决Windows平台下matplotlib中文问题
import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']   #设置简黑字体
mpl.rcParams['axes.unicode_minus'] = False # 解决‘-’bug

# 定义图片大小
plt.figure(figsize=(20,9),dpi = 80)
# 定义X轴
x = range(11,31)
# 导入数据
y = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]

# 取步长操作
# 取步长操作
_xtick_labels = ["{}岁".format(i) for i in range(11,31)]

# 取步长为2,数字和字符串一一对应,数据的长度一样
plt.xticks(list(x)[::2],_xtick_labels[::2],rotation = 45) # rotation旋转的度数
#定义Y轴
plt.yticks(range(0,9))

plt.xlabel("年龄")
plt.ylabel("所谈(男)女朋友的个数")
plt.title("统计分析自己每年交女(男)朋友的数量走势折线图")

#绘制网格,并且改变网格透明度
plt.grid(alpha = 0.4)
plt.plot(x,y)
#plt.savefig(".\p3.png")
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]
    • 绘制折线图,横轴为日期,纵轴为销量
import matplotlib.pyplot as plt
#设置中文
plt.rcParams['font.sans-serif']='SimHei'
plt.rcParams['axes.unicode_minus']=False
#画布设置
plt.figure(figsize=(20,9),dpi = 80)
x = range(1,11)
y1 = [20,50,30,5,10,55,23,33,41,22]
y2 = [5,10,32,18,20,22,36,63,82,71]
#设置标题,显示y1,y2的名称
plt.plot(x,y1,label = "七月")
plt.plot(x,y2,label = "八月")
plt.legend(['七月','八月'])
#横纵坐标命名
plt.ylabel("销量")
plt.xlabel("日期")
xticks_label = ["{}日".format(i) for i in x]
#标题
plt.title('七月、八月上旬1-10日每天店铺产品销量个数')
# x 坐标刻度尺
plt.xticks(x,xticks_label)
#展示
plt.show()

  

 

posted @ 2022-03-30 19:11  11-可楽加冰  阅读(118)  评论(0)    收藏  举报