• Stars
    star
    4,812
  • Rank 8,753 (Top 0.2 %)
  • Language
    Python
  • License
    MIT License
  • Created over 8 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OSMnx is a Python package to easily download, model, analyze, and visualize street networks and other geospatial features from OpenStreetMap.

PyPI Version PyPI Downloads Anaconda Downloads Documentation Status Build Status Coverage Status

OSMnx

OSMnx is a Python package that lets you download geospatial data from OpenStreetMap and model, project, visualize, and analyze real-world street networks and any other geospatial geometries. You can download and model walkable, drivable, or bikeable urban networks with a single line of Python code then easily analyze and visualize them. You can just as easily download and work with other infrastructure types, amenities/points of interest, building footprints, elevation data, street bearings/orientations, and speed/travel time.

If you use OSMnx in your work, please cite the journal article.

Citation info: 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

Getting Started

How do I install OSMnx? Follow the installation instructions.

How do I use OSMnx? Check out the usage examples/tutorials in the examples repo.

How does this or that function work? Read its documentation.

What can I do with OSMnx? Check out recent projects and blog posts that use OSMnx.

I have a usage question. Please ask it on StackOverflow.

Features

OSMnx is built on top of GeoPandas, NetworkX, and matplotlib and interacts with OpenStreetMap APIs to:

  • Download and model street networks or other networked infrastructure anywhere in the world with a single line of code
  • Download any other spatial geometries, place boundaries, building footprints, or points of interest as a GeoDataFrame
  • Download by city name, polygon, bounding box, or point/address + network distance
  • Download drivable, walkable, bikeable, or all street networks
  • Download node elevations and calculate edge grades (inclines)
  • Impute missing speeds and calculate graph edge travel times
  • Simplify and correct the network's topology to clean-up nodes and consolidate intersections
  • Fast map-matching of points, routes, or trajectories to nearest graph edges or nodes
  • Save networks to disk as shapefiles, GeoPackages, and GraphML
  • Save/load street network to/from a local .osm XML file
  • Conduct topological and spatial analyses to automatically calculate dozens of indicators
  • Calculate and visualize street bearings and orientations
  • Calculate and visualize shortest-path routes that minimize distance, travel time, elevation, etc
  • Visualize street networks as a static map or interactive Leaflet web map
  • Visualize travel distance and travel time with isoline and isochrone maps
  • Plot figure-ground diagrams of street networks and building footprints

All of these features are demonstrated in the examples repo and documented in the documentation. Feature development details are in the change log. Read the journal article for further technical details.

License

OSMnx is licensed under the MIT license. OpenStreetMap's open data license requires that derivative works provide proper attribution.

More Repositories

1

osmnx-examples

Gallery of OSMnx tutorials, usage examples, and feature demonstations.
Jupyter Notebook
1,531
star
2

ppde642

USC urban data science course series with Python and Jupyter
Jupyter Notebook
1,260
star
3

data-visualization

Misc data visualization projects, examples, and demos: mostly Python (pandas + matplotlib) and JavaScript (leaflet).
Jupyter Notebook
736
star
4

pynamical

Pynamical is a Python package for modeling and visualizing discrete nonlinear dynamical systems, chaos, and fractals.
Python
620
star
5

cv

Geoff Boeing's academic CV in LaTeX
TeX
301
star
6

2014-summer-travels

Python-based spatial data analysis and visualization of the GPS location data from my 2014 summer travels.
Jupyter Notebook
100
star
7

street-network-models

Street network models and indicators for every urban area in the world
Python
76
star
8

lorenz-system

Model, visualizations, and animation of the Lorenz system
Jupyter Notebook
70
star
9

outlook-to-google-calendar

One-way sync from an outlook calendar to a google calendar, handling new, updated, and deleted events.
Python
64
star
10

ppd534

USC PPD534: Data, Evidence, and Communication for the Public Good
Jupyter Notebook
44
star
11

network-clustering

Jupyter Notebook
30
star
12

ppd430

USC PPD430: Urban Informatics
Jupyter Notebook
24
star
13

asa

Advanced Spatial Analysis of Urban Systems at Northeastern University
Jupyter Notebook
20
star
14

ms-bldg-footprints

Jupyter Notebook
18
star
15

machine-learning-course

11
star
16

dataverse-street-networks

Jupyter Notebook
9
star
17

social-media

Working with various social media APIs in Python and JavaScript.
Jupyter Notebook
9
star
18

travel-time-prediction

Jupyter Notebook
8
star
19

osmnx-notebook-paper

Jupyter Notebook
8
star
20

latex-template

A standard LaTeX template for starting research papers.
TeX
7
star
21

moses-caro

TeX
6
star
22

planetizen-python

Jupyter Notebook
5
star
23

osmnx-paper

The OSMnx reference paper and official citation.
TeX
4
star
24

street-orientations-one-state

viz of street orientations of the 25 largest cities in a state
Jupyter Notebook
3
star
25

tracts-streets-evolution

Jupyter Notebook
3
star
26

representation-paper

TeX
3
star
27

conda-scripts

scripts for configuring conda and updating its base environment
Batchfile
3
star
28

beer-locations

Processing PubQuest craft beer locations annual data sets into one analyzable data set
Jupyter Notebook
3
star
29

street-network-analysis

Jupyter Notebook
3
star
30

bayarea-street-network

Download and process the nine-county Bay Area's street network with OSMnx
Jupyter Notebook
3
star
31

gis-bok-notebooks

GIS BoK chapter on computational notebooks
TeX
3
star
32

dissertation-manuscript

Jupyter Notebook
2
star
33

representation-listings

Jupyter Notebook
2
star
34

multiscale-street-networks-paper

TeX
2
star
35

latin-america-streets

Jupyter Notebook
2
star
36

two-way-conversions

Jupyter Notebook
2
star
37

image-describer

Twitter bot that describes images using Microsoft's computer vision AI
Python
2
star
38

la-free-days

1
star
39

aster-gdem

Download and process ASTER GDEM data
Python
1
star
40

housing-prices-supply

Jupyter Notebook
1
star
41

planar-vs-nonplanar-paper

TeX
1
star
42

planar-vs-nonplanar

Jupyter Notebook
1
star
43

portland-msa-streets

Jupyter Notebook
1
star
44

onesquaremile-threadless

Jupyter Notebook
1
star
45

frontpages

a twitter bot to tweet the front pages of the world's newspapers
Python
1
star