使用 DOT 文件中 python 中的 graphviz 绘制有向图

Plotting the Digraph with graphviz in python from DOT file

这是 graphvizAPI reference。我找不到任何从现有 dot 源文件生成有向图的方法。 renderview 等方法保存在新文件中。

如何显示现有 dot 代码的图表?

我能够使用 Source class.

解决它
from graphviz import Source
temp = """
digraph G{
edge [dir=forward]
node [shape=plaintext]

0 [label="0 (None)"]
0 -> 5 [label="root"]
1 [label="1 (Hello)"]
2 [label="2 (how)"]
2 -> 1 [label="advmod"]
3 [label="3 (are)"]
4 [label="4 (you)"]
5 [label="5 (doing)"]
5 -> 3 [label="aux"]
5 -> 2 [label="advmod"]
5 -> 4 [label="nsubj"]
}
"""
s = Source(temp, filename="test.gv", format="png")
s.view()

输出将在同一个文件夹中,格式可以更改。

PS - 在 Ubuntu 上安装 graphviz。首先安装使用 sudo apt install graphviz然后sudo pip install graphviz,否则不行。

您可以使用 API 中定义的 Source.from_file('/path/to/dot_file') 函数。

因此代码将是:

from graphviz import Source
path = '/path/to/dot_file'
s = Source.from_file(path)
s.view()

我在 Python.

中放置了一个非常短的代码,用于使用点文件显示图形

代码是这样的:

from graphviz import Source

path = 'abcd.dot'
s = Source.from_file(path)
print(s.source)

s.render('abcd.gv', format='jpg',view=True)