Network Analyst 公共交通数据模型
需具备 Network Analyst 许可方可使用。
要在网络数据集中为基于计划的公共交通服务进行建模,则网络必须包含一组特定的表和要素类以及一个特定方案,其中该方案用于定义公共交通停靠点、线路和可使用公共交通服务的日期与时间。 这些表和要素类包含 Network Analyst 公共交通数据模型,且会在下文中进行介绍。
可以通过将基于时间的成本属性配置为使用公共交通赋值器,来在网络数据集中使用这些表和要素类。其中,公共交通赋值器将根据数据模型中定义的公共交通计划计算一天内特定时间沿各个公交线路的行驶时间。
注:
通过运行 GTFS 转公共交通数据模型和将公共交通数据模型连接至街道地理处理工具,可以根据通用交通数据规范 (GTFS) 公共交通数据自动创建一组有效的公共交通数据模型表和要素类。 创建此类网络数据集的完整工作流将在创建和使用具有公共交通数据的网络数据集中介绍。
Network Analyst 公共交通数据模型由五个要素类和七个表组成,其中,要素类必须位于将创建网络数据集的要素数据集中,表必须位于该要素数据集的父地理数据库中。 数据必须包含在文件地理数据库或企业级地理数据库中;移动地理数据库网络数据集不支持公共交通。 此外,由于公共交通数据模型需要具有特定名称的要素类和表,因此不能在同一地理数据库中包含多组公共交通数据模型要素类和表。 可以在同一组要素类和表中包含来自多个公共交通机构的数据,但地理数据库中最多只能有一组单独的要素类和表。

下表汇总了数据模型要素类和表以及它们之间的关系:
公共交通数据模型要素类和表
|
名称 |
描述 |
类型 |
必填 |
|---|---|---|---|
|
定义公共交通停靠点的位置和特征。
|
要素类 |
Y |
|
|
定义乘客可从街道或人行道进入公共交通停靠点的位置。 此要素类的主要用途是确保街道和公共交通线路之间的适当网络连通性。
|
要素类 |
N |
|
|
在停靠点及由此停靠点相关联的
|
要素类 |
N |
|
|
用于定义公共交通线路的折线要素。 每个 在网络数据集中, |
要素类 |
Y |
|
|
折线要素定义了公共交通车辆的行驶路径,旨在用于地图中的可视化。 路径网络数据集不使用此可选要素类,但可在计算交通服务频率工具中改善输出可视化。 |
要素类 |
N |
|
|
定义公共交通线路或路线的一般特征。 |
表 |
Y |
|
|
定义线路的变化。 例如,公共交通线路可能有两个不同的终点站,某些行程会前往一个终点站,而其他行程前往另一个终点站。 其中每一个行程都是单独的线路变量。 每个线路变量由线路变量元素组成。 |
表 |
Y |
|
|
定义与线路变量相关的唯一行驶时间模式。 例如,假设在高峰时段,公交车沿公交线路行驶,每次停靠间隔为五分钟,但在非高峰时段,每次停靠间隔只需三分钟。 |
表 |
Y |
|
|
定义沿每个线路变量元素的计划行驶时间,该线路变量元素是与计划相关联的线路变量的一部分。 计划元素的序列用于定义特定计划线路变量元素相应序列的行驶时间。 |
表 |
Y |
|
|
使用特定计划定义的行驶时间模式定义公共交通行程开始服务时的特定起始时间。 |
表 |
Y |
|
|
定义公共交通服务将在一周中的哪几天以及哪些日期范围内运行。
|
表 |
Y |
|
|
定义常规服务的例外情况,例如将添加或删除公共交通服务的特定日期。
|
表 |
Y |

