【可视化】2024中国大学排行榜可视化分析
创作时间:
作者:
@小白创作中心
【可视化】2024中国大学排行榜可视化分析
引用
CSDN
1.
https://blog.csdn.net/m0_38065162/article/details/140363528
本文旨在利用Python中的pyecharts、pandas库对软科2024中国大学排行榜进行分析,并进行可视化展示。
相关库简介
pyecharts是一个基于 Python 的数据可视化库,用于生成精美的图表。它是对百度的 Echarts 的封装,提供了简单易用的接口,可以创建多种类型的图表,如折线图、柱状图、饼图、散点图、地图等。
pyecharts提供了多个模块,每个模块用于创建不同类型的图表:
- Line:折线图
- Bar:柱状图
- Pie:饼图
- Scatter:散点图
- Map:地图
- HeatMap:热力图
- Geo:地理坐标图
pandas是一个用于数据操作和分析的开源 Python 库,提供了高性能、易于使用的数据结构和数据分析工具。pandas基于NumPy库构建,特别适用于处理表格数据(类似于电子表格中的数据)。主要功能:
- 数据读取与写入:从 CSV、Excel、SQL 等格式读取数据,写入数据到这些格式。
- 数据选择和过滤:基于标签、位置或条件选择和过滤数据。
- 数据变换:如数据重塑、合并、连接和分组操作。
- 统计分析:提供常见的统计功能,如描述性统计、频率表、相关性分析等。
- 时间序列分析:处理时间序列数据,支持频率转换、滑动窗口计算等。
安装pyecharts、pandas库
pip install pyecharts
pip install pandas
代码实现
导入相关库
# 导入相关库
import pandas as pd
from pyecharts.charts import Bar
from pyecharts.charts import Map
from pyecharts.charts import Pie
from pyecharts import options as opts
加载数据
# 数据读取
# 软科爬取的2024年主榜名单
df_school = pd.read_csv('university_rankings.csv')
df_school.head(20)
本次使用数据来源于软科2024年中国大学排行榜主榜,爬取过程会在下篇文章介绍。数据示例:
绘制饼图–2024中国大学各类型占比
# 定义绘制饼图的函数
def get_pie1(df_type_count):
pie1 = (
Pie(init_opts=opts.InitOpts(theme='dark', bg_color='#0d0735')) # 设置主题和背景色
.add(
"",
[list(z) for z in zip(df_type_count['类型'].tolist(), df_type_count['学校数量'].tolist())],
radius=["40%", "70%"], # 设置饼图为环状饼图
label_opts=opts.LabelOpts(
is_show=True,
position="outside", # 标签位置
formatter="{b}: {d}%", # 显示百分比
font_size=12, # 标签字体大小
)
)
.set_colors(['#e94e77', '#f4a261', '#2a9d8f', '#264653', '#e9c46a']) # 定义饼图颜色
.set_global_opts(
title_opts=opts.TitleOpts(
title='2024中国大学各类型占比',
subtitle='@公众号:AI拾贝',
pos_top='1%',
pos_left="1%",
),
)
)
return pie1
绘制柱状图–2024中国大学综合排名TOP20
# 定义绘制柱状图的函数
def get_bar1(df_top20):
bar = (
Bar(init_opts=opts.InitOpts(theme='dark', bg_color='#0d0735')) # 设置背景颜色为深蓝色
.add_xaxis(df_top20['中文名'].tolist()) # 将中文名作为横坐标
.add_yaxis('', df_top20['分数'].tolist()) # 分数作为纵坐标
.reversal_axis() # 交换 x 和 y 轴
.set_global_opts(
title_opts=opts.TitleOpts(
title='2024中国大学综合排名TOP20',
subtitle='@公众号:AI拾贝',
pos_top='1%',
pos_left="1%",
title_textstyle_opts=opts.TextStyleOpts(color='#FFFFFF') # 设置标题字体颜色为白色
),
visualmap_opts=opts.VisualMapOpts(is_show=False),
xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(color='#FFFFFF')), # 设置x轴标签颜色为白色
yaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(color='#FFFFFF')) # 设置y轴标签颜色为白色
)
)
return bar
绘制玫瑰图–2024中国各省地区大学数量分布
# 定义绘制玫瑰图的函数
def get_rose_chart(df_count):
pie = (
Pie(init_opts=opts.InitOpts(bg_color='#0d0735')) # 设置背景色
.add(
"",
[list(z) for z in zip(df_count['省份'], df_count['学校数量'])],
radius=["15%", "80%"], # 内外径
rosetype="area" # 玫瑰图类型
)
.set_global_opts(
title_opts=opts.TitleOpts(
title='2024中国各省地区大学数量分布',
subtitle='@公众号:AI拾贝',
pos_top='1%',
pos_left="1%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200', font_size=20)
),
legend_opts=opts.LegendOpts(is_show=False),
)
.set_series_opts(
label_opts=opts.LabelOpts(is_show=True, position="outside", formatter="{b}: {c} 所"),
)
)
return pie
绘制地图–全国高校分布地图
# 定义绘制地图的函数
def get_map1(df_school_count):
m1 = (
Map(init_opts=opts.InitOpts(theme='dark', width='1000px', height='600px', bg_color='#0d0735'))
.add('',
[list(z) for z in zip(df_school_count['省份'].tolist(), df_school_count['学校数量'].tolist())],
maptype='china',
is_map_symbol_show=True, # 显示地图符号
label_opts=opts.LabelOpts(is_show=True, color='black'), # 显示标签,字体颜色为黑色
itemstyle_opts=opts.ItemStyleOpts(
border_color='#fff', # 行政区划线颜色
border_width=1 # 行政区划线宽度
)
)
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
is_show=True,
max_=50,
series_index=0,
pos_top='60%',
pos_left='10%',
# 使用默认的颜色范围
range_color=None
),
tooltip_opts=opts.TooltipOpts(formatter='{b}:{c}'),
title_opts=opts.TitleOpts(
title='全国高校分布地图',
subtitle='@公众号:AI拾贝',
pos_top='2%',
pos_left="2%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200', font_size=20)
)
)
)
return m1
由于篇幅有限,仅展示下绘图函数,具体数据处理的过程,感兴趣的同学可以关注公众号回复关键词获取。
结果展示
饼图–2024中国大学各类型占比
柱状图–2024中国大学综合排名TOP20
玫瑰图–2024中国各省地区大学数量分布
地图–全国高校分布地图
如上,直接在notbook中展示地图数据。如果想保存成html文件,只需要把render_notebook()函数,换成render()即可。
热门推荐
南昌六大景点全攻略:从滕王阁到天香园,领略千年古都魅力
福银高铁已获审批,确定走5省28地,长沙段已开工
餐桌花盘的风水布局:从摆放位置到花色选择的全方位指南
2025春晚搭档阵容揭秘:任鲁豫继续C位!
神秘的天河石在哪儿?寓意和象征是什么?
神秘的天河石:产地、寓意与象征全解析
春卷在现代饮食中的地位与影响
八月十五中秋节,除了吃月饼,这5样食物也要准备,家宴更有档次
冬季青蟹塘水体管理技术指南
榆林盐碱地里养出“南方蟹”:科技创新让荒地变“聚宝盆”
科技赋能青蟹养殖:从水质管理到高产丰收
面包虫的养殖方法
平遥古城摄影攻略:捕捉晋风晋韵的绝美瞬间
五台山和灵丘空中草原:山西必打卡的绝美自然景观
皇城相府:一座活着的明清古城
旅居彩云南丨走进西双版纳热带雨林 开启一场绿色的探秘之旅
家和万事兴:家庭和谐的心理学秘诀
老年人头痛频发?揭示生活习惯与健康问题的潜在威胁!
双十一买完液晶电视,这些维护小技巧你必须知道!
索尼电视如何用USB修复故障?一文教你轻松解决
掌握这些维修技巧,轻松搞定液晶电视故障!
从《竹声萧萧》到家居装饰:挂轴里的文化密码
探索惠州之旅:三天游历古韵海景与文化遗迹的详尽指南
烘焙小白必学:小麦粉大揭秘!
阳台承重不足?这些方法让你家更安全!
苏轼在金山寺:《自题金山画像》背后的故事
金山寺水陆法会:千年佛事的庄严传承
探访千年古刹金山寺:从水漫金山到文化圣地
金山寺:千年古刹的文化瑰宝
金山寺:千年古刹的文化传承与现代新生