Comments (1)
Thanks for using OSMnx.
The current problem is that when using OSMnx's graph_from_polygon (and potentially other graph functions) function, there is no straightforward way to specify a buffer zone in meters around the polygon. This limitation makes it challenging to include the street network data within a specified buffer, which is essential in cases where users need a more comprehensive representation of the network, especially in areas near the polygon boundary.
Users can currently do this with 2 lines of code, so we're probably not going to add this to the API. Historically, some piecemeal buffering functionality used to exist for some OSMnx functions, but was deprecated and will be fully removed from the codebase when v2.0 comes out. The consistent simple expectation is that users just request the study site that they actually want, since study site definitions are infinitely and easily adjustable. But as you rightly mention, the artificial periphery problem is essential to keep in mind in all spatial network analysis.
Sample code to do this now and in the future:
import osmnx as ox
geom = ox.geocode_to_gdf("Piedmont, CA, USA")["geometry"].iloc[0]
# buffer the geometry by 100 meters
geom_proj, crs = ox.projection.project_geometry(geom)
geom_buff, _ = ox.projection.project_geometry(geom_proj.buffer(100), crs=crs, to_latlong=True)
# model the driving network within the buffered geometry
G = ox.graph_from_polygon(geom_buff, network_type="drive")
from osmnx.
Related Issues (20)
- UnicodeDecodeError in graph_from_xml on Windows Installations HOT 4
- Calling graph_from_place("Alaska", network_type="drive") throws GEOSException: TopologyException HOT 4
- Vasu HOT 1
- Unable to plot superimposed image HOT 1
- street networks graphs not working HOT 3
- AttributeError: module 'osmnx' has no attribute 'clean_intersections' HOT 2
- Removal of inner_polygons from outer_polygons (creation of holes), creates maximum one hole. HOT 5
- Include parking space data in nodes HOT 7
- Fill missing values with most common value on similar roads HOT 4
- OSMnx 2.0 Migration Guide HOT 5
- Add junction/intersection types to nodes HOT 6
- Support directed bearing/orientation distributions and plots HOT 5
- Support loading and/or merging multiple networks HOT 5
- [Meta] Enable Discussions tab on this GitHub repo HOT 1
- Further API streamlining for v2 HOT 2
- _bearings_distribution: apply weight during histogram HOT 2
- Conditional tolerance for intersection consolidation HOT 16
- Add edge_attrs_differ argument to each graph.graph_from_* method HOT 2
- Add support for implicit maxspeed values
- `ox.shortest_path` returns `None` HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from osmnx.