This page provides some good GeoAI & Geospatial Python libraries.
- Shapely (GitHub repo, documentation and manual) — Manipulation and analysis of geometric objects in the Cartesian plane
- OSMnx — Python for street networks (website, GitHub repo, osmnx-examples — Examples demonstrating the usage of OSMnx –using jupyter notebook)
Retrieve, model, analyze, and visualize street networks and other spatial data from OpenStreetMap.
The journal article about OSMnx: Boeing, G. 2017. “OSMnx: New Methods for Acquiring, Constructing, Analyzing, and Visualizing Complex Street Networks.” Computers, Environment and Urban Systems. 65, 126-139. doi:10.1016/j.compenvurbsys.2017.05.004
Abstract Urban scholars have studied street networks in various ways, but there are data availability and consistency limitations to the current urban planning/street network analysis literature. To address these challenges, this article presents OSMnx, a new tool to make the collection of data and creation and analysis of street networks simple, consistent, automatable and sound from the perspectives of graph theory, transportation, and urban design. OSMnx contributes five significant capabilities for researchers and practitioners: first, the automated downloading of political boundaries and building footprints; second, the tailored and automated downloading and constructing of street network data from OpenStreetMap; third, the algorithmic correction of network topology; fourth, the ability to save street networks to disk as shapefiles, GraphML, or SVG files; and fifth, the ability to analyze street networks, including calculating routes, projecting and visualizing networks, and calculating metric and topological measures. These measures include those common in urban design and transportation studies, as well as advanced measures of the structure and topology of the network. Finally, this article presents a simple case study using OSMnx to construct and analyze street networks in Portland, Oregon.
- GeoPandas: Spatial extension of pandas
- sentinelhub (GitHub repo, Documents) — a Python package for downloading and processing free and open-source satellite imagery in Python scripts using Sentinel Hub services.
- Fiolum: Interactive visualization of spatial objects with leaflet
- Essential geospatial Python libraries (by Christoph Rieke, Mar 25, 2018) — PDF
- Python geospatial ecosystem