当前位置: 首页 > news >正文

【数据可视化-10】国防科技大学录取分数线可视化分析

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人工智能领域的优质创作者,提供AI相关的技术咨询、项目开发和个性化解决方案等服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:xf982831907

💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。

在这里插入图片描述

【数据可视化-10】国防科技大学录取分数线可视化分析

  • 一、引言
  • 二、数据准备
  • 三、Pyecharts简介
  • 四、数据可视化分析
    • 4.1 省份理科一本线分布图
    • 4.2 工程技术类录取分数分布图
    • 4.3 学历教育合训类录取分数分布图
    • 4.4 分数结合地图的展示
      • 4.4.1 地图热力图
      • 4.4.2 3D地图+3D柱状图工程技术类录取最高分情况
  • 五、结论

一、引言

  在当今信息爆炸的时代,数据可视化成为了一种强有力的工具,能够帮助我们直观地理解和分析复杂的数据集。本文将利用Python的Pyecharts库,对国防科技大学2016年的录取分数数据进行可视化分析。通过图表展示,我们可以清晰地看到不同省份的录取分数分布情况,为考生和家长提供有价值的参考信息。

二、数据准备

  首先,我们需要准备好国防科技大学2016年的录取分数数据。数据包含以下字段:省份、理科一本线、工程技术类最高分、工程技术类最低分、工程技术类平均分、学历教育合训类最高分、学历教育合训类最低分、学历教育合训类平均分。以下是部分数据示例:

省份理科一本线工程技术类最高分工程技术类最低分工程技术类平均分学历教育合训类最高分学历教育合训类最低分学历教育合训类平均分
北京548662607629613570592
天津512659634649600537567
河北525682654667669640649
山西519639617625638579599
内蒙古484641615627623558597
辽宁498660624637641607621
吉林530658639649634599615
黑龙江486667623641628580600

  详细数据参考国防科技大学招生官网国防科技大学招生官网 或者联系我。

三、Pyecharts简介

  Pyecharts是一个用于生成Echarts图表的Python库。Echarts是一个使用JavaScript实现的开源可视化库,能够生成丰富的交互式图表。Pyecharts通过将Echarts的图表转化为Python代码,使得在Python环境下也能方便地生成高质量的图表。

四、数据可视化分析

  接下来,我们将使用Pyecharts库对国防科技大学2016年的录取分数数据进行可视化分析。
  首先导入数据并对数据中的异常值进行清洗,具体代码如下:

import numpy as np
import pandas as pddata = pd.read_excel("data.xlsx")def replace_mean(df,col='A'):"col列中的'/'用这一列的均值来替换"df[col] = df[col].replace('/', np.nan)mean_A = df[col].mean(skipna=True)df[col].fillna(mean_A, inplace=True)for col in ['学历教育合训类最高分','学历教育合训类最低分','学历教育合训类平均分']:replace_mean(data,col)

4.1 省份理科一本线分布图

  首先,我们绘制一个柱状图,展示不同省份的理科一本线分布情况。

from pyecharts import options as opts
from pyecharts.charts import Barc = (Bar().add_xaxis(data['省 份'].tolist()).add_yaxis("理科一本线", data['理科一本线'].tolist()).set_global_opts(title_opts=opts.TitleOpts(title="国防科技大学2016年理科一本线录取分数", subtitle="各省分数情况分布")).render("bar_base.html")
)

  生成的柱状图清晰地展示了不同省份的理科一本线分布情况。可以看到,海南的理科一本线最高,达到了602分,而江苏的理科一本线最低,为353分,但各个地方的总分不同,需要做具体分析,这里就是展示一组数据而已,具体结果不具有参考性。

4.2 工程技术类录取分数分布图

  接下来,我们绘制三个折线图,分别展示工程技术类的最高分、最低分和平均分的分布情况。

