如何在断网计算机上使用OSMnx运行PyAEDT示例?
OSMnx离线适配PyAEDT<SBR_City_Import.py>示例方案
提前在联网机器导出OSM数据
在有网络的环境中,用OSMnx导出示例所需的城市路网、地理边界等数据:import osmnx as ox # 按目标区域导出路网(示例用城市名称,也可自定义经纬度范围) graph = ox.graph_from_place("目标城市名称", network_type="drive") # 保存为GraphML格式(完整保留路网属性,推荐) ox.save_graphml(graph, filepath="city_graph.graphml") # 同步导出城市边界数据(若示例需要) place_boundary = ox.geocode_to_gdf("目标城市名称") place_boundary.to_file("city_boundary.geojson", driver="GeoJSON")将导出的
.graphml、.geojson文件通过安全方式传输到离线机器。离线机器替换网络请求为本地加载
定位<SBR_City_Import.py>中OSMnx的联网调用代码,替换为本地加载逻辑:- 原路网加载代码(如
graph = ox.graph_from_place(...))替换为:import osmnx as ox graph = ox.load_graphml(filepath="city_graph.graphml") - 原边界/地理编码代码(如
ox.geocode_to_gdf(...))替换为:import geopandas as gpd place_boundary = gpd.read_file("city_boundary.geojson")
- 原路网加载代码(如
核心注意事项
- 确保联网机器与离线机器的OSMnx、GeoPandas等依赖库版本完全一致,避免数据格式兼容问题。
- 示例中OSMnx的无网络依赖功能(如路网分析、绘图)可直接保留,无需修改。
- 严格使用安全传输渠道传递数据,符合本地安全规范。
内容的提问来源于stack exchange,提问作者zebra
相关产品推荐
相关产品推荐

