Skip to content
/ pandana Public

Pandas Network Analysis by UrbanSim: fast accessibility metrics and shortest paths, using contraction hierarchies 🗺️

License

Notifications You must be signed in to change notification settings

UDST/pandana

Repository files navigation

Coverage Status

Pandana

Pandana is a Python library for network analysis that uses contraction hierarchies to calculate super-fast travel accessibility metrics and shortest paths. The numerical code is in C++.

New in v0.5 and v0.6 is vectorized, multi-threaded calculation of shortest path routes and distances: network.shortest_paths(), network.shortest_path_lengths().

Documentation: http://udst.github.io/pandana

Installation

As of March 2021, binary installers are provided for Mac, Linux, and Windows through both PyPI and Conda Forge.

  • pip install pandana
  • conda install pandana --channel conda-forge

Pandana is easiest to install in Python 3.8 to 3.11. The last version of Pandana with Python 2.7 binaries is v0.4.4 on Conda Forge. The last version with Python 3.5 binaries is v0.6 on Pip.

See the documentation for information about other installation options.

Demo

Pandana-demo.ipynb

Acknowledgments

Pandana was created by Fletcher Foti, with subsequent contributions from Matt Davis, Federico Fernandez, Sam Maurer, and others. Sam Maurer is currently the lead maintainer. Pandana relies on contraction hierarchy code from Dennis Luxen and his OSRM project.

Academic literature

A paper on Pandana was presented at the Transportation Research Board Annual Conference in 2012. Please cite this paper when referring to the methodology implemented by this library.

Related UDST libraries