
在数据分析中,地图是一种非常直观的可视化工具,能够帮助我们更好地理解数据在地理空间上的分布情况。无论是展示销售数据、人口分布、还是疫情传播,地图都能提供一目了然的信息。本文将详细介绍如何使用Pyecharts绘制地图,适合数据分析小白入门。
地图在数据分析中的应用非常广泛,以下是一些常见的应用场景:
Pyecharts是一个基于Echarts的Python可视化库,能够轻松生成各种精美的图表。Echarts是百度开源的一个数据可视化工具,支持多种图表类型,包括折线图、柱状图、饼图、地图等。Pyecharts使得在Python中使用Echarts变得非常简单。
在开始之前,我们需要先安装Pyecharts。可以通过以下命令安装:
pip install pyecharts
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg
pip install echarts-china-misc-pypkg
from pyecharts import options as opts
from pyecharts.charts import Map
地图数据通常是一个包含地区名称和对应数值的列表。例如:
data = [("北京市", 100), ("上海市", 200), ("广东省", 300), ("四川省", 400), ("陕西省", 500)]
接下来,我们创建一个地图对象,并设置地图类型为“china”:
map_chart = Map()
map_chart.add("示例地图", data, "china"
,zoom=1.5 # 设置缩放
,center=[100, 36] # 设置默认中心位置
,is_roam=False # 禁用缩放 拖拽
)
map_chart.render_notebook()
为了让地图更加美观,我们可以设置一些全局配置,例如标题、视觉映射等:
map_chart.set_global_opts(
title_opts=opts.TitleOpts(title="中国地图示例"),
visualmap_opts=opts.VisualMapOpts(max_=500)
)
map_chart.render_notebook()
最后,我们还可以将地图渲染为HTML文件:
map_chart.render("china_map.html")
运行上述代码后,会在当前目录下生成一个名为china_map.html的文件。打开这个文件,你就可以看到一个交互式的中国地图,鼠标悬停在各个省份上时,会显示对应的数值。
为了让地图更加精美,我们可以从以下几个方面进行优化:
通过设置visualmap_opts中的is_piecewise=True,我们可以使用分段颜色来展示数据:
map_chart.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
is_piecewise=True,
pieces=[
{"min": 0, "max": 100, "label": "0-100", "color": "#FFE4E1"},
{"min": 101, "max": 200, "label": "101-200", "color": "#FF7F50"},
{"min": 201, "max": 300, "label": "201-300", "color": "#FF4500"},
{"min": 301, "max": 400, "label": "301-400", "color": "#FF0000"},
{"min": 401, "max": 500, "label": "401-500", "color": "#8B0000"},
]
)
)
Pyecharts还支持3D地图,可以通过Map3D图表来启用:
from pyecharts.charts import Map3D
example_data = [
[[119.107078, 36.70925, 1000], [116.587245, 35.415393, 1000]],
[[117.000923, 36.675807], [120.355173, 36.082982]],
[[118.047648, 36.814939], [118.66471, 37.434564]],
[[121.391382, 37.539297], [119.107078, 36.70925]],
[[116.587245, 35.415393], [122.116394, 37.509691]],
[[119.461208, 35.428588], [118.326443, 35.065282]],
[[116.307428, 37.453968], [115.469381, 35.246531]],
]
(Map3D()
.add_schema(
maptype="山东",
itemstyle_opts=opts.ItemStyleOpts(
color="rgb(5,101,123)",
opacity=1,
border_width=0.8,
border_color="rgb(62,215,213)",
),
light_opts=opts.Map3DLightOpts(
main_color="#fff",
main_intensity=1.2,
is_main_shadow=False,
main_alpha=55,
main_beta=10,
ambient_intensity=0.3,
),
view_control_opts=opts.Map3DViewControlOpts(center=[-10, 0, 10]),
post_effect_opts=opts.Map3DPostEffectOpts(is_enable=False),
)
.add(
series_name="",
data_pair=example_data,
type_=ChartType.LINES3D,
effect=opts.Lines3DEffectOpts(
is_show=True,
period=4,
trail_width=3,
trail_length=0.5,
trail_color="#f00",
trail_opacity=1,
),
linestyle_opts=opts.LineStyleOpts(is_show=False, color="#fff", opacity=0),
)
.set_global_opts(title_opts=opts.TitleOpts(title="Map3D-Lines3D"))
.render("map3d_with_lines3d.html")
)
通过设置map_style,我们可以自定义地图的样式,例如背景颜色、边界颜色等:
map_chart.set_series_opts(
label_opts=opts.LabelOpts(is_show=False),
itemstyle_opts=opts.ItemStyleOpts(color="blue", border_color="black",area_color="green")
)
数据可视化是数据分析师需要掌握的重要技能,也是CDA数据分析师一级的重要考点,如果你想实操一下自己的可视化技能。
相信你已经掌握了如何使用Pyecharts绘制地图的基本方法。地图作为一种强大的数据可视化工具,能够帮助我们更好地理解数据在地理空间上的分布情况。通过不断优化地图的样式和交互效果,我们可以让数据展示更加生动和直观。
希望这篇文章能够帮助你在数据分析的道路上更进一步!如果你有任何问题或建议,欢迎在评论区留言讨论。
随着各行各业进行数字化转型,数据分析能力已经成了职场的刚需能力,这也是这两年CDA数据分析师大火的原因。和领导提建议再说“我感觉”“我觉得”,自己都觉得心虚,如果说“数据分析发现……”,肯定更有说服力。想在职场精进一步还是要学习数据分析的,统计学、概率论、商业模型、SQL,Python还是要会一些,能让你工作效率提升不少。备考CDA数据分析师的过程就是个自我提升的过程。
CDA 考试官方报名入口:https://www.cdaglobal.com/pinggu.html
推荐学习:https://edu.cda.cn/goods/show/3243?targetId=5333&preview=0
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在 “神经网络与卡尔曼滤波融合” 的理论基础上,Python 凭借其丰富的科学计算库(NumPy、FilterPy)、深度学习框架(PyTorch、T ...
2025-10-23在工业控制、自动驾驶、机器人导航、气象预测等领域,“状态估计” 是核心任务 —— 即从含噪声的观测数据中,精准推断系统的真 ...
2025-10-23在数据分析全流程中,“数据清洗” 恰似烹饪前的食材处理:若食材(数据)腐烂变质、混杂异物(脏数据),即便拥有精湛的烹饪技 ...
2025-10-23在人工智能领域,“大模型” 已成为近年来的热点标签:从参数超 1750 亿的 GPT-3,到万亿级参数的 PaLM,再到多模态大模型 GPT-4 ...
2025-10-22在 MySQL 数据库的日常运维与开发中,“更新数据是否会影响读数据” 是一个高频疑问。这个问题的答案并非简单的 “是” 或 “否 ...
2025-10-22在企业数据分析中,“数据孤岛” 是制约分析深度的核心瓶颈 —— 用户数据散落在注册系统、APP 日志、客服记录中,订单数据分散 ...
2025-10-22在神经网络设计中,“隐藏层个数” 是决定模型能力的关键参数 —— 太少会导致 “欠拟合”(模型无法捕捉复杂数据规律,如用单隐 ...
2025-10-21在特征工程流程中,“单变量筛选” 是承上启下的关键步骤 —— 它通过分析单个特征与目标变量的关联强度,剔除无意义、冗余的特 ...
2025-10-21在数据分析全流程中,“数据读取” 常被误解为 “简单的文件打开”—— 双击 Excel、执行基础 SQL 查询即可完成。但对 CDA(Cert ...
2025-10-21在实际业务数据分析中,我们遇到的大多数数据并非理想的正态分布 —— 电商平台的用户消费金额(少数用户单次消费上万元,多数集 ...
2025-10-20在数字化交互中,用户的每一次操作 —— 从电商平台的 “浏览商品→加入购物车→查看评价→放弃下单”,到内容 APP 的 “点击短 ...
2025-10-20在数据分析的全流程中,“数据采集” 是最基础也最关键的环节 —— 如同烹饪前需备好新鲜食材,若采集的数据不完整、不准确或不 ...
2025-10-20在数据成为新时代“石油”的今天,几乎每个职场人都在焦虑: “为什么别人能用数据驱动决策、升职加薪,而我面对Excel表格却无从 ...
2025-10-18数据清洗是 “数据价值挖掘的前置关卡”—— 其核心目标是 “去除噪声、修正错误、规范格式”,但前提是不破坏数据的真实业务含 ...
2025-10-17在数据汇总分析中,透视表凭借灵活的字段重组能力成为核心工具,但原始透视表仅能呈现数值结果,缺乏对数据背景、异常原因或业务 ...
2025-10-17在企业管理中,“凭经验定策略” 的传统模式正逐渐失效 —— 金融机构靠 “研究员主观判断” 选股可能错失收益,电商靠 “运营拍 ...
2025-10-17在数据库日常操作中,INSERT INTO SELECT是实现 “批量数据迁移” 的核心 SQL 语句 —— 它能直接将一个表(或查询结果集)的数 ...
2025-10-16在机器学习建模中,“参数” 是决定模型效果的关键变量 —— 无论是线性回归的系数、随机森林的树深度,还是神经网络的权重,这 ...
2025-10-16在数字化浪潮中,“数据” 已从 “辅助决策的工具” 升级为 “驱动业务的核心资产”—— 电商平台靠用户行为数据优化推荐算法, ...
2025-10-16在大模型从实验室走向生产环境的过程中,“稳定性” 是决定其能否实用的关键 —— 一个在单轮测试中表现优异的模型,若在高并发 ...
2025-10-15