如何将检索到的 OSM 建筑物数据可视化并将其转换为 shapefile?

时间:2021-02-08 01:08:02

标签: openstreetmap shapefile geopandas overpass-api

我已使用此脚本从 OSM 检索数据:

import overpy
api = overpy.Overpass()
print('Obtaining Data...')
result = api.query("""
[out:json]
[timeout:25]
;
(
  relation
    ["building"]
    (51.909331730124,4.3151378631592,51.954898210091,4.405689239502);
  
    way
    ["building"]
    (51.909331730124,4.3151378631592,51.954898210091,4.405689239502);
);
out;
>;
out skel qt;
""")

我想在执行一些空间分析之前将数据可视化并将其保存为 shapefile。我不知道如何将其转换/保存为 shapefile,有人可以提供任何建议吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

import osmnx as ox 
import ast

point = 'point coordinates'
dist = 'distance in m'
buildings = ox.geometries.geometries_from_point(point, {'building': True}, dist=dist)

并转换为地理数据框:

buildings_save = buildings.applymap(lambda x: str(x) if isinstance(x, list) else x)