-1st-
简介
基于高德地图路径规划API开发,用于计算OD坐标点之间步行、骑行、驾车、公共交通(包括跨城火车)等交通方式下的OD出行距离、时间以及空间路径(搭配ArcGIS食用)。
*最终数据样表
**数据总表
ID | Walking_Dis(km) | Walking_Time(min) | bicycling_Dis(km) | bicycling_Time(min) |
---|---|---|---|---|
1 | 2.6 | 35 | 2.8 | 11.1 |
2 | 15.2 | 202.3 | 15.4 | 61.7 |
3 | … | … | 287.8 | 1151.2 |
ID | Driving_Dis(km) | Driving_Time(min) | Bus_Dis(km) | Bus_Time(min) | Railway | |
---|---|---|---|---|---|---|
1 | 3.4 | 13.4 | 3 | 33.3 | - | |
2 | 16.2 | 34 | 21 | 120.3 | - | |
3 | 230.1 | 174.9 | 245.3 | 131 | … |
****Railway字段示例:name:G28(福州-北京南)|dis:225.0 km|time:56.0 min
**路径数据实例
***表
ID | lgt_gcj02 | lat_gcj02 | lgt_wgs84 | lat_wgs84 |
---|---|---|---|---|
1 | 119.3083 | 26.09122 | 119.3035 | 26.09431 |
2 | 119.3081 | 26.09117 | 119.3033 | 26.09427 |
3 | 119.308 | 26.09112 | 119.3032 | 26.09421 |
***图
*脚本使用、数据获取过程
**脚本
**ArcGIS工具
-2nd-
功能说明
1) 自行选择要获取的目标出行数据,如步行、步行+驾车
(所有出行方案均选择最快捷的一个)
2) 支持一对一、一对多的原始OD表读取,如NO*ND,NO*MD
(是不是不好理解,简单说就是OD合起来一个表,或者OD分开的两个表)
3) 支持跨城公共交通数据的获取,即包含火车数据
4) 驾车OD数据支持选择是否考虑当前路况
(“当前”=运行程序的此时此刻的时间)
5) 支持绘制空间路径(提供ArcGIS中的使用工具)
6) 最终数据的坐标全部自动转换为WGS84(4326)坐标
-3rd-
使用方法
1) 申请高德地图服务端API的key,粘贴到reference文件夹的key.txt中
申请参考:
2) 准备OD点位坐标数据,放在OD_origin文件夹下
格式:
一对一模式:OD数据在表格同一行,一个Excel表格
*“OD”表格表头:O_lgt(经度),O_lat(纬度),D_lgt,D,lat
一对多模式:OD数据分开在两个表格,两个Excel表格(最后自动计算No*Nd个OD数据对)
*“Origin”表格表头:O_lgt,O_lat
*“Destination”表格表头:D_lgt,D_lat
3) 双击运行,依提示操作
-4th-
编写说明
1) 脚本由Sid独立编写完成,坐标转换代码来自网络
脚本如有任何问题请联系:sidchen0@qq.com
2) 脚本使用过程需要连接网络
3) 脚本基于Python语言开发,在win10环境打包完成,目前仅支持win10环境运行,后续可能考虑支持Mac系统
(有需要的可先联系我)
4) 关于封号
这种方式属于从高德地图“偷”数据,不合规可能会被高德封禁开发者账号(同一身份ID的所有开发者账号,不过高德地图服务还是可以用的)。我延长了程序运行过程的休眠时间,也许问题不大。