可视化

  • 第一题
  • 第二题
  • 第三题

第一题

1、学校学生使用频次最多的前30所学校(5分)
提示:按照学校分组,对学生人数做累加求得每个学校学生使用的频次,最后对频次进行降序排名并将最终结果通过横向柱状图展示。

要求:
1)各学校使用频次(1分)
t1.csv
2)学校学生使用频次最多的前30所学校(1分)

import matplotlib.pyplot as plt
import numpy as np
import pandas as pddf = pd.read_csv("../pandas_use/data.csv")
# 这两行代码解决 plt 中文显示的问题
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = Falseplt.figure(figsize=(30,10))
# 按学校分组,求各个学校学生人数总和
df1 = df.groupby(["学校"]).agg({'学生人数':'sum'}).sort_values("学生人数",ascending=False).head(30)
df2 = df.groupby(["学校"]).agg({'学生人数':'sum'}).sort_values("学生人数",ascending=False)
plt.barh(df1.index,df1["学生人数"])
plt.xticks(rotation=50)  #可以让x轴文字逆时针转动50°
plt.show()
print(df1)
df2.to_csv("t1.csv")

结果截图(2分):
结论:(1分)
香港中文大学的学生最喜欢使用快手APP,南方沿海城市的学生使用频次最高,福建,山东,安徽等地的生源最喜欢使用快手APP

第二题

2、使用频次前五学校学生中男女使用比例 (5分)
基于题目1中统计得到的各学校学生使用频次取出排名前5的学校,按照学校、性别分组,对学生人数进行sum累加求得各性别人数,将最终结果通过饼图展示(即展示前5所学校中每所学校男生女生的人数,需要在一张画布上展示5个图形,学校名作为每个图形的标题)。
要求:
1)取出学校学生使用频次排名前5的学校 (1分)
2)求得前5所学校中男生女生的使用频次(1分)

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.read_csv("../pandas_use/data.csv")
df1 = df.groupby(['学校']).agg({'学生人数':'sum'}).sort_values(by = '学生人数',ascending=False).head(5)
df2 = df.loc[df["学校"].isin(df1.index)]# 这两行代码解决 plt 中文显示的问题
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = Falsedf3 = df2.groupby(["学校","性别"]).agg({'学生人数':'sum'})
# print(df3)
# print(df3.loc[["汉口学院"]].values)plt.figure(figsize=(10,10))
for index,i in enumerate(df1.index):plt.subplot(2,3,index + 1)print(i)x = [df3.loc[(i,"男")].values[0] , df3.loc[(i,"女")].values[0]]plt.pie(x, labels=["男","女"])plt.title(i)
plt.show()

结果截图(2分):

结论:(1分)
男生使用频次高于女生

第三题

3、按省份统计使用快手APP数量 (5分)
按照学校省份进行分组,对学生人数进行累加求和得到每个省份的学生使用频次,最终将结果通过地图展示

要求:
1)各省份学生的使用频次(1分)

# 导入所需模块
import pandas as pd
from pyecharts import options as opts
from pyecharts.commons.utils import JsCode
import matplotlib.pyplot as plt
from pyecharts.charts import Map
import osdata = pd.read_csv("../pandas_use/data.csv")
# 这两行代码解决 plt 中文显示的问题
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False## 安装地图数据包
# pip install echarts-countries-pypkg
# pip install echarts-china-provinces-pypkg
# pip install echarts-china-cities-pypkg
# pip install echarts-china-counties-pypkg
# pip install echarts-china-misc-pypkg
# pip install echarts-united-kingdom-pypkg# os.system("pip install echarts-countries-pypkg")
# os.system("pip install echarts-china-provinces-pypkg")
# os.system("pip install echarts-china-cities-pypkg")
# os.system("pip install echarts-china-counties-pypkg")
# os.system("pip install echarts-china-misc-pypkg")
# os.system("pip install echarts-united-kingdom-pypkg")province_data = data.loc[:,['学生省份','学生人数']].groupby('学生省份').count().reset_index()province_data = province_data.replace('省','',regex=True).replace('自治区','',regex=True).replace('特别行政区','',regex=True)\
.replace('壮族','',regex=True).replace('维吾尔','',regex=True).replace('回族','',regex=True).replace('市','',regex=True)province_name = province_data['学生省份'].tolist()
province_num = province_data['学生人数'].tolist()(Map().add("人数",[list(z) for z in zip(province_name, province_num)],maptype="china").set_series_opts(label_opts=opts.LabelOpts(is_show=True,color='black',position='bottom',font_size=10,formatter=JsCode('''function(params) {if (isNaN(params.value)){return params.name;}else{return params.name+'\\n'+params.value;}}'''),)).set_global_opts(title_opts=opts.TitleOpts(title="各省份使用人数"),visualmap_opts=opts.VisualMapOpts(max_=1500),).render("map_china_cities.html")
)

结果截图(3分):

结论:(1分)
从各省份生源数量分布来看:东部沿海地区使用快手APP的学生数量要明显高于中部和西部地区
文章第三题代码来自:这篇

