Categories
Data

OSMnx 2.0 Released

OSMnx version 2.0.0 has been released. This has been a massive effort over the past year to streamline the package’s API, re-think its internal organization, and optimize its code. Today OSMnx is faster, more memory efficient, and fully type-annotated for a better user experience.

If you haven’t used it before, OSMnx is a Python package to easily download, model, analyze, and visualize street networks and any other geospatial features from OpenStreetMap. You can download and model walking, driving, or biking networks with a single line of code then quickly analyze and visualize them. You can just as easily work with urban amenities/points of interest, building footprints, transit stops, elevation data, street orientations, speed/travel time, and routing.OSMnx: Figure-ground diagrams of one square mile of each street network, from OpenStreetMap, made in Python with matplotlib, geopandas, and NetworkXThis has now been a labor of love for me for about 9 years. Wow. I initially developed this package to enable the empirical research for my dissertation. Since then, it has powered probably 2/3 of the articles I’ve published over the years. And it has received hundreds of contributions from many other code contributors. Thank you to everyone who helped make this possible.

I hope you find the package as useful as I do. Now I’m looking forward to all of your bug reports.

Categories
Academia

The Structure of Street Networks

I recently coauthored an article titled “A Review of the Structure of Street Networks” with Marc Barthelemy in Transport Findings. On a personal note, Marc has long been a personal hero of mine and was the 2nd most cited author in my dissertation, after Mike Batty (who I also recently had the pleasure of collaborating with).

Street network orientation in Chicago (low entropy), New Orleans (medium entropy), and Rome (high entropy) with polar histograms.From the abstract:

We review measures of street network structure proposed in the recent literature, establish their relevance to practice, and identify open challenges facing researchers. These measures’ empirical values vary substantially across world regions and development eras, indicating street networks’ geometric and topological heterogeneity.

For more, check out the article.

Categories
Data

Worldwide Street Network Models and Indicators

My article, “Street Network Models and Indicators for Every Urban Area in the World” has been published by Geographical Analysis. This project was a massive undertaking and I’m excited to share it. As you might guess from the title, I modeled and analyzed the street network of each urban area in the world then deposited all the source code and models and indicators in open repositories for public reuse. The article also includes a high-level analysis of urban street network form across the world.

Cities worldwide exhibit a variety of street patterns and configurations that shape human mobility, equity, health, and livelihoods. Using boundaries derived from the Global Human Settlement Layer, I modeled and analyzed the street networks of every urban area in the world using OSMnx and OpenStreetMap raw data. In total, I modeled over 160 million street network nodes and over 320 million edges across 8,914 urban areas in 178 countries. I attached node elevations and street grades to every node/edge in the final models. All the final models were topologically simplified such that nodes represent intersections and dead-ends, and edges represent the street segments linking them.

Street network topology simplification with OSMnx and OpenStreetMap

Categories
Data

OSMnx Summer Wrap-Up

OSMnx underwent a major overhaul this summer, with the development of several new features, improvements, and optimizations. This project concluded yesterday with the release of v0.16.0.

This post briefly summarizes what’s changed since the previous mid-summer updates. It covers the new k shortest paths solver, auto-selecting the first polygon when geocoding, better conversion of graph types, and the new geometries module that lets you flexibly download any OSM geospatial objects as a geopandas GeoDataFrame.

Categories
Data

New Article on Computational Notebooks

I have a new article out in Region: Journal of the European Regional Science Association, “Urban Street Network Analysis in a Computational Notebook.” It reflects on the use of Jupyter notebooks in applied data science research, pedagogy, and practice, and it uses the OSMnx examples repository as an example.

From the abstract:

Computational notebooks offer researchers, practitioners, students, and educators the ability to interactively conduct analytics and disseminate reproducible workflows that weave together code, visuals, and narratives. This article explores the potential of computational notebooks in urban analytics and planning, demonstrating their utility through a case study of OSMnx and its tutorials repository. OSMnx is a Python package for working with OpenStreetMap data and modeling, analyzing, and visualizing street networks anywhere in the world. Its official demos and tutorials are distributed as open-source Jupyter notebooks on GitHub. This article showcases this resource by documenting the repository and demonstrating OSMnx interactively through a synoptic tutorial adapted from the repository. It illustrates how to download urban data and model street networks for various study sites, compute network indicators, visualize street centrality, calculate routes, and work with other spatial data such as building footprints and points of interest. Computational notebooks help introduce methods to new users and help researchers reach broader audiences interested in learning from, adapting, and remixing their work. Due to their utility and versatility, the ongoing adoption of computational notebooks in urban planning, analytics, and related geocomputation disciplines should continue into the future.

For more, check out the article.

Categories
Data

US Street Network Models and Measures

My new article, “Street Network Models and Measures for Every U.S. City, County, Urbanized Area, Census Tract, and Zillow-Defined Neighborhood” has been published in Urban Science. This paper reports results from a broader project that collected raw street network data from OpenStreetMap using the Python-based OSMnx software for every U.S. city and town, county, urbanized area, census tract, and Zillow-defined neighborhood boundary. It constructed nonplanar directed multigraphs for each and analyzed their structural and morphological characteristics.

The resulting public data repository contains over 110,000 processed, cleaned street network graphs (which in turn comprise over 55 million nodes and over 137 million edges) at various scales—comprehensively covering the entire U.S.—archived as reusable open-source GraphML files, node/edge lists, and ESRI shapefiles that can be immediately loaded and analyzed in standard tools such as ArcGIS, QGIS, NetworkX, graph-tool, igraph, or Gephi.