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):
db
controls all data I/Oaccess
manages all accessibility/routing analysesgaps
handles analysis processes that don't use network routingimprovements
generates 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:
make
if you'd like to take advantage of the bundled sets of commands defined in theMakefile
tippecanoe
is needed if you'd like to generate vector tile outputs for a webmap