我有一个巨大的osm文件(> 3gb),无法在jupyter中运行
from pyrosm import OSM
from pyrosm import get_data
path=r"*.osm.pbf"
osm = OSM(path)
drive_net = osm.get_network(network_type="driving")
drive_net.plot()
(当我尝试osm.get_network(network_type="driving")
时内存错误).
我有一个纵横坐标集我想要选择一个包含所有这些坐标的区域以及它们周围的一些区域
是否有方法在python中提取该数据的下一个工作区域(最终目标是此坐标之间的路由)?
如果不需要直接在Python中,您可以使用Osmosis CLI对数据进行预处理,然后将其输入到jupyter Notebook中。
从OpenStreetMap中提取区域
(用Java写的,所以我认为在Python中不能直接使用)。
一个具有类似功能的替代方案是Osmium,它具有Python绑定。
至于建立面积,你可以使用它们作为一个多边形的点,并挤压得到的多边形。详见:https://docs.osmcode.org/osmium/latest/osmium-extract.html