gpt4 book ai didi

python - 如何显示不同节点之间的关系

转载 作者:行者123 更新时间:2023-12-03 20:51:22 27 4
gpt4 key购买 nike

我希望能够看到两个节点(或更多)之间的关系。
假设我有这两条路径:
1-2-4-5-7-8
1-3-4-6-7-8
由此我们可以看到节点 2&5 是“链接在一起的”,3&6 也是如此。
但是如果我只是将这些路径添加到图表中,我最终会得到类似的结果:

G = nx.DiGraph()

nx.add_path(G, [1,2,4,5,7,8])
nx.add_path(G, [1,3,4,6,7,8])

nx.draw(G, with_labels=True)
plt.show()
graph
然而,它没有显示 2&5 和 3&6 之间的关系,似乎我可以拥有 2&6 和 3&5 的组合,即使它们不存在于我的初始路径中。
反正有没有显示这个?
我正在编写这个 python 并使用库 networkx 来构建图形和 pygraphviz 以进行可视化/渲染。

最佳答案

Yet it doesn't show the relations between 2&5 and between 3&6


我想你可能会混淆 path实际上是。通过向网络添加路径,您将路径中的所有连续节点添加为边。所以添加路径 (1,2,4)添加边缘是一样的屁股 ((1,2), (2,4)) .因此节点 25在您的图中,通过节点序列 2,4,5 连接,遵循这个逻辑。
但是根据您的描述,您需要所有这些节点的组合,例如:
from itertools import combinations

G = nx.DiGraph()

l1 = [1,2,4,5,7,8]
G.add_edges_from(combinations(l1, r=2))

plt.figure(figsize=(10,6))
nx.draw(G, with_labels=True)
plt.show()
enter image description here

and it seems like I can have the combination 2&6 and 3&5 even though they don't exist in my initial paths.


节点 26 ,即使它们是通过不同的路径添加的,它们也是 connected ,表示节点 6可从节点 2 访问通过 1, 2,4 ,5,7,8 和 1,3, 4,6 ,7,8 来自第二条路径。

关于python - 如何显示不同节点之间的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62621319/

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