import pyecharts.options as opts
from pyecharts.charts import Linex_data = data['省 份'].tolist()(Line().add_xaxis(xaxis_data=x_data).add_yaxis(series_name="'理科一本线'",stack="总量",y_axis=data['理科一本线'].tolist(),label_opts=opts.LabelOpts(is_show=False),).add_yaxis(series_name="工程技术类最高分",stack="总量",y_axis=data['工程技术类最高分'].tolist(),label_opts=opts.LabelOpts(is_show=False),).add_yaxis(series_name="工程技术类最低分",stack="总量",y_axis=data['工程技术类最低分'].tolist(),label_opts=opts.LabelOpts(is_show=False),).add_yaxis(series_name="工程技术类平均分",stack="总量",y_axis=data['工程技术类平均分'].tolist(),label_opts=opts.LabelOpts(is_show=False),).set_global_opts(title_opts=opts.TitleOpts(title="工程技术类招聘分数"),tooltip_opts=opts.TooltipOpts(trigger="axis"),yaxis_opts=opts.AxisOpts(type_="value",axistick_opts=opts.AxisTickOpts(is_show=True),splitline_opts=opts.SplitLineOpts(is_show=True),),xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=False),).render("stacked_line_chart.html")
)

  生成的折线图展示了工程技术类在不同省份的最高分、最低分和平均分的分布情况。可以看到,工程技术类的最高分和平均分在海南最高,分别为829分和750分;而最低分在江苏最高,为404分。

4.3 学历教育合训类录取分数分布图

  类似地,我们绘制三个折线图,展示学历教育合训类的最高分、最低分和平均分的分布情况。

# 数据准备
scores_edu_max = [613, 600, 669, 638, 623, 641, 634, 628]
scores_edu_min = [570, 537, 640, 579, 558, 607, 599, 580]
scores_edu_avg = [592, 567, 649, 599, 597, 621, 615, 600]# 创建折线图
line = Line()
line.add_xaxis(provinces)
line.add_yaxis("学历教育合训类最高分", scores_edu_max)
line.add_yaxis("学历教育合训类最低分", scores_edu_min)
line.add_yaxis("学历教育合训类平均分", scores_edu_avg)# 设置全局配置项
line.set_global_opts(title_opts=opts.TitleOpts(title="学历教育合训类录取分数分布图"),yaxis_opts=opts.AxisOpts(name="分数"),xaxis_opts=opts.AxisOpts(name="省份"),legend_opts=opts.LegendOpts(pos_left="left")
)# 渲染图表
line.render("edu_scores_distribution_chart.html")

  生成的折线图展示了学历教育合训类在不同省份的最高分、最低分和平均分的分布情况。可以看到,学历教育合训类的最高分在海南最高;最低分在江苏,和上面的结果一致。

4.4 分数结合地图的展示

4.4.1 地图热力图

  首先对省份数据进行清洗

province_mapping = {'北京':"北京市",'天津':"天津市",'河北':"河北省",'山西':"山西省",'内蒙古':"内蒙古自治区",'辽宁':"辽宁省",'吉林':"吉林省",'黑龙江':"黑龙江省",'上海':"上海市",'安徽':"安徽省",...
}data['prov'] = data['省 份'].map(province_mapping)

  绘制基于地图的省份理科一本线的详细代码如下:

from pyecharts import options as opts
from pyecharts.charts import Mapc = (Map().add("学历教育合训类最高分", [list(z) for z in zip(data['prov'].tolist(), data['学历教育合训类最高分'].tolist())], "china").set_global_opts(title_opts=opts.TitleOpts(title="国防科技大学学历教育合训类最高分分布"),visualmap_opts=opts.VisualMapOpts(max_=max(data['学历教育合训类最高分'].tolist()),min_=min(data['学历教育合训类最高分'].tolist())),).render("map_visualmap.html")
)

4.4.2 3D地图+3D柱状图工程技术类录取最高分情况

  首先对数据进行清洗,做成绘图需要的数据结构,具体的数据结构如下:

[('广东', [113.27, 23.13, 641]),('黑龙江', [127.9688, 45.368, 667]),('内蒙古', [110.3467, 41.4899, 641]),('吉林', [125.8154, 44.2584, 658]),('辽宁', [123.1238, 42.1216, 660]),('河北', [114.4995, 38.1006, 682]),('天津', [117.4219, 39.4189, 659]),('山西', [112.3352, 37.9413, 639]),('陕西', [109.1162, 34.2004, 665]),('甘肃', [103.5901, 36.3043, 632]),('宁夏', [106.3586, 38.1775, 637]),('青海', [101.4038, 36.8207, 596]),('新疆', [87.9236, 43.5883, 673]),('西藏', [91.11, 29.97, 0]),('四川', [103.9526, 30.7617, 665]),('重庆', [108.384366, 30.439702, 671]),('山东', [117.1582, 36.8701, 679]),('河南', [113.4668, 34.6234, 665]),('江苏', [118.8062, 31.9208, 404]),('安徽', [117.29, 32.0581, 655]),('湖北', [114.3896, 30.6628, 665]),('浙江', [119.5313, 29.8773, 692]),('福建', [119.4543, 25.9222, 632]),('江西', [116.0046, 28.6633, 645]),('湖南', [113.0823, 28.2568, 662]),('贵州', [106.6992, 26.7682, 671]),('广西', [108.479, 23.1152, 642]),('海南', [110.3893, 19.8516, 829]),('上海', [121.4648, 31.2891, 489])]

  以(‘广东’, [113.27, 23.13, 641])为例,'广东’表示省份,[113.27, 23.13]表示广东的经纬度,而641表示国防科技大学在广东省工程技术类招聘的最高分为641分;
