【数据可视化-11】全国大学数据可视化分析

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

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

在这里插入图片描述

【数据可视化-11】全国大学数据可视化分析

  • 一、引言
  • 二、导入分析库与数据清洗
  • 三、pyecharts可视化实践
    • 3.1 高校地理分布图
    • 3.2 全国不同类型大学数量情况
    • 3.3 高校类型与层次分析图
    • 3.4 全国不同大学隶属情况
    • 3.5 高校的坐标点位分析
  • 四、结论与展望

一、引言

  本文将带你一起探索一份全国高校数据集,通过pyecharts这一强大的Python可视化库,将抽象的数据转化为直观的图表,揭示高校分布、类型、层次以及各类标签(如985、211、双一流)之间的关联与差异。

二、导入分析库与数据清洗

  导入相应的分析库并进行数据加载。

import pandas as pd
from collections import Counter
###画图
from pyecharts import options as opts
from pyecharts.charts import Map
from pyecharts.globals import ThemeType
from pyecharts.charts import Bar, Pie, Timeline
from pyecharts.faker import Faker

df = pd.read_csv("全国大学数据.csv",encoding='gbk')
df.head()

  数据具体的格式如下:

  对省份字段进行标准化处理:

province_mapping = {
 '北京':"北京市",
 '天津':"天津市",
 '河北':"河北省",
 '山西':"山西省",
 '内蒙古':"内蒙古自治区",
 '辽宁':"辽宁省"...
}

df['省份'] = df['省份'].map(province_mapping)

三、pyecharts可视化实践

3.1 高校地理分布图

  使用pyecharts的Map组件,我们可以直观地展示全国高校的地理分布情况。通过颜色深浅或图标大小来反映各省份高校数量的多少,让读者一眼就能看出哪些地区是高等教育的重镇。同时,结合交互功能,读者可以点击地图上的省份,查看详细的高校列表。

from pyecharts.charts import Map
from pyecharts import options as opts
import pandas as pd

# 假设df为预处理后的DataFrame
province_counts = df['省份'].value_counts().reset_index()
province_counts.columns = ['省份', '高校数量']

map_chart = (
    Map()
    .add("高校数量", [list(z) for z in zip(province_counts['省份'], province_counts['高校数量'])], "china")
    .set_global_opts(
        title_opts=opts.TitleOpts(title="全国高校地理分布"),
        visualmap_opts=opts.VisualMapOpts(max_=max(province_counts['高校数量'])),
    )
)
map_chart.render("高校地理分布图.html")

  从图中我们可以发现高校数量最多是江苏省,拥有168所搞笑;长三角地区的高校明显高于其它地区,中部四川省高校最多,南部广东省高校最多,西部地区高校分布的数量相对较少;

3.2 全国不同类型大学数量情况

un_type = df['类型'].tolist()
result = Counter(un_type)
# 排序
d = sorted(result.items(), key=lambda x: x[1], reverse=True)
print(d)
key = [i[0] for i in d]
value = [i[1] for i in d]

# 链式调用
bar = (
    Bar(
        init_opts=opts.InitOpts(  # 初始配置项
            theme=ThemeType.MACARONS,
            animation_opts=opts.AnimationOpts(
                animation_delay=1000, animation_easing="cubicOut"  # 初始动画延迟和缓动效果
            ))
    )
        .add_xaxis(xaxis_data=key)  # x轴
        .add_yaxis(series_name="全国不同类型大学数量情况", y_axis=value)  # y轴
        .set_global_opts(
        title_opts=opts.TitleOpts(title='', subtitle='',  # 标题配置和调整位置
                                    title_textstyle_opts=opts.TextStyleOpts(
                                        font_family='SimHei', font_size=25, font_weight='bold', color='red',
                                    ), pos_left="90%", pos_top="10",
                                    ),
        xaxis_opts=opts.AxisOpts(name='类型', axislabel_opts=opts.LabelOpts(rotate=45)),
        # 设置x名称和Label rotate解决标签名字过长使用
        yaxis_opts=opts.AxisOpts(name='数量'),

    )
        
)
bar.render("全国不同类型大学数量情况.html")


  从图中我们可以发现理工类和综合类的院校最多,也就是高考时理科照生多的原因;

3.3 高校类型与层次分析图

  接下来,我们利用PieBar组件来分析高校的类型与层次。通过饼图展示公办与民办高校的占比,通过条形图展示本科与专科高校的分布情况。这些图表不仅能够帮助我们了解高校的构成,还能揭示不同类型与层次高校之间的差异。

attr = df['公或民办'].tolist()
result = Counter(attr)
# 排序
d = sorted(result.items(), key=lambda x: x[1], reverse=True)
print(d)
key = [i[0] for i in d]
value = [i[1] for i in d]
pie = (
    Pie()
        .add(
        "公或民办类型数量",
        [list(z) for z in zip(key, value)],
        rosetype="radius",
        radius=["30%", "55%"],
    )
        .set_global_opts(title_opts=opts.TitleOpts("公或民办类型数量"))
)
pie.render("公办与民办高校占比图.html")


  从图书可以看出高校有三种出资方式,分别是公办、民办和中外合作办学;其中公办的高校最多有2010所。

