一、项目概述
本项目通过 Python 的pyecharts库,结合 AI 工具辅助代码编写与逻辑梳理,实现北京市店铺数量分布及区域连线的地理信息可视化,最终生成交互式地图图表。
二、准备工作
1. 环境与工具
Python 环境:确保已安装 Python 3.6+。
AI 工具:豆包。
三、借助 AI 完成项目代码实现
1. 分析需求,生成基础代码框架
通过询问 AI:“用pyecharts的Geo绘制北京市地图,展示区域店铺数量和连线,代码怎么写?”,结合 AI 建议,构建代码框架。
2. 完整代码及解释
# 从 pyecharts 库中导入 options 模块,用于配置图表的各种选项
from pyecharts import options as opts
# 从 pyecharts 库中导入 Geo 类,用于创建地理图表
from pyecharts.charts import Geo
# 从 pyecharts.globals 模块中导入相关类型
from pyecharts.globals import GeoType, ThemeType, SymbolType # 定义数据,包含北京市不同区域及其对应店铺数量(数据为模拟示例)
data = [("海淀区", "1503"), ("东城区", "9540"), ("石景山区", "4820"), ("丰台区", "3670"), ("通州区", "6493")] # 创建 Geo 图表对象,并进行配置(借助AI梳理参数逻辑)
geo = ( # 初始化 Geo 图表,设置尺寸和主题(AI辅助确认主题参数) Geo(init_opts=opts.InitOpts(width="1000px", height="800px", theme=ThemeType.DARK)) # 添加地图配置:指定北京地图,设置样式、交互等(AI解释地图类型参数) .add_schema( maptype="北京", # 指定地图类型为北京市,AI提示若改"china"可显示中国地图 itemstyle_opts=opts.ItemStyleOpts(color='white', border_color="#EE2C2C"), # 区域样式 zoom=1.5, # 初始缩放比例 is_roam=True, # 允许鼠标缩放平移 center=Geo().get_coordinate('海淀区'), # 地图视角中心设为海淀区 emphasis_itemstyle_opts=opts.ItemStyleOpts(color="#31708f"), # 悬停填充色 emphasis_label_opts=opts.LabelOpts(color="white") # 悬停标签颜色 ) # 添加店铺数量数据(AI辅助理解EFFECT_SCATTER类型) .add( "店铺数量", data, type_=GeoType.EFFECT_SCATTER, # 涟漪散点图类型 symbol_size=6, # 散点大小 ) # 添加区域连线数据(AI指导LINES类型用法) .add( "走直线", [("海淀区", "东城区"), ("海淀区", "丰台区"), ("海淀区", "石景山区"), ("海淀区", "通州区")], type_=GeoType.LINES, # 线图类型 effect_opts=opts.EffectOpts(symbol=SymbolType.ARROW, symbol_size=6, color='#5f99bb'), # 连线特效 linestyle_opts=opts.LineStyleOpts(curve=0, color="#B0E2FF") # 直线样式 ) # 隐藏标签(AI建议简化展示时的操作) .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) # 设置全局标题(AI辅助调整标题位置参数) .set_global_opts( title_opts=opts.TitleOpts(title="北京市", subtitle="数据大图", pos_right="center", pos_top="5%") )
)
# 渲染生成HTML文件(AI确认渲染方法)
geo.render("beijing_store_map.html")
3. AI 辅助点说明代码生成:询问 AI 获取pyecharts.Geo的基本用法框架。
参数解释:如maptype type_等参数含义,通过 AI 快速理解。
问题解决:若遇报错(如地图加载异常),询问 AI 获取调试建议。
四、结果查看
运行代码后,在代码同目录找到beijing_store_map.html文件,双击用浏览器打开,即可查看交互式北京市地图:
鼠标悬停区域查看数据。
缩放平移地图探索细节。
查看海淀区与其他区域的连线效果。
通过 AI 工具辅助,可高效完成从代码编写到问题解决的全流程,快速实现数据分析与可视化项目。