从Networkx中的betweenness_centrality传递参数

时间:2019-04-18 08:13:52

标签: python networkx

使用betweenness_centrality(G, k=None, normalized=True, weight=None, endpoints=False, seed=None)时,如何给参数weight形成图形G(G=nx.graph())

betweenness_weight_dic={}
betweenness_weight_dic=nx.closeness_centrality(G,weight='weight')

1 个答案:

答案 0 :(得分:0)

您需要具有边缘属性,并将边缘属性的名称传递给居中性中心功能,该功能使用权重来计算最短路径。一个小例子:

import networkx as nx

g = nx.Graph()
# add edge with the implicit edge attributes weight
g.add_weighted_edges_from([(1,2,3), (2,3,4), (2,5,2), (3,6,4), (6,1,2)])
print(nx.betweenness_centrality(g))
# {1: 0.16666666666666666, 2: 0.5833333333333333, 3: 0.16666666666666666, 5: 0.0, 6: 0.08333333333333333}
print(nx.betweenness_centrality(g,weight="weight"))
# {1: 0.3333333333333333, 2: 0.5, 3: 0.0, 5: 0.0, 6: 0.16666666666666666}
``