gpt4 book ai didi

networking - 将边权重传递给 networkx 中的 graphviz_layout

转载 作者:行者123 更新时间:2023-12-05 01:27:52 26 4
gpt4 key购买 nike

每个人都无法找到如何将权重列表的属性名称传递给 networkx 中的 graphviz_layout。像这样的东西:

nx.spring_layout(G, weight='weight.sum')

但与 nx.graphviz_layout(G, ...) .也许有人会知道?

最佳答案

如果我猜对了,您想指定将哪个边属性用作 graphviz 布局的边权重。来自 NetworkX docs我不认为这是可能的。

然而,weight属性由 graphviz 中的布局算法使用。这就是它所说的:

weight

Weight of edge. In dot, the heavier the weight, the shorter, straighter and more vertical the edge is. For other layouts, a larger weight encourages the layout to make the edge length closer to that specified by the len attribute.



有了这个你可以 set the edge weight对于网络中的每条边:

g = nx.Graph()
g.add_edge(1, 2, {'weight': 4})

或者

g.add_edge(1, 2)
g.edge[1][2]['weight'] = 4

或者

g[1][2]['weight'] = 4

如果要为边设置默认权重,可以将其作为 argument to the graphviz program 传递您想在 graphviz_layout 中使用的:

nx.graphviz_layout(g, prog='dot', args='-Eweight=4')

关于networking - 将边权重传递给 networkx 中的 graphviz_layout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10693088/

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