如何从地理标记语言文件创建NetworkX图形?

2024-10-01 09:35:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望从作为地理标记语言(GML)文件下载的Ordinance Surveys' (OS') Open Roads dataset在NetworkX/OSMnx中创建道路网络图。经过令人尴尬的长时间,多亏了this answer,我意识到这种GML文件格式与NetworkX/OSMnx接受并具有内置函数的图形建模语言不同

这些文件格式对我来说是全新的,因此我想问,是否有任何方法可以将操作系统的开放道路数据(即GML格式)加载到NetworkX/OSMnx中,以便我可以对其执行一些网络分析?理想情况下,这将使用Python

或者,我已经设法直接使用OSMnx从开放式街道地图数据创建道路网络,但我想看看操作系统开放式道路数据是否更完整


Tags: 文件数据标记networkx语言osopen地理
1条回答
网友
1楼 · 发布于 2024-10-01 09:35:24

OSMnx设计用于处理OpenStreetMap数据。如果可以将输入数据转换为类似OSM的格式,那么可以使用graph_from_gdfs函数加载它们。您将需要一层节点和一层边。然后这些步骤看起来像:

  1. 使用ogr2ogr将GML节点和边缘文件转换为地理包层
  2. 将GeoPandas作为GeodataFrame加载节点和边缘GeoPackage图层
  3. 确保这些GeoDataFrames具有required索引和列
  4. 使用OSMnx的graph_from_gdfs函数将GeoDataFrames转换为NetworkX有向图

相关问题 更多 >