我的本地Osm文件包含德国的已过滤数据(通过OSMFilter过滤),并且仅包含以下高速公路
高速公路
motorway_link
树干
trunk_link
主
primary_link
次要的
secondary_link
第三
第三链接
住宅
living_street
我正在尝试简化图形并提取重要信息,以最大程度地减少道路网络。我已遵循以下步骤
G3 = ox.simplify_graph(G,strict = True)
G3 = ox.add_edge_lengths(G3);
G3 = ox.remove_isolated_nodes(G3);
node_centrality = nx.closeness_centrality(G3)
nx.set_node_attributes(G3,node_centrality,'node_centrality')
edge_centrality = nx.closeness_centrality(nx.line_graph(G3))
nx.set_edge_attributes(G3,edge_centrality,'edge_centrality')
ox.save_load.save_graphml(G3,..,..,..)
它整天等待了一段时间,以查看GraphML的输出,但没有看到任何进展。 。
我认为edge_centrality和edge_centrality是较高的计算功能,但是如何将这些功能用于数据?
最佳答案
长时间运行需要考虑哪个具体步骤?当networkx计算这些度量时,考虑到算法时间复杂度的本质,在庞大的网络(例如整个德国)中,它们将不可避免地变慢。如果networkx是瓶颈,请考虑转换为graph-tool并在此处运行算法。