我正在使用 OSMnx从 OpenStreetMaps 道路网络中获得干净的十字路口。相交节点当前位于 (x,y) 坐标中,但我想使用 lat lon 坐标绘制它们。
从 Jupiter notebook 示例OSMnx Example #14 Clean Intersection Cluster Nodes中,我能够获取街道网络并调用ox.clean_intersections
以生成干净的交叉点。
import osmnx as ox, matplotlib.pyplot as plt, numpy as np
ox.config(use_cache=True, log_console=True)
%matplotlib inline
# get a street network and plot it with all edge intersections
address = '2700 Shattuck Ave, Berkeley, CA'
G = ox.graph_from_address(address, network_type='drive', distance=750)
G_proj = ox.project_graph(G)
# clean up the intersections and extract their xy coords
intersections = ox.clean_intersections(G_proj, tolerance=15, dead_ends=False)
points = np.array([point.xy for point in intersections])
我得到了十字路口的 Panda Geoseries,如下所示:
0 POINT (564152.437121744 4189596.945341664)
1 POINT (564846.6779513165 4189615.534235776)
2 POINT (564571.2116373706 4189601.780093061)
由于干净的交叉点由合并节点集群的质心组成,因此它们不对应于具有 osm_id (具有纬度坐标)的任何特定节点。
如何将这些 (x,y) 点转换为纬度坐标?