2022年大数据网络赛可视化部分相关推荐

  1. 2020年安徽省大数据网络赛与现场赛hive习题

    目录 第一章 2020年安徽省大数据比赛hive习题 (网络赛) 第二章 2020年安徽省大数据比赛hive习题 (现场赛) 前言 主要记录hive习题 一.2020年安徽省大数据比赛hive习题(网 ...

  2. 【2022年计算机设计大赛大数据主题赛--和鲸赛道】参赛作品:当疫情对上经济:是毁灭性的打击还是重生

    这是我们小队在2022年参加计算机设计大赛大数据主题赛–和鲸赛道的作品,用尽心思历时一个多星期完成,但是在最后很遗憾只取得了校赛二等奖的成绩,发出来与大家分享一下. 当疫情对上经济:是毁灭性的打击还是 ...

  3. 最新2022年高职大数据国赛任务书详解与模拟练习

    2022高职大数据竞赛模拟练习-模拟数据说明 2022高职大数据竞赛模拟练习-离线数据处理任务一:数据抽取

  4. Alluxio:2022年大数据五大趋势,多云下数据湖兴起,AI成为主流

    Alluxio创始人兼CEO预测2022年大数据发展五大趋势:混合云和多云.人工智能和深度学习.服务.数据共享和新的数据湖存储格式成为关注重点. 编辑 | 宋慧 出品 | CSDN 云计算   近日, ...

  5. 全国职业院校技能大赛2022年大数据技术与应用平台搭建

    前言 根据全国职业院校技能大赛2022年大数据技术与应用规程整理大数据平台搭建部分,如果有错误指出请提出改正,谢谢 资料 赛程文件 链接:https://pan.baidu.com/s/1TAygWq ...

  6. 2022-2023赛季高职大数据竞赛-赛规任务剖析

    2023年高职大数据省赛,任务详解与参考实现. 2022-2023赛季高职大数据竞赛-赛规说明 2022-2023赛季高职大数据竞赛-赛规任务剖析 2022-2023赛季高职大数据竞赛(样题解析)-离 ...

  7. 2023年中国大学生计算机设计大赛大数据主题赛资料(含往届作品及本届参考资料)

    一.本届赛题 题目:数据解读气候变化与全球应对 应对气候变化作为一项国家战略,已经融入生态文明建设的整体布局和经济社会发展全局.党的二十大报告进一步明确了我国应对气候变化的工作方向,坚持统筹产业结构调 ...

  8. 2022高职大数据竞赛0720更新参考实现

    2022国赛专区(7.20更新) 2022年高职大数据国赛(7.20更新),任务书详解与参考实现. 2022(7.20更新)高职大数据竞赛-官方样例数据说明 2022(7.20更新)高职大数据竞赛(任 ...

  9. 2022年大数据产业规模已超1000亿,从ChatGPT的爆火看大数据行业发展

    哈喽大家好,小编注意到最近一段时间ChatGPT突然爆火,可能很多朋友已经体验过了ChatGPT的智能程度,体验过的小伙伴们可以留言交流下心得哦! 聊天机器人ChatGPT的交流模型在经过大数据的浇灌 ...

最新文章

  1. 赠书 | 读懂生成对抗神经网络 GAN,看这文就够了
  2. centos6.8下安装pythondjango
  3. 使用C语言将一个数组首尾互换后输出,函数实现体会地址传递
  4. web窗体的基本控件
  5. php获取标准输入输出,shell--标准输入输出(readamp;echo)
  6. ios 10.3 汉字的中划线
  7. 课时4:改进我们的小游戏
  8. 65. magent 手动创建用户
  9. Arcpy 去除shp文件ZM值代码及工具箱
  10. Linux操作系统入门培训_Linux/Unix基础培训教程视频课程-风哥-专题视频课程
  11. 手机b站封面提取网站_【软件分享】B站视频提取器
  12. 推广的euclid_欧几里得(Euclid)与拓展的欧几里得算法
  13. Global.asax 文件是什么
  14. 对比Ruby和Python的垃圾回收
  15. python小程序抢购脚本怎么写_Python茅台抢购脚本的使用说明!!
  16. 共享单车在疯狂造车,ofo为什么要玩连接+共享单车模式?
  17. linux中获取几天前或者几天后的日期
  18. 学php收获与体会,实习心得体会及收获
  19. 如何进行期货日内趋势量化交易系统的设计?
  20. 微信小程序网络请求异常怎么办_微信小程序打开提示“网络异常,请检查网络状态”的解决方法...

热门文章

  1. Salesforce Schedule
  2. PHP代码审计系列(一)
  3. 第一台计算机研制成功的背景,第一台计算机的诞生背景
  4. hdu1584 蜘蛛牌 DFS
  5. 豪情-2015年阅读书籍分享[上]
  6. ZYNQ之路--制作AXI4 接口IP的思路
  7. 荣之学分析丨社交与跨境电商的结合是跨境电商未来发展的趋势?
  8. PHP输出缓存控制详解及flush、ob_flush的区别
  9. springboot根据模板导出word
  10. 关于计算机发展经历了四个时代,划分的依据以及应用领域.