数据分析Matplotlib练习-AI小白进阶之路

练习一

为了对某一产品进行合理定价,我们对此类商品进行了试销实验,价格与需求量数据如下。利用图表分析规律。

price = [60,80,40,30,70,90,95]
sales = [100,50,120,135,65,45,40]

# 设定价格是x,需求量是y,先用折线图绘制相关图形
import matplotlib.pyplot as plt

x = [60,80,40,30,70,90,95]
y = [100,50,120,135,65,45,40]

plt.plot(x,y)

plt.show()

# 发现折线图无法找出规律,接下来尝试用散点图绘制图形寻找规律

在这里插入图片描述

# 设定价格是x,需求量是y_s,产品销售额y_p
import matplotlib.pyplot as plt

# 设置全局中文
font = {
    'family':'SimHei',
    'weight':'bold',
    'size':13
}
matplotlib.rc("font", **font)


x = [60,80,40,30,70,90,95]
y_s = [100,50,120,135,65,45,40]
y_p = [6000,4000,4800,4050,4550,4050,3800]

plt.scatter(x,y_s)
# plt.scatter(x,y_p)

#设置x、y轴刻度值
plt.xticks(x)
plt.yticks(y_s)

#设置图片标题
plt.title('价格与销量情况')

#设置x、y轴标签
plt.xlabel('价格')
plt.ylabel('销量')

plt.show()
# 通过散点图,可以很清楚的发现规律,随着价格不断上升,销量是逐渐递减的,为了保持产品销量和盈利,所以价格不能过低或过高。进一步分析。

在这里插入图片描述

import matplotlib.pyplot as plt
font = {
    'family':'SimHei',
    'weight':'bold',
    'size':13
}
matplotlib.rc("font", **font)

x = [60,80,40,30,70,90,95]
y_s = [100,50,120,135,65,45,40]
y_p = [6000,4000,4800,4050,4550,4050,3800]

# plt.scatter(x,y_s)
plt.scatter(x,y_p,marker='*',color='r')

#设置x、y轴刻度值
plt.xticks(x)
plt.yticks(y_p)

#设置图片标题
plt.title('价格与销售额情况')

#设置x、y轴标签
plt.xlabel('价格')
plt.ylabel('销售额')

plt.show()

在这里插入图片描述

从图中可以看到,当价格在60元时,产品的销量额最大为6000,所以综上分析,建议产品定价在60元,保证销售额的最大值,谋取最大利润。

练习二

直观体现出不同电影近三天的票房的对比情况,电影数据如下:

movies_name = [“变身特工”,“美丽人生”,“鲨海逃生”,“熊出没·狂野大陆”]
day_12 = [2358,399,2358,362]
day_13 = [12357,156,2045,168]
day_14 = [15746,312,4497,319]

### import matplotlib.pyplot as plt  # 调用matplotlib库
# 全局中文设置
font={
    'family':'SimHei',
    'weight':'bold',
    'size':13   
}
matplotlib.rc('font',**font)

# 设置画布大小
plt.figure(figsize=(14,8))

# 定义时间为x,票房为height
x = ['第一天','第二天','第三天']

# 定义电影变身特工的票房量为h1
h1 = [2358,12357,15746]

# 定义电影美丽人生的票房量为h2
h2 = [399,156,312]

# 定义电影鲨海逃生的票房量为h3
h3 = [2358,2045,4497]

# 定义电影熊出没的票房量为h4
h4 = [362,168,319]
# 定义宽度
width = 0.2

# 现在有4个柱子,没跟柱子宽度为 width/4,h1柱子需要左移2倍的width/4,即左移width/2,h2左移width/4
# 则h1的位置 可变为 [i-width/2 for i in list(range(len(x)))]
# 同理可得 
# h2的位置变换: [i-width/4 for i in list(range(len(x)))]
# h3的位置变换: [i+width/4 for i in list(range(len(x)))]
# h4的位置变换: [i+width/2 for i in list(range(len(x)))]
# 为了方便使用,将x变换下, x_x = list(range(len(x))) 代入原函数
x_x = list(range(len(x)))
# 将x_x变换为分组用的x值,[i-width/2 for i in list(range(len(x)))],代入函数,
x_1 = [i-width-width/2 for i in list(range(len(x)))]
x_2 = [i-width/2 for i in list(range(len(x)))]
x_3 = [i+width/2 for i in list(range(len(x)))]
x_4 = [i+width+width/2 for i in list(range(len(x)))]
plt.bar(x_1,h1,width=width,label='变身特工')
plt.bar(x_2,h2,width=width,label='美丽人生')
plt.bar(x_3,h3,width=width,label='鲨海逃生')
plt.bar(x_4,h4,width=width,label='熊出没')

# 设置数据图例
plt.legend()

# 设置x轴刻度标签
plt.xticks(x_x,x)

# 设置x、y轴标签
plt.xlabel('时间')
plt.ylabel('票房量')

# 设置图片标题
plt.title('近3天电影票房数据')

plt.show()

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值