26 Pandas+Pyecharts | 中国高校及专业数据分析可视化
- 可视化系列
- 5天前
- 910热度
- 1评论
大家好,我是欧K~
高考刚刚落幕,本期利用 python 分析一下我国高校及专业数据,看看:高校办学类别有哪些、全国高校分布情况、本科/专科占比情况、985/211/双一流高校数量占比情况、985/211/双一流主要分布城市、高校开始最多的专业有哪些、国家特色专业数量最多的学校等等,希望对大家有所帮助,如有疑问或者需要改进的地方可以联系小编。
涉及到的库:
- Pandas — 数据处理
- Pyecharts — 数据可视化
1. 导入模块
import pandas as pd
from pyecharts.charts import Bar
from pyecharts.charts import Map
from pyecharts.charts import Pie
from pyecharts.charts import WordCloud
from pyecharts import options as opts
2. Pandas数据处理
2.1 读取数据
df_school = pd.read_csv('高校.csv',encoding='gbk')

df_professional = pd.read_csv('专业.csv',encoding='gbk')

3. Pyecharts数据可视化
3.1 全国高校分布地图
def get_map1():
m1 = (
Map()
.add('',
[list(z) for z in zip(df_school_count.index.tolist(), df_school_count.values.tolist())],
maptype='china',
is_map_symbol_show=False,
label_opts=opts.LabelOpts(is_show=False,color='red')
)
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
is_show=True,
max_ = 200,
pos_top='60%',
pos_left='10%',
),
tooltip_opts=opts.TooltipOpts(formatter='{b}:{c}'),
title_opts=opts.TitleOpts(title='1-全国高校分布地图',subtitle='-- 制图@公众号:Python当打之年 --',pos_top='2%',pos_left="2%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200',font_size=20))
)
)

3.2 全国高校分布城市地图

3.3 本科/专科占比
def get_pie1():
pie1 = (
Pie()
.add(
"",
[list(z) for z in zip(df_school_count.index.tolist(), df_school_count.values.tolist())],
radius=["30%", "60%"],
label_opts=opts.LabelOpts(formatter="{b}: {c}")
)
.set_global_opts(
title_opts=opts.TitleOpts(title='3-本科/专科占比',subtitle='-- 制图@公众号:Python当打之年 --',pos_top='2%',pos_left="2%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200',font_size=20)),
legend_opts=opts.LegendOpts( pos_top="5%"),
)
)

3.4 985/211/双一流高校数量占比

3.5 办学类别排行
def get_bar1():
bar1 = (
Bar()
.add_xaxis(df_school_count.index.tolist())
.add_yaxis("",df_school_count.values.tolist(),label_opts=opts.LabelOpts(position='right'))
.reversal_axis()
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
is_show=False,
max_ = 1000,
dimension=0,
range_color=range_color
),
title_opts=opts.TitleOpts(title='5-办学类别排行',subtitle='-- 制图@公众号:Python当打之年 --',pos_top='2%',pos_left="2%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200',font_size=20))
)
)

3.6 985/211/双一流高校数量占比
def get_bar2():
bar2 = (
Bar()
.add_xaxis(df_school_tmp_count.index.tolist())
.add_yaxis("",df_school_tmp_count.values.tolist())
.set_global_opts(
xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=30)),
visualmap_opts=opts.VisualMapOpts(
is_show=False,
max_ = 20,
dimension=1,
range_color=range_color
),
title_opts=opts.TitleOpts(title='6-985/211/双一流主要分布城市Top20',pos_top='2%',pos_left="2%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200',font_size=20))
)
)

3.7 专业数量Top20

3.8 专业数量Top20学校地图分布

3.9 国家特色专业数量Top20学校

3.10 国家特色专业词云
def get_wordcloud():
wordcloud = (
WordCloud()
.add("",
words,
word_size_range=[5, 50]
)
.set_global_opts(
legend_opts=opts.LegendOpts(is_show=False),
title_opts=opts.TitleOpts(title='10-国家特色专业词云',pos_top='2%',pos_left="2%",
title_textstyle_opts=opts.TextStyleOpts(color='#fff200',font_size=20)),
)
)
