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

文章目录

  • [🏳️‍🌈 1. 导入模块](#🏳️‍🌈 1. 导入模块)
  • [🏳️‍🌈 2. Pandas数据处理](#🏳️‍🌈 2. Pandas数据处理)
    • [2.1 读取数据](#2.1 读取数据)
    • [2.2 数据预览](#2.2 数据预览)
  • [🏳️‍🌈 3. Pyecharts数据可视化](#🏳️‍🌈 3. Pyecharts数据可视化)
    • [3.1 全国各省人口统计三维地图](#3.1 全国各省人口统计三维地图)
    • [3.2 全国各地区人口数量分布地图](#3.2 全国各地区人口数量分布地图)
    • [3.3 全国人口性别比例](#3.3 全国人口性别比例)
    • [3.4 全国总人口性别和地区分布桑基图](#3.4 全国总人口性别和地区分布桑基图)
    • [3.5 全国各地区人口年龄构成](#3.5 全国各地区人口年龄构成)
    • [3.6 全国年龄人口占比饼图](#3.6 全国年龄人口占比饼图)
    • [3.7 全国各地区每10万人口中拥有的各类受教育程度人数占比](#3.7 全国各地区每10万人口中拥有的各类受教育程度人数占比)
    • [3.8 第六_第七次人口普查各地区15岁及以上人口平均受教育年限](#3.8 第六_第七次人口普查各地区15岁及以上人口平均受教育年限)
  • [🏳️‍🌈 4. 可视化项目源码+数据](#🏳️‍🌈 4. 可视化项目源码+数据)

大家好,我是 👉【Python当打之年(点击跳转)】

本期利用 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. 导入模块

python 复制代码
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 读取数据

python 复制代码
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 全国各省人口统计三维地图

python 复制代码
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 全国各地区人口数量分布地图

python 复制代码
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 全国总人口性别和地区分布桑基图

python 复制代码
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 全国各地区人口年龄构成

python 复制代码
def get_bar():
    bar = (
        Bar()
        .add_xaxis(x_data)
        .add_yaxis("销量",y_data1)
        .set_global_opts(
            title_opts=opts.TitleOpts(
                title='5-奥迪全系销量及裸车价格',
                pos_top='1%',
                pos_left="center",
                title_textstyle_opts=opts.TextStyleOpts(color='#00838F',font_size=25),
            ),
        )
    )
    return bar

3.6 全国年龄人口占比饼图

python 复制代码
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万人口中拥有的各类受教育程度人数占比

python 复制代码
def get_radar():
    radar = (
        Radar(init_opts=opts.InitOpts(width='1000px', height='600px',bg_color='#CFD8DC')chema(
            schema=schemas,
            splitarea_opt=opts.SplitAreaOpts(
                is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)
            ),
            textstyle_opts=opts.TextStyleOpts(color="#263238"),
        )
        .add(
            series_name="",
            data=[datas],
            linestyle_opts=opts.LineStyleOpts(color="#CD0000"),
        )
        .set_global_opts(
             title_opts=opts.TitleOpts(
                title='7-各项指标平均评分雷达图',
                pos_top='1%',
                pos_left="center",
                title_textstyle_opts=opts.TextStyleOpts(color='#00838F',font_size=25),
            ),
        )
    )
    return radar

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

🏳️‍🌈 4. 可视化项目源码+数据

点击跳转:【全部可视化项目源码+数据】


以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏 也可以分享 (注明出处)让更多人知道。

相关推荐
三兔测序学社1 小时前
【零代码生信分析】RNA-seq中级分析8-差异基因集在L2S2网站进行【肿瘤药物】筛选分析
数据分析
工业HMI实战笔记4 小时前
皮革加工HMI:制革鞣制的化工参数界面
信息可视化·设计规范·设计语言
追风少年ii8 小时前
六大空间转录组平台全面对比:Visium、Visium HD、Stereo-seq、Xenium、Atera 与 CosMx
数据分析·空间·单细胞
roman_日积跬步-终至千里10 小时前
【数据建模入门】从一家小店看懂数仓与机器学习:先理业务,再串技术
数据仓库·人工智能·机器学习·数据分析·数据建模
IT研究室11 小时前
最新大数据毕业设计选题推荐-基于大数据的Medicaid GLP-1药物利用与支出数据可视化分析-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·课程设计
雨晨源码(同名B站)11 小时前
深度学习毕业设计选题推荐:基于卷积神经网络的无人机影像建筑裂缝裂纹检测分类与分割系统(LeNet-5 二分类模型、GCN-Res50分割模型)
深度学习·信息可视化·分类·cnn·毕业设计·无人机·课程设计
第九序言T20 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
钱工的门窗技术笔记21 小时前
室内极窄全景移门的支承路径与预留接口:轨道形式、型材壁厚口径与验收边界
物联网·架构·数据分析
龙亘川21 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
quantdash_cc1 天前
如何验证历史行情的交易日期是否完整覆盖研究区间?
python·数据分析·pandas·量化交易·股票数据·quantdash