spatial-access
What it is and what it does
spatial_access is a geospatial analysis library that calculates travel times and accessibility metrics for large sets of coordinate pairs. It splits into two main submodules: p2p generates many-to-many travel time matrices across walking, biking, and driving networks, while Models computes spatial accessibility measures like average time to nearest provider, provider-to-people ratios, and two-stage floating catchment areas. The package is built on a heavy stack of geospatial and scientific dependencies (geopandas, shapely, rtree, scipy, scikit-learn) and requires compiled spatial indexing libraries at the system level.
The package is designed for bulk computation and is typically used in public health, urban planning, and equity research to measure access to amenities. However, the project has been abandoned since 2022-01-11 with no active maintenance, meaning dependency conflicts, Python version incompatibilities, and unresolved bugs are likely on modern systems.
Use it for:
- Measure healthcare facility accessibility by computing average travel times from residential locations to nearest providers.
- Analyze food desert coverage by calculating provider-to-people ratios for grocery stores using floating catchment area methods.
- Evaluate transit equity by generating travel time matrices for walking and biking routes to employment centers.
- Assess school accessibility by computing catchment areas and counting nearby schools within travel time thresholds.
- Model geographic disparities in service access by comparing weighted accessibility scores across regions.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Computes travel times and spatial access metrics at scale for millions of origin-destination pairs across walking, biking, and driving modes, plus measures like provider-to-people ratios and floating catchment areas.
No, unless maintaining legacy code. The package is abandoned (last update 2022-01-11, 1676 days without commits), carries 17 heavy dependencies prone to version conflicts, requires system-level compilation, and has no Python version support specification. For new projects, seek actively maintained alternatives. If you must use it, expect significant dependency resolution work and thorough testing.
Install
spatial-access on PyPI
pip
pip install spatial-accessuv
uv add spatial-accesspoetry
poetry add spatial-accessInstalling spatial-access
Before you install
Medium install friction: requires a modern compiler and system-level spatial indexing libraries (libspatialindex-dev on Ubuntu, spatialindex via brew on macOS). The package carries 17 runtime dependencies including heavy scientific stacks. Project is abandoned—last commit 2022-01-11, no updates in 1676 days—so dependency conflicts are a real risk.
License in practice
BSD permissive license allows commercial and private use with minimal restrictions, though abandoned maintenance status means no upstream support for license disputes.
Quickstart
# Install system dependencies first (Ubuntu):
# sudo apt-get install libspatialindex-dev
# pip install spatial_access
from spatial_access.p2p import TransitMatrix
from spatial_access.Configs import Configs
config = Configs()
tm = TransitMatrix(origins, destinations, configs=config)
# Compute travel times for walking, biking, or driving
Requires system-level spatial indexing library (libspatialindex-dev on Ubuntu, spatialindex via Homebrew on macOS) and a modern C/C++ compiler. Package is abandoned and may not install cleanly on Python versions released after 2022-01-11.
Verify before relying
- Compatibility with Python versions released after 2022-01-11 (wheels exist for cp36–cp310 but no newer versions)
- Whether all 17 runtime dependencies remain compatible with each other and modern releases
- Whether the package works on Windows despite documentation noting Windows users need Ubuntu VM setup
Package facts
| License | BSD (permissive) |
| Python support | not specified |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 17 — fiona, cython, matplotlib, jellyfish, geopandas, psutil, pandas, numpy, osmnet, scipy, geopy, shapely, tables, scikit-learn, atlas, descartes, rtree |
| Maintenance | abandoned — 1,676 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 152,147/month — #10,910 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: spatial_access-1.0.2-cp310-cp310-macosx_10_9_x86_64.whl; spatial_access-1.0.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl; spatial_access-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; spatial_access-1.0.2-cp310-cp310-musllinux_1_1_i686.whl; spatial_access-1.0.2-cp310-cp310-musllinux_1_1_x86_64.whl; spatial_access-1.0.2-cp36-cp36m-macosx_10_9_x86_64.whl; spatial_access-1.0.2-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl; spatial_access-1.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; spatial_access-1.0.2-cp36-cp36m-musllinux_1_1_i686.whl; spatial_access-1.0.2-cp36-cp36m-musllinux_1_1_x86_64.whl; spatial_access-1.0.2-cp37-cp37m-macosx_10_9_x86_64.whl; spatial_access-1.0.2-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl; spatial_access-1.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; spatial_access-1.0.2-cp37-cp37m-musllinux_1_1_i686.whl; spatial_access-1.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl; spatial_access-1.0.2-cp38-cp38-macosx_10_9_x86_64.whl; spatial_access-1.0.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl; spatial_access-1.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; spatial_access-1.0.2-cp38-cp38-musllinux_1_1_i686.whl; spatial_access-1.0.2-cp38-cp38-musllinux_1_1_x86_64.whl
Tags
More Information Analysis packages
A drop-in replacement for Python's standard…
permissive · top 100 on PyPI
pyarrowpyarrow provides Python bindings to Apache…
permissive · top 100 on PyPI
networkxNetworkX provides data structures and…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
contourpyContourPy calculates contours of 2D…
permissive · top 1,000 on PyPI
snowflake-snowpark-pythonSnowpark Python provides APIs to query and…
permissive · top 1,000 on PyPI
accessCalculates spatial accessibility metrics to…
permissive · top 15,000 on PyPI
segregationCalculates over 40 segregation indices—both…
permissive · top 15,000 on PyPI
giddyGiddy provides methods for exploratory…
permissive · top 15,000 on PyPI
spintSpInt calibrates spatial interaction models…
permissive · top 15,000 on PyPI
cityseerComputes network centrality, land-use…
agpl · top 15,000 on PyPI
spatialdataSpatialData is a data framework and…
permissive · top 15,000 on PyPI
libpysallibpysal provides core spatial analysis…
permissive · top 15,000 on PyPI
pysalPySAL is a meta-package that bundles 29 spatial…
permissive · top 15,000 on PyPI
osmnxOSMnx downloads, models, and analyzes street…
permissive · top 15,000 on PyPI
arcgisAccess Esri's ArcGIS services and geospatial…
unclear · top 15,000 on PyPI