gpt4 book ai didi

python - 使用 pydot 显示边集的有向图

转载 作者:太空宇宙 更新时间:2023-11-03 16:41:39 28 4
gpt4 key购买 nike

我想使用 pydot 创建一个有向图,并且我也有一个现成的边集。边集的类型可以是列表,也可以是元组,这都没关系,因为我可以提前根据自己的要求构造边集,就像[(1,2),(2,3), (3,2)]((1,2),(2,3),(3,2))

我初始化一个pydot对象g如下:

g = pydot.Dot()
g.set_type('digraph')

之后,我发现没有像add_edge_from这样的函数,只有gadd_edge函数。是不是意味着我必须一一生成边?

也许我可以按照一开始的方式从边集创建图形。

g=pydot.graph_from_edges(edge_set)

但我发现它会产生一个无向图:(

顺便说一句,我尝试使用networkx实现该图并成功。但其花哨迂回的展示方式,更注重边缘而不是节点(抱歉这只是我的观点,当然你可能不同意),并不符合我现在想要的。

有人对我有什么想法或建议吗?我可以使用现成的方法吗?感谢您的帮助!

最佳答案

In [1]: import networkx as nx

In [2]: G = nx.DiGraph([(1,2),(2,3),(3,2)])

In [3]: from networkx.drawing.nx_pydot import write_dot

In [4]: write_dot(G,'file.dot')

In [5]: !dot -Tpng file.dot >file.png

enter image description here

关于python - 使用 pydot 显示边集的有向图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36722770/

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