【问题标题】:How to save graph to .osm format with osmnx in python?如何在 python 中使用 osmnx 将图形保存为 .osm 格式?
【发布时间】:2020-06-16 00:21:27
【问题描述】:

我正在使用 python 库 osmnx 从机场获取图表。 我可以通过使用以下代码行轻松做到这一点:

import osmnx as ox
G = ox.graph_from_place('wien flughafen austria', infrastructure='way["aeroway"]',simplify=False, custom_filter = ('["aeroway"~"taxiway|taxilane|parking_position"]'))

现在我的目标是将这个文件保存为 osm 格式,这样我就可以用另一个名为 Java OpenStreatMap Editor 的软件打开它

为了保存文件,我按照osmnx documentation 中的建议使用了以下代码行:

ox.save_load.save_as_osm(G, 'test.osm')

但是这似乎不起作用。您能否建议我将 graoh 保存为 osm 格式的正确方法?

【问题讨论】:

    标签: python graph openstreetmap osmnx


    【解决方案1】:

    我正在使用 osmnx=0.11.1。以下应该工作。

    ox.save_load.save_graph_osm(G, filename='test.osm')
    

    【讨论】:

    • 我从 github 再次安装了 osmnx 并解决了这个问题 :)
    • 顺便说一句,您知道是否可以在 Java OpenStreatMap 编辑器中加载此类文件?在我看来它不起作用......
    • 对不起,我没有使用 Java OSM 编辑器的经验...但只是为了分享,我试图在 OSRM(路由服务器工具)中加载保存的“osm”文件,它给了我类似“缺少版本属性”的错误,所以我不确定您是否在 Jave OSM 编辑器中遇到类似的问题。最后,我的解决方案是直接从 OpenStreetMap 站点下载 osm 文件,或者通过直接使用边界框方法“导出”,或者从存档下载。两者都将提供具有完整属性的 osm 文件。也许您可以快速尝试一下这些文件。
    • 建筑足迹有类似的吗?
    • 请注意,在最近的 OSMnx 版本中,正确的函数调用是 ox.io.save_graph_xml(G, filepath)。详情请见the docs
    【解决方案2】:

    关于您在上面的 cmets 中询问的建筑物足迹,您只需这样做

    GeoDataFrame.to_file("GeoDataFrame_name.shp")
    

    并将其保存为工作目录中的 shapefile

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-17
      • 1970-01-01
      • 1970-01-01
      • 2021-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多