如何从节点ID(OSMnx)获取经纬度坐标?

5

我对osmnx python库还很陌生,想要知道两点之间的角度偏差。因此,我试图从OSM点ID中获取经纬度坐标,但我无法实现它。有没有人能告诉我如何从OSM点ID中获取坐标?


请阅读 [ask] 和 [mcve]。展示你所做的、你拥有的和你想要的内容。 "我如何做X?"这样的问题是在寻求一本书,只询问你真正需要的东西。 - Daniel F
1个回答

5
如果我理解正确,您正在询问如何使用OSMnx来检索某个图中一组OSM节点ID的纬度和经度坐标。首先创建您的图。由于它是一个networkx multidigraph,因此您可以使用任何内置的networkx方法to access您的节点属性。或者,如其文档所述,您可以使用OSMnx将节点转储到geopandas GeoDataFrame,并像使用pandas一样处理它:
import osmnx as ox
G = ox.graph_from_place('Piedmont, California, USA', network_type='drive')
nodes = ox.graph_to_gdfs(G, edges=False)
nodes[['x', 'y']]

生成的 nodes GeoDataFrame 以 OSM ID 为索引,包含代表节点经度和纬度的 xy 值。另请参见 this question/answer

嗨@gboeing,感谢您在osmnx上的工作。 是否有一种快速的方法只检索一个节点的osm数据。 osmnx通常会检索一个区域的图形,但我没有发现任何仅针对单个节点的功能。谢谢。 - beahacker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接