# 分析本科与专科高校的分布情况
undergraduate_vocational_distribution = df['本或专科'].value_counts()
undergraduate_vocational_distribution = undergraduate_vocational_distribution.reset_index()
undergraduate_vocational_distribution.columns = ['层次', '数量']
 
# 创建条形图展示本科与专科高校的分布情况
bar_chart = (
    Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
    .add_xaxis(undergraduate_vocational_distribution['层次'].tolist())
    .add_yaxis("高校数量", undergraduate_vocational_distribution['数量'].tolist())
    .set_global_opts(
        title_opts=opts.TitleOpts(title="本科与专科高校分布情况"),
        xaxis_opts=opts.AxisOpts(name="层次"),
        yaxis_opts=opts.AxisOpts(name="数量"),
    )
)
bar_chart.render("本科与专科高校分布图.html")


  从图中可以发现高校中本科和专科数据差不多持平。

3.4 全国不同大学隶属情况

  最后,我们利用ScatterGraph组件分析城市与高校之间的关联。通过散点图展示各城市高校的数量与分布,或者通过关系图展示城市与高校之间的隶属关系。

attr = data['隶属于'].tolist()
result = Counter(attr)
# 排序
d = sorted(result.items(), key=lambda x: x[1], reverse=True)
print(d)
key = [i[0] for i in d]
value = [i[1] for i in d]
c = (
    Bar(init_opts=opts.InitOpts(theme=ThemeType.DARK))
        .add_xaxis(xaxis_data=key)
        .add_yaxis("数量", y_axis=value)
        .set_global_opts(
        title_opts=opts.TitleOpts(title="全国不同大学隶属情况"),
        datazoom_opts=[opts.DataZoomOpts(), opts.DataZoomOpts(type_="inside")],
    )
        
)
c.render_notebook()

  从图中可以看到各个不同单位管理高校的数量,其中河南省管理的高校数量最多,教育部直属管的高校有84所等

3.5 高校的坐标点位分析

  可以使用百度的地名地址解析接口,将高校的地址转成经纬度,经纬度转成热力图如下;

四、结论与展望

  通过本次全国高校数据集的可视化探索,我们不仅直观地展示了高校的地理分布、类型与层次、标签情况以及与城市的关联,还深刻理解了数据可视化的力量。它让我们能够以前所未有的方式洞察数据背后的故事,为教育决策提供了有力的支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/950495.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SAP 02-AMDP Functions for CDS Table Functions

1. 创建一个Core Data Service Table Functions 新建 Core Data Service Table Function 定义CDS Table Functions EndUserText.label: a simple AMDP for CDS Table Functions ClientDependent: true //打开 Open SQL 的自动客户端处理 defin…

Ungoogled Chromium127 编译指南 MacOS篇(八)- 开始编译

1. 引言 完成了所有依赖包的安装后,我们终于来到了最关键的编译阶段。在开始编译之前,有一些重要的配置信息需要了解。本文将指导您完成整个编译过程。 2. 签名相关说明 虽然在我们的测试编译中不需要进行签名操作,但了解官方的签名要求仍…

SpringBootWeb案例-1(day10)

准备工作 需求 & 环境搭建 需求说明 环境搭建 步骤: 准备数据库表(dept、emp)创建 springboot 工程,引入对应的起步依赖(web、mybatis、mysql 驱动、lombok)配置文件 application.properties 中引入 mybatis 的配置信息&…

动手学深度学习-卷积神经网络-1从全连接层到卷积

目录 不变性 多层感知机的限制 平移不变性 局部性 卷积 “沃尔多在哪里”回顾 通道 小结 我们之前讨论的多层感知机十分适合处理表格数据,其中行对应样本,列对应特征。 对于表格数据,我们寻找的模式可能涉及特征之间的交互&#xff0…

【HTML+CSS+JS+VUE】web前端教程-4-标签之段落、换行、水平线

标签之段落 段落是通过<p>标签定义的换行 如果您希望在不生产一个新段落的情况下进行换行&#xff08;新行&#xff09;&#xff0c;请使用<br><br />元素是一个空的HTML元素 <p>这个<br>段落<br>演示了分行的效果</p>水平线 <…

vulnhub靶场【DC系列】之7

前言 靶机&#xff1a;DC-7&#xff0c;IP地址为192.168.10.13 攻击&#xff1a;kali&#xff0c;IP地址为192.168.10.2 都采用VMWare&#xff0c;网卡为桥接模式 对于文章中涉及到的靶场以及工具&#xff0c;我放置在网盘中&#xff0c;链接&#xff1a;https://pan.quark…

腾讯云AI代码助手编程挑战赛-图片转换工具

作品简介&#xff1a; 解决了人们学习生活中的图片格式转换问题&#xff0c; 制作该脚本&#xff0c;省去了打开在线编辑器操作的时间&#xff0c; 免费为用户提供图片格式的转换的实用小工具 技术架构 python语言的tk库来完成的GUI页面设计&#xff0c; 引用PIL包转换图…

