Pandas+Pyecharts | 第七次人口普查数据分析可视化

科技   科技   2024-07-19 08:10   天津  
点击上方"蓝字",关注"Python当打之年"
后台回复"1",领取众多Python学习资料

大家好,我是欧K~

本期将利用Python分析「第七次全国人口普查数据」,看看:我国各地区分口分布、年龄构成、性别构成以及各地区搜教育程度情况等等,希望对大家有所帮助,如有疑问或者需要改进的地方可以联系小编。

  • 第七次全国人口普查结果:全国人口共141178万人,与2010年的133972万人相比,增加了7206万人,增长5.38%;年平均增长率为0.53%,比2000年到2010年的年平均增长率0.57%下降0.04个百分点。
  • 全国人口中,男性人口为723339956人,占51.24%;女性人口为688438768人,占48.76%。总人口性别比为1.0507。
  • 0—14岁人口占17.95%,15—59岁人口占比63.35%,60岁及以上人口占18.7%,65岁及以上人口占13.5%。
涉及到的库:
Pandas — 数据处理
Pyecharts — 数据可视化
1. 导入模块

import pandas as pd
from pyecharts.charts import Line
from pyecharts.charts import Bar
from pyecharts.charts import Pie
from pyecharts.charts import Map
from pyecharts.charts import PictorialBar
from pyecharts.charts import Sankey
from pyecharts.charts import Map3D
from pyecharts.globals import ChartType
from pyecharts.commons.utils import JsCode
from pyecharts import options as opts
import warnings
warnings.filterwarnings('ignore')


2. Pandas数据处理

2.1 读取数据 

df1 = pd.read_excel('./data/各地区15岁及以上人口平均受教育年限.xlsx')
df2 = pd.read_excel('./data/各地区每10万人口中拥有的各类受教育程度人数.xlsx')
df3 = pd.read_excel('./data/各地区人口.xlsx')
df4 = pd.read_excel('./data/各地区人口年龄构成.xlsx')
df5 = pd.read_excel('./data/各地区性别构成.xlsx')
df6 = pd.read_excel('./data/全国人口年龄构成.xlsx')
2.2 数据预览
各地区15岁及以上人口平均受教育年限:

各地区每10万人口中拥有的各类受教育程度人数:

各地区人口:

各地区人口年龄构成:

各地区性别构成:

全国人口年龄构成:


3. Pyecharts数据可视化

3.1 全国各省人口统计三维地图
def get_map3d():
    map3d = (
        Map3D()
        .add_schema(
            map3d_label=opts.Map3DLabelOpts(
                is_show=False
            ),
            emphasis_label_opts=opts.LabelOpts(is_show=False),
            light_opts=opts.Map3DLightOpts(
                main_shadow_quality='high',
                is_main_shadow=True,
                main_intensity=1,
                main_alpha=30,
            ),
            post_effect_opts=opts.Map3DPostEffectOpts(
                is_enable=True,
                is_ssao_enable=True,
                ssao_radius=1,
                ssao_intensity=1
            )
        )
        .add(
            series_name="",
            data_pair=new_area_data,
            type_=ChartType.BAR3D,
            shading="lambert",
        )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='1-全国各省人口统计三维地图',
            ),
            visualmap_opts=opts.VisualMapOpts(
                is_show=False,
                pos_left='10%',
                pos_bottom='10%',
                range_color=range_color
            ),
        )
    )
    return map3d
3.2 全国各地区人口数量分布地图
def get_map():
    m = (
        Map()
        .add('',
             data,
             'china',
            )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='2-全国各地区人口数量分布地图',
            ),
            legend_opts=opts.LegendOpts(is_show=False),
            visualmap_opts=opts.VisualMapOpts(
                range_color=range_color,
                pos_bottom='10%',
                pos_left='20%'
            ),
            
        )
    )
    return m

3.3 全国人口性别比例

