如何获取两个节点之间边缘的数据?

时间:2016-02-09 00:14:11

标签: python networkx

我希望获得networkx图中两个节点之间的优势。更具体地说,我想获得与此边缘相关的一些数据。我知道先验这两个节点是链接的。有没有这样做的功能?

1 个答案:

答案 0 :(得分:10)

边缘数据存储在字典中。要访问该词典,请使用get_edge_data()

import networkx as nx
G=nx.Graph()
G.add_edge(1,2, weight=5)
G.get_edge_data(1,2)
> {'weight': 5}

如果要遍历所有边缘,可以使用G.edges(data=True)

H = nx.Graph()
H.add_edge(2, 3, color = 'red')
H.add_edge(1, 2, weight = 4)
for u,v,data in H.edges_iter(data=True):
    print u, v, data
> 1 2 {'weight': 4}
> 2 3 {'color': 'red'}