【发布时间】:2020-02-18 16:12:13
【问题描述】:
我不确定我是否了解 Networkit 如何处理节点名称。
假设我使用另一个 Python 模块(如 Networkx)从边缘列表中读取了一个大图;然后我将其转换为网络图并执行一些操作,例如计算成对距离。一个简单的代码可以做到这一点:
import networkx as nx
import networkit as nk
nxG=nx.read_edgelist('test.edgelist',data=True)
G = nk.nxadapter.nx2nk(nxG, weightAttr='weight')
apsp = nk.distance.APSP(G)
apsp.run()
dist=apsp.getDistances()
简单易懂。
现在,如果我想对这些距离做些什么呢?例如,如果我想根据路径上的权重或任何其他需要检索原始节点 ID 的度量来绘制它们,我不知道该怎么办?
getDistances() 函数返回一个列表列表,每个节点对应一个与其他节点的距离,但我不知道 Networkit 如何将节点的名称映射到它用作节点标识符的整数序列,因此它遵循计算距离并将它们存储在输出中的顺序。
【问题讨论】: