python数据可视化之地图绘制案例分析

在数据可视化领域,地理信息的展示有着无可替代的价值。本篇笔记将通过Python的pyecharts库实现一个中国直辖市GDP数据的地图分布可视化示例,帮助读者了解如何利用该工具进行地图数据渲染。

1. 导入所需模块

首先,我们需要导入pyecharts库中的相关组件:

如何安装请看上一篇博客pyhon数据可视化之折线图案例讲解

python 复制代码
from pyecharts.charts import Map
from pyecharts.options import ToolboxOpts, TitleOpts

Map是用于创建地图图表的对象,而ToolboxOptsTitleOpts分别用于配置图表的工具箱选项和标题选项。

2. 初始化地图对象与数据准备

定义一个Map对象,并准备各直辖市及其对应的GDP数值数据:

复制代码
a = Map()

# 数据集:直辖市名称与其对应的GDP数据(单位:亿元)
date = [
    ("北京市", 31723.1),
    ("上海市", 33019.23),
    ("天津市", 12252.61),
    ("重庆市", 22243.88)
]

3. 设置全局属性

接下来设置图表的基本样式和交互功能:

复制代码
a.set_global_opts(
    # 标题配置
    title_opts=TitleOpts(
        title="全国城市GDP(单位亿元)统计地图",  # 标题内容
        pos_bottom="1%",  # 标题距页面底部距离为1%
        pos_left="center"  # 标题水平居中显示
    ),
    
    # 工具箱配置
    toolbox_opts=ToolboxOpts(is_show=True)  # 启用并显示工具箱
)

4. 绑定数据到地图

现在将GDP数据绑定到地图上,使用的是中国的省份级地图:

复制代码
a.add(
    "地图统计",  # 系列名称
    date,  # 数据列表
    "china"  # 地图区域为中国(省份级)
)

5. 渲染生成HTML文件

最后一步是将绘制好的地图图表渲染成HTML文件以便查看和分享:

复制代码
a.render()  # 默认会在当前目录下生成一个HTML文件

完整代码如下

python 复制代码
# 导入PyEcharts库中的Map图表模块以及全局配置选项模块
from pyecharts.charts import Map
from pyecharts.options import ToolboxOpts, TitleOpts

# 初始化一个Map图表对象,用于绘制中国地图分布数据
a = Map()

# 定义直辖市及其对应的GDP数据
date = [
    ("北京市", 31723.1),
    ("上海市", 33019.23),
    ("天津市", 12252.61),
    ("重庆市", 22243.88)
]

# 设置图表的全局属性,包括标题和工具箱
a.set_global_opts(
    # 设置图表标题,内容为"全国城市GDP(单位亿元)统计地图"
    title_opts=TitleOpts(title="全国城市GDP(单位亿元)统计地图",
                         # 标题距离页面底部的距离设定为1%
                         pos_bottom="1%",
                         # 标题水平居中显示
                         pos_left="center"),

    # 启用并显示工具箱,提供交互功能如保存、缩放等
    toolbox_opts=ToolboxOpts(is_show=True)
)

# 将上述GDP数据添加到地图中,地区名称对应数据值
a.add(
    # 系列名称为"地图统计"
    "地图统计",
    # 数据列表
    date,
    # 使用的地图区域为中国(省份级)
    "china"
)

# 渲染图表并生成HTML文件展示结果,文件名默认与图表对象关联
a.render()

在html页面中找到浏览器图标点击运行

运行结果如下:

说明:工具箱中的按钮可以进行操作;地图可以放大缩小。读者自行体验。

相关推荐
Jay Kay4 分钟前
ReLU 新生:从死亡困境到强势回归
人工智能·数据挖掘·回归
Blossom.11815 分钟前
使用Python和Flask构建简单的机器学习API
人工智能·python·深度学习·目标检测·机器学习·数据挖掘·flask
生信学术纵览19 分钟前
中科院1区顶刊|IF14+:多组学MR联合单细胞时空分析,锁定心血管代谢疾病的免疫治疗新靶点
数据挖掘·数据分析
Love__Tay1 小时前
【学习笔记】Python金融基础
开发语言·笔记·python·学习·金融
有风南来2 小时前
算术图片验证码(四则运算)+selenium
自动化测试·python·selenium·算术图片验证码·四则运算验证码·加减乘除图片验证码
wangjinjin1802 小时前
Python Excel 文件处理:openpyxl 与 pandas 库完全指南
开发语言·python
壹氿2 小时前
Supersonic 新一代AI数据分析平台
人工智能·数据挖掘·数据分析
Yxh181377845543 小时前
抖去推--短视频矩阵系统源码开发
人工智能·python·矩阵
Humbunklung3 小时前
PySide6 GUI 学习笔记——常用类及控件使用方法(多行文本控件QTextEdit)
笔记·python·学习·pyqt
火车叼位4 小时前
使用 uv 工具在 Windows 系统快速下载安装与切换 Python
python