具体的绘图代码如下:

import pyecharts.options as opts
from pyecharts.charts import Map3D
from pyecharts.globals import ChartTypemap3d = (# 3D地图Map3D(# 初始化配置项init_opts=opts.InitOpts(theme='white',  # 图表主题 white darkwidth='99vw',  # 图表画布宽度height='97vh',  # 图标画布长度))# !!!!全局配置项!!!!.set_global_opts(# 标题配置项title_opts=opts.TitleOpts(title="3D地图+柱状图",  # 主标题),# 视觉映射配置项visualmap_opts=opts.VisualMapOpts(is_show=True,  # 是否显示视觉映射配置max_=1000,  # 指定 visualMapPiecewise 组件的最大值),)# !!!!系列配置项!!!!.set_series_opts(# 标签名称显示,默认为Truelabel_opts=opts.LabelOpts(is_show=True  # 是否显示标签名字)).add_schema(# 地图类型maptype='china',# 图元样式配置项itemstyle_opts=opts.ItemStyleOpts(# 图形的颜色color="#1661AB",# 描边宽度,默认不描边。border_width=0.8,# 图形的描边颜色。支持的颜色格式同 color,不支持回调函数。border_color="rgb(62,215,213)"),)# 数据配置.add(# 系列名称,用于 tooltip 的显示,legend 的图例筛选series_name='人数',# 数据项 (坐标点名称,坐标点值)data_pair=data_pair,# 叠加图的类型(目前只支持 Bar3D,Line3D,Lines3D,Scatter3D)type_=ChartType.BAR3D,# 柱体大小bar_size=1,)
)
map3d.render("3D_Map.html")

五、结论

  通过对国防科技大学2016年的录取分数数据进行可视化分析,我们可以得出以下结论:

  不同省份的高考总分不同,具体结果不具有实际意义,但并不影响数据可视化分析的流程;

http://www.lryc.cn/news/515553.html

相关文章:

  • 深入探索:将 Elasticsearch 与 Ruby 工具结合使用
  • Istio 补充 Kubernetes 的不足
  • 远程主机执行脚本1、无脚本内容外协。
  • Jmeter进阶篇(32)Jmeter 在 MySQL 数据库压测中的应用
  • Python脚本实现通过Vector VN1630A CAN盒子与ECU通信
  • Spring实现Logback日志模板设置动态参数
  • 内部类 --- (寄生的哲学)
  • Python深度学习GRU、LSTM 、BiLSTM-CNN神经网络空气质量指数AQI时间序列预测及机器学习分析|数据分享...
  • JSP基础
  • 基于Springboot +Vue 在线考试管理系统
  • Node.js 函数
  • JVM学习指南(9)-JVM运行时数据区
  • 2025/1/4期末复习 密码学 按老师指点大纲复习
  • 关于嵌入式系统的知识课堂(二)
  • 基于ETAS工具的AutoConnect实现方案
  • BGP基础配置实验
  • 基于单片机的人体健康指标采集系统设计
  • Go语言性能优化-字符串格式化优化
  • UE5失真材质
  • SAP 01-初识AMDP(ABAP-Managed Database Procedure)
  • 关于视频审核,内容风控在“控”什么?
  • 5G NTN(七) 高层(1)
  • 专家混合(MoE)大语言模型:免费的嵌入模型新宠
  • 《柴油遗产-无耻时代》V98375官方版
  • 科技云报到:洞见2025年科技潮流,技术大融合开启“智算时代”
  • 【openwrt】OpenWrt 路由器的 802.1X 动态 VLAN
  • [coredump] 生成管理
  • CSS——5. 外部样式
  • 检查字符是否相同
  • casaos安装最新版homeassistant-arm