iduedu.get_public_transport_graph¶
- iduedu.get_public_transport_graph(*, osm_id=None, territory=None, transport_types=None, clip_by_territory=False, keep_edge_geometry=True, osm_edge_tags=None, transport_registry=None)[source]¶
Build a directed public-transport graph for one or multiple transport modes within a territory.
The function resolves a boundary (by
osm_idorterritory), downloads OpenStreetMap public-transport routes inside that boundary, converts them into a projectednx.DiGraph, and computes per-edge length (meters) and travel time (minutes). Multiple modes can coexist in the same graph; node ids are unified across modes.For the
subwaymode, additional station context may be added (entrances/exits and inter-station transfers), and available station metadata may be merged into node attributes.- Parameters:
osm_id (
int|None) – OSM relation/area id of the territory. Provide this orterritory.territory (
Polygon|MultiPolygon|GeoDataFrame|None) – Boundary geometry in EPSG:4326 (or a GeoDataFrame). Used whenosm_idis not given.transport_types (
str|list[str] |None) –- Transport mode(s) to include. Accepts:
None: include all types available intransport_registry.rst;str: a single OSM route type, e.g."bus";Sequence[str]: multiple types, e.g.["tram", "bus", "trolleybus", "subway"].
Values are normalized with
strip().lower()and validated against the registry.clip_by_territory (
bool) – If True, clip the resulting graph to the boundary (in the local CRS).keep_edge_geometry (
bool) – If True, storeshapelygeometries (in local CRS) on edges.osm_edge_tags (
list[str] |None) – Subset of OSM tags to retain on edges/nodes. If None, a default subset is used.transport_registry (
TransportRegistry|None) – Transport registry used to validate transport types and to compute per-edge travel times (via each mode’s parameters such as max speed, acceleration/braking distances, and traffic coefficient). If None,DEFAULT_REGISTRYis used.
- Returns:
- node attrs:
x,y(local CRS),type,route,ref_id, plus optional station metadata; edge attrs:
type,route,length_meter,time_min, optionalgeometry, and selected OSM tags.
- node attrs:
Graph attrs typically include:
graph["crs"](EPSG int),graph["type"]="public_transport".- Return type:
Directed PT graph (
nx.DiGraph) with