Cognised existence: Transport networks are the physical corridors along which people and goods move. Their geometry and classification determine routing, accessibility analysis, and connectivity modelling.

Question: What transport networks exist at a location and how are they classified?

OSM wiki: https://wiki.openstreetmap.org/wiki/Key:highway | https://wiki.openstreetmap.org/wiki/Key:railway


Realisations

OpenStreetMap — highway=*, railway=*, aeroway=*

OSM is the primary global open source for road and transport network geometry. It is the standard input for routing and network analysis via osmnx.

osmnx builds a routable NetworkX graph from OSM transport data, handling topology, directionality, and simplification automatically.

import osmnx as ox
ox.settings.cache_folder = ".cache/"
 
# Drive network
G_drive = ox.graph_from_place("Copenhagen, Denmark", network_type="drive")
 
# Walk network
G_walk = ox.graph_from_place("Copenhagen, Denmark", network_type="walk")
 
# Cycle network
G_bike = ox.graph_from_place("Copenhagen, Denmark", network_type="bike")
 
# Convert graph to GeoDataFrame for inspection
nodes, edges = ox.graph_to_gdfs(G_drive)

network_type values: drive, walk, bike, all, all_private

Geofabrik layers

LayerContent
gis_osm_roads_free_1.shpAll roads + paths, LineString, field fclass for type
gis_osm_railways_free_1.shpRail lines, LineString
gis_osm_transport_free_1.shpPublic transport stop points

Key OSM tags

TagMeaning
highway=motorwayMotorway / freeway
highway=trunkMajor non-motorway road
highway=primaryPrimary road
highway=secondarySecondary road
highway=residentialResidential street
highway=cyclewayDedicated cycle path
highway=footwayFootpath
railway=railMain line railway
railway=subwayUrban metro
oneway=yesDirected edge
maxspeed=*Speed limit (sparse — verify before use)

Natural Earth — roads, railroads, airports, ports

Natural Earth provides small-to-medium scale transport infrastructure layers covering the entire globe. These are suitable for continental overview mapping and context layers, not for routing or sub-national analysis.

Download: https://www.naturalearthdata.com/downloads/ → Cultural

LayerScaleGeometryContent
ne_10m_roads1:10mLineStringMajor roads globally, field type (Major Highway, Secondary Highway, etc.)
ne_50m_roads1:50mLineStringGeneralised road network
ne_10m_railroads1:10mLineStringMain line rail, field type (Rail, Ferry)
ne_10m_airports1:10mPointMajor civilian airports, field iata_code, name, scalerank
ne_10m_ports1:10mPointMajor seaports, field name, website, scalerank

Python load

import geopandas as gpd
 
roads      = gpd.read_file("ne_10m_roads.zip")
railroads  = gpd.read_file("ne_10m_railroads.zip")
airports   = gpd.read_file("ne_10m_airports.zip")
ports      = gpd.read_file("ne_10m_ports.zip")
 
# Filter to major airports only (scalerank 0–2 are the largest)
major_airports = airports[airports["scalerank"] <= 2]
major_ports    = ports[ports["scalerank"] <= 2]

Important: Natural Earth transport layers are context reference data. Do not use them for routing — they carry no topology. For routing, use OSM via osmnx.


Geometry Representations

Rep IDSource DatasetGeometry TypeNative CRSSuitable ForNot Suitable For
transport_osm_graphOSM via osmnxNetworkX graph (LineString edges)EPSG:4326Routing, isochrones, accessibility, network analysisSimple visual mapping without topology
transport_osm_linesOSM via GeofabrikLineStringEPSG:4326Visual mapping, length statistics, buffer analysisTurn-by-turn routing without topology processing
transport_ne_10m_roadsNatural Earth 10mLineStringEPSG:4326Continental overview mapping, context layerRouting, sub-national road analysis
transport_ne_10m_railroadsNatural Earth 10mLineStringEPSG:4326Continental overview mapping, rail contextRouting, detailed rail network analysis
transport_ne_10m_airportsNatural Earth 10mPointEPSG:4326Airport location mapping, index of major airportsAirport capacity, traffic, or operational data
transport_ne_10m_portsNatural Earth 10mPointEPSG:4326Port location mapping, index of major seaportsPort throughput or vessel traffic intensity

Important: Select transport_osm_graph (osmnx) for any routing or accessibility analysis. Raw line features do not carry topological connectivity.


Limitations

  • Speed limits (maxspeed) are inconsistently tagged in OSM — validate before use in routing models.
  • Turn restrictions exist in OSM but require explicit processing.
  • Natural Earth transport layers cover only major infrastructure and are not suitable for local or sub-national analysis.
  • For legally authoritative road classification, prefer national datasets.