network-routing
About
This is the documentation for network_routing, a Python package developed by DVRPC to produce the datasets shown in the Sidewalk Gap Analysis Explorer.
This work was conducted using DVRPC’s pedestrian facilities inventory, a GIS dataset that inventories sidewalks, curb ramps, and crosswalks across the nine-county Greater Philadelphia region. Explore the data and help plan for a pedestrian-friendly future at walk.dvrpc.org.
This codebase facilitates the creation and analysis of routable networks, using any topological network dataset including:
- OpenStreetMap
- DVRPC's sidewalk network
- DVRPC's Level of Traffic Stress network
Data for the analysis is stored in a PostgreSQL/PostGIS database and the process is scripted using Python.
The codebase is broken up into four primary modules, each with its own command-line-interface (CLI):
dbcontrols all data I/Oaccessmanages all accessibility/routing analysesgapshandles analysis processes that don't use network routingimprovementsgenerates tables showing the missing gaps in the sidewalk network
It builds on top of a variety of libraries, including pandana, pg_data_etl, osmnx, geopandas/pandas, geoalchemy2/sqlalchemy, & psycopg2
Software Requirements
This codebase requires the following software:
Optional software includes:
makeif you'd like to take advantage of the bundled sets of commands defined in theMakefiletippecanoeis needed if you'd like to generate vector tile outputs for a webmap