Skip to main content
 首页 » 编程设计

python绘制多图

2025年05月04日17kuangbin

我尝试使用 graphviz 在 Python 中绘制多图。

现在我可以在 Python 中以某种方式绘制通常的图形:

import pygraphviz as pgv 
G=pgv.AGraph() 
G.add_node('a') 
G.add_node('b') 
G.layout() 
G.add_edge('a','b','first') 
G.add_edge('a','b','second') 
sorted(G.edges(keys=True))  
G.draw('file.png') 

然后我得到了输出:

但实际上我想要得到多图,即

但是文档仍然认为它应该区分:

我不知道如何绘制多图,而不仅仅是图。

感谢您的帮助。

添加:

似乎python中还没有这样的库可以做到这一点,所以我用Wolfram Mathematica做到了。但问题仍然悬而未决。

添加

现在工作代码看起来是这样的:

import pygraphviz as pgv 
G=pgv.AGraph(strict=False) 
G.add_node('a') 
G.add_node('b') 
G.layout() 
G.add_edge('a','b','first') 
G.add_edge('a','b','second') 
sorted(G.edges(keys=True))  
G.draw('file.png') 

请您参考如下方法:

正如您引用的文档所说,您需要在创建多边图时指定 strict=False 。由于您没有这样做,您的图形不支持平行边。