3.4 全国总人口性别和地区分布桑基图
def get_sankey():
    sankey = (
        Sankey()
        .add(
            "sankey",
            nodes,
            links,
            pos_top='10%',
            node_width=50,
            node_gap=10,
            node_align='justify',
            focus_node_adjacency=True,
            linestyle_opt=opts.LineStyleOpts(opacity=0.6, curve=0.5, color="source"),
        )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='4-全国总人口性别和地区分布'
            )
        )
    )
    return sankey

3.5 全国各地区人口年龄构成

3.6 全国年龄人口占比饼图
def get_pie():
    pie = (
        Pie()
        .add(
            "",
            [list(z) for z in zip(x_data, y_data)],
        )
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='6-全国年龄人口占比饼图',
            ),
            visualmap_opts=opts.VisualMapOpts(
                pos_bottom='10%',
                pos_left='10%',
                is_show=False,
                range_color=range_color
            )
        )
    )
    return pie

3.7 全国各地区每10万人口中拥有的各类受教育程度人数占比

3.8 第六_第七次人口普查各地区15岁及以上人口平均受教育年限

4. 源码
源码下载 | Python可视化系列文章资源(源码+数据)

👉 公众号后台回复【可视化项目源码】获取全部代码+数据

在线运行地址(代码)https://www.heywhale.com/home/column/60e2740e3aeb9c0017b967a2

END

以上就是本期为大家整理的全部内容了,喜欢的朋友可以点赞、点在看也可以分享让更多人知道。

 往期推荐 

源码下载 | Python可视化系列文章资源(源码+数据)

爬虫 | Python爬取某平台杭州二手房数据

爬虫 | Python搞定软科中国大学排名

爬虫 | Python爬取胡润百富榜数据

爬虫 | Python爬取微博实时热搜榜信息

爬虫 | Python爬取B站榜排行榜信息

可视化 | Flask+Mysql+Echarts 豆瓣电影Top250数据分析系统

Pandas+Pyecharts | 杭州二手房数据分析可视化

Pandas+Pyecharts | 当当网畅销图书榜单数据分析可视化

Pandas+Pyecharts | 海南旅游攻略数据分析可视化

Pandas+Pyecharts | 全国海底捞门店数据分析可视化

Pandas+Pyecharts | 京东某商品销量数据分析可视化

Pandas+Pyecharts | 奥迪汽车销量数据分析可视化

Pandas+Pyecharts | 剧荒了?用Python找找最近的热播好剧!

Pandas+Pyecharts | 2023年胡润百富榜数据分析可视化

Pandas+Pyecharts | 2023软科中国大学排名分析可视化

Pandas+Pyecharts | 成都大运会奖牌数据分析可视化

Pandas+Pyecharts | 电子产品销售数据分析可视化+用户RFM画像

Pandas+Pyecharts | 北京近五年历史天气数据可视化

Pandas+Pyecharts | 中国高校及专业数据分析可视化

Pandas+Pyecharts | 新冠疫情数据动态时序可视化

Pandas+Pyecharts | 全国吃穿住行消费排行榜,最‘抠门’的地区居然是北京!!!

Pandas+Pyecharts | 2022世界500强数据分析可视化

Pandas+Pyecharts | 快手APP全国大学生用户数据分析可视化

Pandas+Pyecharts | 上海市餐饮数据分析可视化

Pandas+Pyecharts | 山东省高考考生数据分析可视化

Pandas+Pyecharts | 20000+天猫订单数据可视化

Pandas+Pyecharts | 40000+汽车之家数据分析可视化

Pandas+Pyecharts | 广州市已成交房源信息数据可视化

Pandas+Pyecharts | 某直聘平台招聘信息数据可视化

可视化 | 再分享一套Flask+Pyecharts可视化模板二

可视化 | 分享一套Flask+Pyecharts可视化模板

可视化 | Python直观展示中国代表团冬奥会荣耀时刻

用Python分析了3W+《独行月球》影评数据,看看观众们怎么说~

Matplotlib | 世界足球俱乐部排名可视化

40000+条考研信息数据可视化(学校、专业分数分布)

【在看】的您又变好看了呢

Python当打之年
当打之年,专注于各领域Python技术,量的积累,质的飞跃。后台回复:【可视化项目源码】可获取可视化系列文章源码和数据
 最新文章