Tomme
目录
← 返回全部项目

青岛公交线路与换乘网络分析

如何从公开地图API还原城市公交网络,并识别换乘结构与关键节点?

API采集 × 图网络分析

问题最初是怎样展开的

高德地图API返回线路名称、站点、坐标和轨迹,但它不会直接告诉我哪些站点承担更多换乘,也不会给出整座城市的网络结构。我先解决请求缓存、失败重试和重复记录,再把共同站点变成线路之间的连接,5,616个站点才进入同一张图。

哪些发现改变了原来的方案

地图展示空间位置,NetworkX处理节点与边,两者回答的问题不同。我把单条线路、全市分布、换乘网络和关键节点放进不同页面,避免一张“很密的地图”同时假装回答所有问题。现在它能展示结构,仍然不能代替包含班次、拥堵和步行时间的真实出行分析。

这个项目处理了哪些具体工作

通过高德地图API采集公交线路和站点,完成缓存、重试、去重与结构化处理,再用NetworkX构建换乘网络,并输出交互地图与综合分析页面。

我在项目中负责哪些判断

个人完成。本人负责采集范围、网络构建口径、结果验证和展示结构;AI协助代码实现。

874有效公交线路
5,616唯一站点
31万线路轨迹点
25,929换乘网络边

项目经历了哪些阶段

1

API采集

按城市和线路请求公开地图数据,增加缓存、失败重试和请求节流,避免重复消耗额度。

2

数据整理

清理重复线路与站点,保留线路、站序、经纬度和轨迹,形成可复用的结构化数据。

3

网络构建

把站点看成节点、可换乘关系看成边,使用NetworkX计算连通性与路径特征。

4

可视化

使用Folium展示线路空间分布,使用Plotly和HTML展示网络规模、关键节点与换乘结果。

AI怎样参与这个项目

工具名称只能说明使用过什么。下面记录需求怎样形成、AI承担了哪些工作、我检查了什么,以及项目为什么在当前版本停止。

我怎样把课程实例变成完整项目

我先提供课程实例、目标城市和需要复现的分析结果,再与Claude Code和DeepSeek Pro讨论数据来源、采集范围、缓存方式、网络定义和展示页面。项目随后拆成API采集、数据整理、网络构建、指标计算和可视化。

AI负责哪些实现工作

Claude Code生成高德地图API请求、缓存、失败重试、数据清理、NetworkX网络构建、Folium地图和HTML展示代码;DeepSeek Pro参与技术路线与结果解释。

我怎样检查网络是否建立正确

我检查线路数、唯一站点数、线路轨迹和网络边数量,并分别查看单条线路地图、全市分布和换乘网络。地图用于检查空间位置,NetworkX用于计算站点连接与路径,两类结果分别保留。

我怎样处理API与公开仓库

高德地图密钥从代码中移除,仓库只保留环境变量配置方法、缓存数据处理逻辑、地图和报告。访问者可以查看现有产物,也可以使用自己的密钥重新采集。

这些页面分别证明什么

下面保留项目实际页面和产物。图片可以放大,说明文字标明每张页面在项目中承担的作用。

当前材料能够支持哪些结论

  • 构建了包含5,616个站点和25,929条换乘关系的城市公交网络。
  • 平均路径长度约2.57,说明多数站点之间可通过较少换乘建立连接。
  • 数据采集、网络建模与地图展示形成了可复现的完整链路。

哪些问题仍然需要更多数据

  • 结果受API返回范围、采集时间和线路变更影响,不等于实时公交调度系统。
  • 公开仓库不包含高德API密钥,使用者需通过环境变量自行配置。
  • 网络连通不等于实际出行体验,仍缺少班次、拥堵和步行时间。

项目使用了哪些工具

  • Python
  • Amap API
  • Pandas
  • NetworkX
  • Folium
  • Plotly
  • HTML

可以继续查看哪些材料

项目证据大图