数据可视化练习

文章目录


试题示例

绘制下图所示的表格

根据下表的数据,将班级名称一列作为x轴的刻度标签,将男生和女生两列的数据作为刻度标签对应的数值,使用bar()函数绘制下图所示的柱形图。

方式一

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']="SimHei"
plt.rcParams['axes.unicode_minus']=False
x1=np.array(["高二1班","高二2班","高二3班","高二4班","高二5班","高二6班",])
ym=np.array([90.5,89.5,88.7,88.5,85.2,86.6])
yw=np.array([92.7,87.0,90.5,85.0,89.5,89.8])
x=np.arange(len(yw))
width=0.3
plt.bar(x,ym,width,label="男生平均分")
plt.bar(x+width,yw,width,label="女生平均分")
plt.ylim(0,ym.max()*1.35)
plt.xticks(x,labels=x1)
plt.ylabel("分数")
plt.title("高二各班男生、女生英语平均成绩")
avg=(np.average(ym)+np.average(yw))/2
plt.axhline(avg,ls="--",color='g',label="英语平均成绩")
plt.legend()
#print(avg)
plt.show()

方式二

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
y=pd.read_excel(r"d:/a.xlsx")
plt.rcParams['font.sans-serif']="SimHei"
plt.rcParams['axes.unicode_minus']=False
x=np.arange(len(y["mavg"]))
width=0.3
plt.bar(x,y["mavg"],width,label="男生平均分")
plt.bar(x+width,y["wavg"],width,label="女生平均分")
plt.ylim(0,120)
plt.xticks(x,labels=y["bgmc"])
plt.ylabel("分数")
plt.title("高二各班男生、女生英语平均成绩")
avg=(np.mean(y["mavg"])+np.mean(y["wavg"]))/2
plt.axhline(avg,ls="--",color='g',label="英语平均成绩")
plt.legend()
plt.show()

相关推荐
专注数据的痴汉2 天前
「数据获取」《中国商务年鉴》(2004-2024)
大数据·人工智能·信息可视化
IT北辰2 天前
HTML+Python+MySQL实战构建基因程序可视化交互式大屏系统
信息可视化
Highcharts.js2 天前
Highcharts开发解析:从数据可视化到用户体验的全面指南
信息可视化·前端框架·数据可视化·ux·highcharts·交互图表
q***57742 天前
Python中的简单爬虫
爬虫·python·信息可视化
韩立学长2 天前
【开题答辩实录分享】以《粤港澳大湾区活动数据可视化分析系统》为例进行答辩实录分享
python·信息可视化·flask
拓端研究室2 天前
专题:2025新能源转型展望报告|附270+份行业报告PDF、数据可视化模板汇总下载
信息可视化
数据智研3 天前
【数据分享】太湖及周边地区1985-2010年耕地空间分布TIF数据
信息可视化·数据分析
菥菥爱嘻嘻3 天前
React + ECharts 实践:构建可交互的数据可视化组件
react.js·信息可视化·echarts
不会写DN4 天前
[特殊字符]开班会时由于太无聊,我开发了一个小游戏……
程序人生·信息可视化·职场和发展·交互·图形渲染·学习方法·高考
w***4814 天前
Python中的简单爬虫
爬虫·python·信息可视化