Linux 文件的特殊权限—ACL项目练习

本文为Ubuntu Linux操作系统- 第二十一期~~ 上期回顾: 【ACL权限控制详解】 更多Linux 相关内容请点击&#x1f449;【Linux专栏】~ 主页&#xff1a;【练小杰的CSDN】 文章目录 项目项目要求具体的设置命令如下问题2问题3第一步&#xff1a;设置默认ACL前&#xff0c;在projec…

系统日志优化---自定义springboot-starter日志组件供各个服务使用

在优化项目时发现各个微服务都有各自的接口调用日志逻辑&#xff0c;比如每个服务都定义一个aop类拦截&#xff0c;十分冗余&#xff0c;其实是可以做成starter被各个服务引用使用&#xff0c;前提要先了解一下springboot自动装配原理 创建springboot工程&#xff0c;如果是jdk…

Matlab贝叶斯估计MCMC分析药物对不同种群生物生理指标数据评估可视化

全文链接&#xff1a;https://tecdat.cn/?p38756 摘要&#xff1a;本文着重探讨了如何利用Matlab实现贝叶斯估计。阐述了具体的实现流程&#xff0c;涵盖数据加载、先验常数设定、马尔可夫链蒙特卡洛&#xff08;MCMC&#xff09;属性指定、模型构建、运行链条以及结果查看等环…

js:日期对象和dom节点

日期对象 事件对象在前端开发里经常用来表示日期&#xff1a; 可以获取当前系统的时间 实例化 使用new关键字来实例化一个对象&#xff1a; const date new Date()console.log(date); 获取当前时间 const date new Date(2008-8-8)console.log(date); 获取指定时间 写得…

Ⅱ.INTRODUCTION TO CUDA C (CUDA C 入门)

前言 上一节环境配置好了&#xff0c;我们开始吧&#xff01; 一、A First Program 1. Hello, World! 我们先写一个C语言的 Hello, World! 作为对比 int main(void){printf("Hello, World!\n");return 0; }大家应该知道这个代码运行在CPU上吧&#xff0c;我们CP…

rsync如何实时同步

一、准备rsyncd服务环境 backup服务器&#xff08;rsync服务端&#xff09; 1、恢复了快照&#xff0c;重新安装rsync服务端 2、快速的部署rsyncd服务端 #!/bin/bash yum install rsync -ycat > /etc/rsyncd.conf << EOF uid www gid www port 873 fake supe…

Python的Matplotlib库应用(超详细教程)

目录 一、环境搭建 1.1 配置matplotlib库 1.2 配置seaborn库 1.3 配置Skimage库 二、二维图像 2.1 曲线&#xff08;直线&#xff09;可视化 2.2 曲线&#xff08;虚线&#xff09;可视化 2.3 直方图 2.4 阶梯图 三、三维图像 3.1 3D曲面图 3.2 3D散点图 3.3 3D散…

vue之element-ui文件上传(二)

一、点击上传&#xff0c;使用默认的action上传&#xff0c;添加校验&#xff0c;上传成功后&#xff0c;去除校验&#xff1a; <el-form-item label"文件md5" prop"fileMd5"><el-uploadv-if"!form.fileMd5"v-model"form.fileMd5&…

java项目之旅游网站的设计与实现(源码+文档)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的旅游网站的设计与实现。 项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 基于SpringBoot的…

IOS开发如何从入门进阶到高级

针对iOS开发的学习&#xff0c;不同阶段应采取不同的学习方式&#xff0c;以实现高效提升.本文将iOS开发的学习分为入门、实战、进阶三个阶段&#xff0c;下面分别详细介绍. 一、学习社区 iOS开源中国社区 这个社区专注于iOS开发的开源项目分享与协作&#xff0c;汇集了大量开…

ubuntu编译ijkplayer,支持rmvb以及mkv

1. 准备环境 sudo apt-get update apt install gcc yasm cmake python p7zip-full vim pkg-config autoconf automake build-essential dos2unix mercurial cmake-curse-gui -y apt-get -y --force-yes install libass-dev libtheora-dev libtool libva-dev libvdpau-dev libv…

Ardupilot开源无人机之Geek SDK进展2024

Ardupilot开源无人机之Geek SDK进展202501 1. 源由2. 状态3. TODO3.1 跟踪目标框3.2 onnxruntime版本3.3 CUDA 11.8版本3.4 pytorch v2.5.1版本3.5 Inference性能3.6 特定目标集Training 4. 参考资料 1. 源由 前期搭建《Ardupilot开源无人机之Geek SDK》&#xff0c;主要目的是…

《Spring Framework实战》3:概览

欢迎观看《Spring Framework实战》视频教程 Spring Framework 为基于现代 Java 的企业应用程序提供了全面的编程和配置模型 - 在任何类型的部署平台上。 Spring 的一个关键要素是应用程序级别的基础设施支持&#xff1a;Spring 专注于企业应用程序的 “管道”&#xff0c;以便…