gpt4 book ai didi

python - 同时添加多个平行边 - Networkx

转载 作者:行者123 更新时间:2023-12-01 03:51:36 25 4
gpt4 key购买 nike

我确信这是非常基本的,但是在构造图时是否可以指定节点之间的任意数量的边?我一直在搜索术语:“有向图”、“多个有向图”、“平行边”、“add_edges”等。

假设我有四个节点:A、B、C、D,我想显示:A 到 B,有 600 条边A 到 C,有 100 条边A 到 D,有 400 条边

我在想这样的事情:

import networkx as nx
G = nx.MultiDiGraph()
G.add_node('a', {'b': 600, 'c':100, 'd':400})
G.add_node('b')
G.add_node('c')
G.add_node('d')

(但是,显然这是不正确的。)

最佳答案

根据文档:https://networkx.github.io/documentation/development/tutorial/tutorial.html您必须从元组列表中添加边:

import networkx as nx

a = {'b': 600, 'c':100, 'd':400}
MG=nx.MultiGraph()
MG.add_weighted_edges_from([('a', k, v) for k, v in a.iteritems()], weight='weight')
print MG.edges(data='weight')

输出:

[('a', 'c', 100), ('a', 'b', 600), ('a', 'd', 400)]

关于python - 同时添加多个平行边 - Networkx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38164985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com