首页 > 解决方案 > 隔离边缘(街道)以创建颜色编码的叶图的最佳方法

问题描述

我想根据 OSM 数据(名称、高速公路类型等)在 Folium html 地图中对街道进行颜色编码

隔离这些边缘以构建地图的最佳方法是什么?我知道我可以删除不符合条件的内容

import osmnx as ox
graph = ox.graph_from_place("Portland, OR", network_type="drive")
oneway = []
G_nooneway= graph.copy()
for u,v,k,d in graph.edges(keys=True, data=True):
   if d['oneway']:
      oneway.append((u,v,k))
   G.remove_edges_from(oneway)

然后从中建立地图

m = folium.Map(location=[45.5236, -122.6750])
ox.plot_graph_folium(G, graph_map=m, popup_attribute="name", weight=2, color="#8b0000")

这非常适合以单一颜色映射除一种之外的所有事物,但对于多种事物的多种颜色而言效率不高。

我没有任何运气从上面的逻辑逆向构建图表

import networkx as nx
G = nx.Graph() 
G.add_edges_from(oneway)

关于有效分解图形以传递给 plot_graph_folium 以创建颜色编码边缘的任何指针?

标签: networkxosmnx

解决方案


推荐阅读