路线建模指南提供了有关路线结构、准则以及通过 Google 地图使用交通路线的示例。
术语定义
通用公交 Feed 规范 (GTFS) 是交通行业中公开提供的常用数据标准,可帮助公交公司以相同的格式提供数据。
在 GTFS 中,路线是指一组行程,这些行程会作为一项服务向乘客显示。请务必根据用户的认知来呈现路线信息,因为:
- 这有助于乘客将他们在 Google 地图上看到的信息与周围的标志进行对应。
- 这样可以避免用户的认知与代理机构的内部定义之间发生冲突,并降低显示误导性信息的几率。
如需为路线创建数据模型,您需要了解其定义:
路线:起始地点和目的地之间的路径,没有特定方向,乘客乘坐公交车沿此路线行驶。GTFS 还允许一条路线具有多个具有一些共同特征的变体,例如,一条路线可以从不同的位置出发和到达,或者在中间有不同的位置。
每条路线都具有以下特征:
- 它与任何时间表都没有关联,因此不受时间影响。
- 它不暗示任何方向,因此是非方向性的。
- 它可以由多趟行程共享,这意味着公交公司每天可以运营多趟同一线路。
建模结构和示例
路线建模取决于用户的认知。
将两条地铁线视为单一服务
有一条名为 North South (NS) 的地铁线,分为两个分支。NS 线路服务于 NS1 到 NS7 之间的车站。在名为 NS5 的车站,线路分叉,火车分别前往两个不同的目的地:NS6 和 NS7。虽然这似乎是两条路线,但乘客会将其视为单一服务。
图 1. 有两个分支的地铁线路
在这种情况下,公交公司可以根据用户的认知,将线路建模为一条路线。
两个略有不同的公交线路
另一个代理机构运营着两项巴士服务 100 和 100A,这两项服务非常相似。
图 2. 两项类似的巴士服务
这两辆公交车在路线上沿着类似的停靠点模式运行。
图 3. 两辆公交车停靠的车站
乘客会将它们视为两条不同的线路,因此公交公司可以按照用户的认知方式对这两条路线进行建模。
指南和最佳实践
最佳实践是遵循以下准则:
提供一致的代理机构 ID
agency_id
信息引用 agency.txt
文件中的同一字段。为确保引用正常运行,请在 agency.txtand
trips.txt 中使用相同的 agency_id
值
始终优先显示路线短名称
代理机构始终必须提供路线短名称,因为 Google 地图实际上不会使用路线长名称或路线说明。
所需数据可以简化流程,帮助公交公司专注于对用户有益的信息。
在路线类型中指明车辆类型
route_type
信息有助于代理机构提供交通方式,以便乘客在上车前知道可以乘坐哪种车辆。
常用的路线类型包括:
编号 | 交通方式 |
---|---|
0 | 有轨电车、有轨电车、轻轨。 |
1 | 地铁。 |
2 | 铁路。 |
3 | 公交车。 |
4 | 轮渡。 |
5 | 缆车 |
6 | 空中升降机、悬挂式车辆电缆。 |
7 | 缆车。 |
11 | 无轨电车。 |
12 | 单轨。 |
如需了解扩展路由类型,请参阅这篇文章。
提供与实际地面颜色相符的颜色
路线颜色和路线文本颜色必须与乘客在路线牌、代理机构网站或印刷版时间表上看到的颜色一致。
颜色对比度必须明显,以便用户能够区分它们。
在行程中定义子路线和支线
任何子路线或支线信息都属于 trips.txt
。除非乘客将路线的特定分支视为两条单独的线路,否则必须将分支和主路线建模为一条路线。
Google 地图用户体验
本部分介绍了 Google 地图上如何显示为路线提供的信息。
发车时刻表
以下屏幕截图显示了有关路线类型、路线缩写名称和全称的信息如何反映在 Google 地图移动应用的出发信息板上。
图 4. 发车时刻表
下表列出了 Feed 中的每个宣传信息编号及其对应的字段。
数字 | 对应的字段类型 |
值 |
---|---|---|
1 | stop_name
|
City Center
|
2 | route_type
|
如图标所示。 |
3 | route_short_name |
路线简称:
|
行程搜索结果
以下屏幕截图显示了路线类型、路线颜色、路线文字颜色、路线短名称和长名称的相关信息在 Google 地图移动应用中的显示方式。
图 5. 行程搜索
下表列出了 Feed 中的每个宣传信息编号及其对应的字段。
编号 |
对应的字段 |
值 |
---|---|---|
1 | route_type
|
如图标所示。 |
2 |
route_short_name 会覆盖 route_long_name ,如果 Feed 中提供了该值)
|
|
“行程路线”页面
以下屏幕截图显示了路线短名称和长名称信息在 Google 地图移动应用中的显示方式。
图 6. 行程路线
下表列出了 Feed 中的每个宣传信息编号及其对应的字段。
编号 |
对应的字段 |
值 |
---|---|---|
1 |
|
East Line
|
停止层
如需显示车辆类型,请使用 routes.txt
中的 route_type
字段。车辆类型信息会显示在 Google 地图的“经停点”图层上。
以下屏幕截图展示了 Google 地图移动应用中的几个示例。
图 7. 停止层
下表列出了 Feed 中的每个宣传信息编号及其对应的字段。
编号 |
字段 |
值 |
---|---|---|
1 | route_type=2
此车辆类型为铁路。
|
火车图标 |
2 | route_type=5
此车辆类型为缆车。
|
电车图标 |
3 | route_type=3
此车辆类型为公交车。
|
公交车图标 |
示例
下面是地铁路线和公交路线的两个示例。
将两条地铁线视为单一服务
下表显示了图 1 中所示地铁路线的示例。
文件名:routes.txt
route_id |
agency_id |
route_short_name |
route_long_name |
route_type |
route_color |
route_text_color |
---|---|---|---|---|---|---|
subway_north_south | abc_transit | NS 行 | 南北线 | 1 | FF9900 | 000000 |
两个略有不同的公交线路
下表显示了图 3 中所示公交线路的示例。
文件名:routes.txt
route_id |
agency_id |
route_short_name |
route_long_name |
route_type |
route_color |
route_text_color |
---|---|---|---|---|---|---|
def_bus_100 | def_transit | 100 | 3 | FF0000 | 434343 | |
def_bus_100A | def_transit | 100A | 3 | 00FF00 | 434343 |