数据可视化第二章好题

1.物流公司物流费用统计(必含元素:标题)
近些年我国物流行业蓬勃房展,目前已经有近几千家物流公司,其中部分物流公司大打价格战,以更低的价格吸引更多的客户,从而抢占市场份额。

要求根据下表的数据,将月份列的数据作为x轴的刻度标签,将A公司、B公司、C公司这三列数据作为y轴的数据,使用stackplot()函数绘制堆积面积图。

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.title("物流公司物流费用统计")
x = ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]
y1 = [198,215,245,222,200,236,201,253,236,200,266,290]
y2 = [203,236,200,236,269,216,298,333,301,349,360,368]
y3 = [185,205,226,199,238,200,250,209,246,219,253,288]
plt.stackplot(x, y1, y2, y3, labels=['A公司', 'B公司', 'C公司'])
plt.xlabel('月份')
plt.ylabel('物流费用(万元)')
plt.legend(loc='upper left')
plt.show()

2.某中学全校高二年级各班男女生英语成绩评估(必汉元素:刻度线)(10分)

某高中高二年级模拟考试后,学校对该年级各班各学科的平均成绩进行了统计,计算出全体高二年级的英语平均成绩为88.5。

要求根据下表的数据,绘制展示各班男生、女生英语平均成绩的柱形图,并将全体高二年级的英语平均成绩绘制成参考线。

import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.title("全校高二年级各班男女生英语成绩评估")
x = ["高二1班", "高二2班", "高二3班", "高二4班", "高二5班", "高二6班"]
y1 = [90.5, 89.5, 88.7, 88.5, 85.2, 86.6]
y2 = [92.7, 87.0, 90.5, 85.0, 89.5, 89.8]
bar_width = 0.4
index = np.arange(len(x))
plt.bar(index, y1, bar_width, label='男生平均成绩')
plt.bar(index + bar_width, y2, bar_width, label='女生平均成绩')
average = sum(y1 + y2) / len(y1 + y2)
plt.axhline(y=average, color='r', linestyle='--', label='全体平均成绩')
plt.xlabel("班级名称")
plt.ylabel("平均成绩")
plt.xticks(index + bar_width / 2, x)
plt.legend()
plt.show()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值