前言
随着第七次人口普查的口号:大国点名、没你不行,官方已经公布出了第七次人口普查的结果。我们从管网获取到了第七次人口普查的数据。
相关依赖库
1'''
2相关依赖库
3'''
4# 数据提炼库
5
6import pandas as pd
7
8# 参数设置
9
10from pyecharts import options as opts
11
12# 地图
13
14from pyecharts.charts import Map
读取excel数据
1'''
2读取excel数据
3'''
4# pandas读取excel数据
5
6data_frame = pd.read_excel('usr/load/Python 集中营/第七次人口普查.xlsx', sheet_name=None)
7
8# 获取人口占比
9
10data = data_frame['各地区人口占比']
绘制分布图
1'''绘制分布图'''
2
3obj = (
4
5 # 初始化地图Map
6
7 Map(init_opts=opts.InitOpts(width="1500px", height="750px", theme='purple-passion'))
8
9 # 添加省份数据
10
11 .add("省份",
12
13 # 提取省份人口数据
14
15 [list(n) for n in zip(data['地区'], data['数量'])],
16
17 # 设置为中国地图
18
19 "china",
20
21 # 设置不显示红点
22
23 is_map_symbol_show=False,
24
25 )
26
27 # 设置全局参数
28
29 .set_global_opts(
30
31 # 标题
32
33 title_opts=opts.TitleOpts(title="第七次人口普查各地区人口数",
34 title_textstyle_opts=opts.TextStyleOpts(font_size=18),
35
36 # 设置标题居中
37
38 pos_left='center',
39
40 # 顶部距离5%
41
42 pos_top='5%'),
43
44 tooltip_opts=opts.TooltipOpts(is_show=True),
45
46 # 设置不展示图例
47
48 legend_opts=opts.LegendOpts(is_show=False),
49
50 visualmap_opts=opts.VisualMapOpts(max_=20000, # 显示最大值
51
52 is_piecewise=True, # 是否为分段型
53
54 range_text=['万人', ''], # 上下显示的文字
55
56 pos_left='25%', # 数据位置靠左20%
57 pos_top='65%', # 数据位置距离顶部60%
58
59 pieces=[{"min": 200, "max": 1000},
60
61 {"min": 1000, "max": 2000},
62
63 {"min": 2000, "max": 4000},
64
65 {"min": 4000, "max": 6000},
66
67 {"min": 6000, "max": 8000},
68
69 {"min": 8000, "max": 10000},
70
71 {"min": 10000}]
72
73 ),
74
75 ))
76
77# 生成html文件
78
79obj.render("第七次人口普查各地区人口数.html")