Skip to main content
 首页 » 编程设计

python之使用 Networkx to_agraph() 绘制图形

2025年05月04日9lyhabc

我有一个 networkx 有向字母对象。我可以使用 to_agraph 在文件中绘制图形。但我想在内存中绘制图形,然后我可以将其保存在数据库表中,而不必将其写入文件。有办法吗?

以下是我用来将图表绘制到文件中的代码。

import networkx as nx 
g = nx.DiGraph() 
g.add_nodes_from(MyNodes) 
g.add_add_edges_from(MyEdges) 
grph=nx.to_agraph(g) 
s=grph.string() 
grph.layout(prog='dot') 
grph.draw('test_graph.gif') 

谢谢!!

请您参考如下方法:

如果您不指定文件,您将获得一个包含图像数据的字符串。 例如

In [1]: import networkx as nx 
 
In [2]: G=nx.path_graph(4) 
 
In [3]: A=nx.to_agraph(G) 
 
In [4]: A.layout(prog='dot') 
 
In [5]: png=A.draw(format='png') 
 
In [6]: png[0:10] 
Out[6]: '\x89PNG\r\n\x1a\n\x00\x00'