要素类
数据模型中的大多数要素类可用作网络数据集中的源要素类。 Stops 和 StopsOnStreets 要素类将是交汇点源,LineVariantElements 和 StopConnectors 要素类将是边源。 在网络数据集中,LineVariantElements 边源(代表公交线路段)应使用基于时间的成本属性中的公共交通赋值器,来根据计划服务对公共交通行驶时间进行建模。 连接组可通过停靠点和连接器要素的形式控制街道和公共交通线路之间的行程。
网络数据集不使用 LVEShapes 要素类,其仅可用于可视化。 该要素类主要用于计算交通服务频率工具。
Stops
Stops 要素类用于定义公共交通停靠点的位置和特征。 它为数据模型所必需,从而可对公共交通系统进行充分建模;但是,该要素类不会直接用于公共交通赋值器。
Stops 要素类相当于 GTFS stops.txt 文件。
下表描述了 Stops 要素类的方案:
Stops
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
定义停靠点位置的点形状。 |
形状 |
Y |
N |
|
|
公共交通停靠点的唯一 ID。 |
长整型 |
Y |
N |
|
|
停靠点的 GTFS |
文本 |
N |
Y |
|
|
指示此停靠点是表示常规公共交通停靠点(包含一个或多个常规站点的父站点),还是入站口。 可用的值如下所示:
如果停靠点位于站点内,则 如果某个要素表示入站口 ( 如果
|
短整型 |
N |
Y |
|
|
当前停靠点或入站口父站点的 |
长整型 |
N |
Y |
|
|
停靠点或入站口父站点的 GTFS |
文本 |
N |
Y |
|
|
指示停靠点、站点或入站口是否适合轮椅进入。 可用的值如下所示:
如果要素表示停靠点 (
|
短整型 |
N |
Y |
StopsOnStreets
StopsOnStreets 要素类定义乘客可从街道或人行道进入公共交通停靠点的位置。 StopsOnStreets 要素可以表示入站口的位置,或者也可表示与停靠点位置相交的街道或人行道的最近交点,以确保网络连通性。
StopsOnStreets 要素类并非数据模型所必需,但它有助于建立正确的网络数据集连通性,因为停靠点不太可能直接落在街道上。 如果打算对沿着街道行走并使用公共交通系统的旅行者进行建模,您需要采用某种方式以受控方式将公交线路与街道连接起来,因此建议使用此要素类。
StopsOnStreets 要素类没有必需的方案。 如果使用将公共交通数据模型连接至街道工具创建此要素类,它将具有与 Stops 要素类相同的方案。 但是,此要素类不会用于公共交通赋值器,因此,您可以使用最适用于正在建模的字段的内容。
StopConnectors
StopConnectors 要素类定义用于通过对应 StopsOnStreets 要素的方式使停靠点与街道相连接的折线要素。 此要素类的主要用途是确保街道和公共交通线路之间的适当网络连通性。 这允许旅行者沿着街道行走、进入公共交通停靠点,使用沿公共交通线路(LineVariantElements 要素)的计划公共交通服务,在另一个停靠点离开公共交通线路,然后返回街道继续步行到目的地。

StopConnectors 要素类并非数据模型所必需,且不会用于公共交通赋值器。 但是,由于停靠点不太可能直接落在街道上,因此建议使用连接器以确保公共交通线路和街道之间的连通性。
下表描述了 StopConnectors 要素类的方案:
StopConnectors
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
要素的折线形状。 停靠点连接器要素的数字化方向应该是从停靠点到街道。 |
形状 |
Y |
N |
|
|
通过此 |
长整型 |
N |
Y |
|
|
指示此要素在停靠点和街道之间建立的连接类型。
ConnectorType 为 1 的连接线(灰线)连接到父站点(蓝色方形)。 父站点使用 ConnectorType 为 0 的连接线连接到街道。
ConnectorType 为 1 的连接线(灰线)连接到父站点(蓝色方形)。 父站点使用 ConnectorType 为 2 的连接线连接到街道的入站口位置(绿色方形)。此字段并非必需,但其有助于在成本或限制属性上设置数赋值器。 例如,成本属性可能会根据 |
短整型 |
N |
Y |
|
|
指示此连接线所表示的停靠点与街道之间的路径是否适合轮椅进入。 可用的值如下所示:
此字段有助于在网络数据集中创建限制属性,以模拟乘坐轮椅的乘客。 |
短整型 |
N |
Y |
LineVariantElements
LineVariantElements 要素类定义表示公共交通线路的折线。 每个线路变量元素表示沿两个相邻公共交通停靠点之间的公共交通线路行驶。
在网络数据集中,LineVariantElements 边源应使用成本属性中的公共交通赋值器,来根据计划的服务对公共交通行驶时间进行建模。 公共交通赋值器通过查询各种公共交通数据模型表,根据公共交通计划计算在特定时间沿线变量元素的行驶时间。 线变量元素的长度和形状不会用于公共交通赋值器,因此实际几何并不重要;但是,每个要素必须在两端连接到其相邻的站点,以保持网络数据集的正确连通性。
下表描述了 LineVariantElements 要素类的方案:
LineVariantElements
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
交通线路段的折线形状。 公共交通赋值器不使用线路要素的长度和形状来计算行驶时间。 相反,行驶时间是从存储在数据模型表中的公共交通计划推导得出的。 因此,尽管线路变量元素必须具有形状才能模拟网络数据集中的连通性,但是特定形状与行驶时间计算无关。 如果使用 GTFS 转公共交通数据模型工具根据 GTFS 数据创建数据模型表,则线路变量元素将是连接相邻交通停靠点的简单直线,并且不代表交通系统中车辆行驶的地理路径。 |
形状 |
Y |
N |
|
|
包含此线路变量元素的线路变量 |
长整型 |
Y |
N |
|
|
线路变量由有序线路变量元素序列组成,其中线路变量元素是连接沿交通线路的交通停靠点的特定序列。 例如,如果一个线路变量包含 10 个线路变量元素,则
|
短整型 |
Y |
N |
|
|
线路变量元素表示沿两个相邻公共交通停靠点之间的公共交通线路行驶。 |
长整型 |
N |
Y |
|
|
线路变量元素要素表示沿两个相邻公共交通停靠点之间的公共交通线路行程。 |
长整型 |
N |
Y |
|
|
该 多个 |
长整型 |
N |
Y |
LVEShapes
LVEShapes 要素类定义了表示公共交通线路的地图多段线,可用于地图中的可视化。 每个要素表示在两相邻站点之间沿公共交通线路行驶的公共交通车辆的地理路径。
路径网络数据集不使用此可选要素类,但可在计算交通服务频率工具中改善输出可视化。
下表描述了 LVEShapes 要素类的方案:
LVEShapes
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
交通线路段的制图折线形状表示在两个相邻站点之间行驶的公共交通车辆的路径。 |
形状 |
Y |
N |
|
|
形状要素的唯一 ID。 |
长整型 |
Y |
N |
表
数据模型中的表定义了公共交通计划。 公共交通赋值器将使用这些表来确定沿 LineVariantElements 要素根据计划交通服务在一天内特定时间的行驶时间。
线
Lines 表用于定义交通线路或路线及其特征。 线路等同于 GTFS 路线。

ID 值。下表描述了 Lines 表的方案:
线
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
公交线路的唯一 ID。 |
长整型 |
Y |
N |
|
|
线路的 GTFS |
文本 |
N |
Y |
|
|
此线路表示的公共交通模式。 可用的值如下所示:
|
短整型 |
N |
Y |
LineVariants
LineVariants 表定义了线路的变化。 例如,公共交通线路可能有两个不同的终点站,某些行程会前往一个终点站,而其他行程前往另一个终点站。 线路变量由有序线路变量元素序列组成,其中线路变量元素是连接沿交通线路的交通停靠点的特定序列。

LineID 值,但它们是单独的线路变量,每个都有其自己的 ID 值,因为它们会通往不同的终点站。下表描述了 LineVariants 表的方案:
LineVariants
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
线路变量的唯一 ID。 |
长整型 |
Y |
N |
|
|
此线路变量所属 |
长整型 |
Y |
N |
|
|
一个数字代码,指示该线路变量所代表的线路的行驶方向,如入站或出站。 此字段仅为描述性字段,不会影响路径。 其对应于 GTFS 可用的值如下所示:
|
短整型 |
N |
Y |
|
|
此线路变量对应的 GTFS |
文本 |
N |
Y |
计划
Schedules 表定义与线路变量相关的唯一行驶时间模式。 例如,也许在高峰时段,公交车沿公交线路行驶,每次停靠间隔为五分钟,但在非高峰时段,每次停靠间隔只需三分钟。 Schedules 表将包含五分钟的条目和三分钟的另一个条目。 计划的各个组成部分将在 ScheduleElements 表中定义。 计划特定于线路变量。
下表描述了 Schedules 表的方案:
计划
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
计划的唯一 ID。 |
长整型 |
Y |
N |
|
|
与此计划相关联的 |
长整型 |
Y |
N |
ScheduleElements
ScheduleElements 表用于定义特定计划的每个线路变量元素的行驶时间。 计划元素的有序序列用于定义特定计划线路变量元素相应序列的行驶时间。 ScheduleElements 表必须包含 Schedules 表中每行的行序列。

下表描述了 ScheduleElements 表的方案:
ScheduleElements
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
此计划元素所属 |
长整型 |
Y |
N |
|
|
计划由序列元素的有序序列组成,每个计划元素与 例如,如果一个线路变量包含 10 个线路变量元素,则 每个计划元素相应的 如果上述线路变量具有与之相关的其他计划,则 |
短整型 |
Y |
N |
|
|
交通车辆依照与计划相同的
|
双精度 |
Y |
N |
|
|
交通车辆依照与计划相同的 |
双精度 |
Y |
N |
Runs
Runs 表定义了交通行程沿线路变量元素的一个序列开始服务时的特定开始时间,使用特定计划定义的行驶时间。 Run 相当于 GTFS 行程。 Runs 表还定义了一天中此时间服务于此路线的特定交通车辆上是否可以携带轮椅和自行车。

下表描述了 Runs 表的方案:
Runs
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
运行的唯一 ID。 |
长整型 |
Y |
N |
|
|
此运行所属 |
长整型 |
Y |
N |
|
|
交通车辆自第一个停靠点出发后的分钟数,自午夜开始计算。 例如,如果运行于上午 8:00 开始,则 |
双精度 |
Y |
N |
|
|
与此运行相关联的 GTFS |
文本 |
N |
Y |
|
|
|
长整型 |
Y |
N |
|
|
指示运行是否适合轮椅进入。 可用的值如下所示:
该字段为可选字段。 如果该字段不存在,公共交通赋值器会视为所有运行对于乘坐轮椅出行者均可用。
|
短整型 |
N |
Y |
|
|
指示此运行是否允许自行车。 可用的值如下所示:
该字段为可选字段。 如果该字段不存在,公共交通赋值器会视为所有运行对于自行车出行者均可用。
|
短整型 |
N |
Y |
Calendars
Calendars 表定义公共交通服务将在一周中的哪几天以及哪些日期范围内运行。
在使用特定日期求解网络分析时,公共交通赋值器会考虑由 Calendars 表中 StartDate 和 EndDate 字段定义的日期范围。 在使用一般工作日求解网络分析时,将忽略 StartDate 和 EndDate 字段,仅工作日字段(例如 Monday)用于定义在分析当天运行的运输服务。
此表是数据模型所必需的,但如果您不需要定义常规公共交通服务,则不必包含所有行。 但是,Calendars 或 CalendarExceptions 必须使用行进行填充。 如果 Calendars 和 CalendarExceptions 均已填充,则 CalendarExceptions 会修改在 Calendars 中定义的常规服务。
下表描述了 Calendars 表的方案:
Calendars
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
日历的唯一 ID。 |
长整型 |
Y |
N |
|
|
与此日历相关联的 GTFS |
文本 |
N |
Y |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
指示具有此
|
短整型 |
Y |
N |
|
|
此数据集操作所描述的公共交通服务的日期范围的开始。 在使用特定日期求解网络分析时,如果分析日期在 |
日期 |
N |
N |
|
|
此数据集操作所描述的公共交通服务的日期范围的结束。 在使用特定日期求解网络分析时,如果分析日期在 |
日期 |
N |
N |
CalendarExceptions
CalendarExceptions 表定义常规公共交通服务的例外情况,例如将添加或删除公共交通服务的特定日期。 如果网络分析配置为使用特定日期而非一般工作日,则公共交通赋值器仅使用此表中的例外日期。
此表是数据模型所必需的,但如果您不需要定义常规公共交通服务的任何例外,则不必包含所有行。 但是,Calendars 或 CalendarExceptions 必须使用行进行填充。 如果 Calendars 和 CalendarExceptions 均已填充,则 CalendarExceptions 会修改在 Calendars 中定义的常规服务。 如果 Calendars 表为空,所有公共交通服务都在 CalendarExceptions 中通过在特定日期显式添加服务的方式定义。 在这种情况下,必须在网络分析中使用特定日期,而不是一般工作日。
下表描述了 CalendarExceptions 表的方案:
CalendarExceptions
|
字段名 |
描述 |
类型 |
必填 |
可为空 |
|---|---|---|---|---|
|
|
表行的 ObjectID。 |
ObjectID |
Y |
N |
|
|
可能也可能不会与 此字段中的值不必是唯一的,而 |
长整型 |
Y |
N |
|
|
与此 |
文本 |
N |
Y |
|
|
将添加或删除此例外所描述的交通服务的日期。 |
日期 |
Y |
N |
|
|
指示是否在
|
短整型 |
Y |
N |

