【数据可视化-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 Fakerdf = 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 高校类型与层次分析图
接下来,我们利用Pie和Bar组件来分析高校的类型与层次。通过饼图展示公办与民办高校的占比,通过条形图展示本科与专科高校的分布情况。这些图表不仅能够帮助我们了解高校的构成,还能揭示不同类型与层次高校之间的差异。
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 全国不同大学隶属情况
最后,我们利用Scatter或Graph组件分析城市与高校之间的关联。通过散点图展示各城市高校的数量与分布,或者通过关系图展示城市与高校之间的隶属关系。
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 高校的坐标点位分析
可以使用百度的地名地址解析接口,将高校的地址转成经纬度,经纬度转成热力图如下;

四、结论与展望
通过本次全国高校数据集的可视化探索,我们不仅直观地展示了高校的地理分布、类型与层次、标签情况以及与城市的关联,还深刻理解了数据可视化的力量。它让我们能够以前所未有的方式洞察数据背后的故事,为教育决策提供了有力的支持。
相关文章:
【数据可视化-11】全国大学数据可视化分析
🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…...
声音是如何产生的
一、音频概述 RTMP中一般音频采用aac编码,采样率为44100HZ, 每帧1024采样,帧率43,23.2ms一帧 RTC中一般音频采用opus编码,采样率为48000HZ,每帧480采样,帧率100,10ms一帧 通道数(c…...
梯度下降方法
2.5 梯度下降方法介绍 学习目标 掌握梯度下降法的推导过程知道全梯度下降算法的原理知道随机梯度下降算法的原理知道随机平均梯度下降算法的原理知道小批量梯度下降算法的原理 上一节中给大家介绍了最基本的梯度下降法实现流程,本节我们将进一步介绍梯度下降法的详细…...
web3与AI结合-Sahara AI 项目介绍
背景介绍 Sahara AI 于 2023 年创立,是一个 "区块链AI" 领域的项目。其项目愿景是,利用区块链和隐私技术将现有的 AI 商业模式去中心化,打造公平、透明、低门槛的 “协作 AI 经济” 体系,旨在重构新的利益分配机制以及…...
Nginx——反向代理(三/五)
目录 1.Nginx 反向代理1.1.Nginx 反向代理概述1.2.Nginx 反向代理的配置语法1.2.1.proxy_pass1.2.2.proxy_set_header1.2.3.proxy_redirect 1.3.Nginx 反向代理实战1.4.Nginx 的安全控制1.4.1.如何使用 SSL 对流量进行加密1.4.2.Nginx 添加 SSL 的支持1.4.3.Nginx 的 SSL 相关指…...
环动科技平均售价波动下滑:大客户依赖明显,应收账款周转率骤降
《港湾商业观察》施子夫 2024年12月18日,浙江环动机器人关节科技股份有限公司(以下简称,环动科技)的上市审核状态变更为“已问询”,公司在11月25日科创板IPO获上交所受理,独家保荐机构为广发证券。 此次环…...
源网荷储:构建智慧能源生态的关键方案设计
一、技术融合基石 多元能源采集技术:在 “源” 端,除了常见的光伏、风电、火电,生物质能发电、地热能利用技术也应纳入考量。例如在有丰富生物质原料的农村地区,小型生物质发电厂可实现废物利用与供电双赢;地热资源丰…...
进程间通讯
简介: 进程间通讯方式有: 1.内存映射(mmap): 使用mmap函数将磁盘空间映射到内存 2.管道 3.信号 4.套接字(socket) 5.信号机制 通过进程中kill函数,去给另一个函数发送信号&a…...
STM32-笔记33-OLED实验
实验目的 驱动 OLED 屏幕,显示点、线、字符、字符串、汉字、图片等内容。 项目实现-OLED通讯协议 复制项目文件19-串口打印功能 重命名为47-OLED实验 打开项目文件 加载文件 代码书写顺序: oled.c #include "oled.h"//初始化oled的gpio …...
低空管控技术-无人机云监视技术详解!
一、无人机监听技术的原理 无人机监听技术主要依赖于射频(RF)探测、光学和红外传感器等技术手段。这些技术通过被动监听和监测无人机与飞行员(或控制器)之间的通信链路传输,以确定无人机的位置,甚至在某些…...
RedisTemplate执行lua脚本及Lua 脚本语言详解
使用RedisTemplate执行lua脚本 在开发中,我们经常需要与Redis数据库进行交互,而Redis是一个基于内存的高性能键值存储数据库,它支持多种数据结构,并提供了丰富的命令接口。在某些情况下,我们可能需要执行一些复杂的逻…...
基于springboot的网上商城购物系统
作者:学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等 文末获取“源码数据库万字文档PPT”,支持远程部署调试、运行安装。 目录 项目包含: 开发说明: 系统功能: 项目截图…...
服务器攻击方式有哪几种?
随着互联网的快速发展,网络攻击事件频发,已泛滥成互联网行业的重病,受到了各个行业的关注与重视,因为它对网络安全乃至国家安全都形成了严重的威胁。面对复杂多样的网络攻击,想要有效防御就必须了解网络攻击的相关内容…...
【Unity3D】AB包加密(AssetBundle加密)
加密前: 加密后,直接无法加载ab,所以无法正常看到ab内容。 using UnityEngine; using UnityEditor; using System.IO; public static class AssetBundleDemoTest {[MenuItem("Tools/打包!")]public static void Build(){//注意:St…...
【FTP 协议】FTP主动模式
一、测试工具 服务器:FileZilla_Server-cn-0_9_60_2.exe 中文版本 客户端:FileZilla_3.66.5_win64 客户端IP: 192.168.9.186 服务端 IP: 192.168.9.161 在客户端请求PORT之前,抓包测试的结果跟被动模式流程相同。 二、客户端主动模式命令…...
十五、Vue 响应接口
文章目录 一、响应式系统基础什么是响应式系统响应式数据的声明与使用二、响应式原理深入Object.defineProperty () 方法的应用(Vue2)Proxy 对象的应用(Vue3)三、响应式接口之 ref 和 reactive(Vue3)ref 函数的使用reactive 函数的使用四、计算属性(computed)作为响应式…...
至强6搭配美光CZ122,证明CXL可以提高生成式AI的性能表现
最近发现了英特尔官网公布的一项最新测试报告,报告显示,将美光的CZ122 CXL内存模块放到英特尔至强6平台上,显著提升了HPC和AI工作负载的内存带宽,特别是在采用基于软件的交错配置(interleave configuration)…...
一文理解ssh,ssl协议以及应用
在使用基于密钥的认证方式的时候,私钥的位置一定要符合远程服务器规定的位置,否则找不到私钥的位置会导致建立ssh连接失败 SSH 全称是 “Secure Shell”,即安全外壳协议。 它是一种网络协议,用于在不安全的网络中安全地进行远程登…...
电子应用设计方案87:智能AI收纳箱系统设计
智能 AI 收纳箱系统设计 一、引言 智能 AI 收纳箱系统旨在为用户提供更高效、便捷和智能的物品收纳与管理解决方案,通过融合人工智能技术和创新设计,提升用户的生活品质和物品整理效率。 二、系统概述 1. 系统目标 - 实现物品的自动分类和整理…...
BloombergGPT: A Large Language Model for Finance——面向金融领域的大语言模型
这篇文章介绍了BloombergGPT,一个专门为金融领域设计的大语言模型(LLM)。以下是文章的主要内容总结: 背景与动机: 大语言模型(如GPT-3)在多个任务上表现出色,但尚未有针对金融领域的…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
