0

这是我的第一个问题,请忽略任何失误。

我有一个包含超过 2000 条公交路线的数据集,每条公交线路都有超过 20 个公交车站及其 latlongs。最终目标是拥有 kml 文件,每条路线一个。

我开始绘制网络图,如此处所述很容易绘制像这样的地图。

问题 1:不是连接两个公交车站的直线,理想情况下应该沿着道路行驶。这样做的方法是什么?另外,我知道 v3 API 免费版中的航点数量是有限制的,那么如何在一条路线中绘制超过 8 个点?

问题2:如何将这些网络图导出为kml或shp文件?

(附带问题:如何使用复选框切换特定路线的显示/顺序?)

提前致谢!!

(我只有中级/复制粘贴编程技能)

4

1 回答 1

1

r 正如您所说,您的技能是复制和粘贴。我不确定这对你有多大好处,但无论如何我都会努力提供帮助。

问题 1: 除非您有一个包含许多点的数据集,否则绘制沿路路线的唯一选择是使用 Google Maps API 方向请求。

https://developers.google.com/maps/documentation/directions/

每个请求只能添加 8 个航点是正确的,但这并不能阻止您发出多个请求。每秒最多可以发出 10 个请求,每个请求有 8 个航点。如果超过此值,您将收到一个表示您已超出限制的类型的错误。您可以捕获此错误(https://developers.google.com/maps/documentation/javascript/directions#DirectionsStatus),然后暂停您的代码片刻(使用 javascript settimeout),然后再发出 80 个请求。您可以继续前进,直到到达路线的尽头。

问题 2: 这很难回答,因为我不知道您所说的网络图是什么意思,也不知道它们采用什么形式。

您可能会在这里找到一些有用的信息:https ://developers.google.com/kml/documentation/kml_tut

附带问题:有很多选择。如果您想在路线之间切换,下拉列表将是前进的方向。如果您想显示多条路线并能够打开和关闭它们,那么复选框列表可能更适合。我个人可能会使用浮动 div 来容纳此类控件的内容。

希望你至少能从中得到一些东西。

于 2013-11-08T18:03:45.717 回答