pygraphviz 值错误:路径中找不到程序 dot (python)

1 投票
2 回答
8067 浏览
提问于 2025-04-17 21:46

我在使用pygraphviz的时候遇到了问题,系统是win7(64位)。我先安装了Graphviz,然后又安装了pygraphviz。可是当我尝试编译我的代码时,

G=pgv.AGraph()
d={'1': {'2': None}, '2': {'1': None, '3': None}, '3': {'2': None}}
A=pgv.AGraph(d)
G.add_node(1, color='red')
G.add_edge('b','c',color='blue')
G.layout(prog='dot') 
G.draw('file.png')

却出现了这个错误。

pydev debugger: starting
Traceback (most recent call last):
  File "D:\Program Files\Eclipse\plugins\org.python.pydev_3.3.3.201401272249\pysrc\pydevd.py", line 1738, in <module>
    debugger.run(setup['file'], None, None)
  File "D:\Program Files\Eclipse\plugins\org.python.pydev_3.3.3.201401272249\pysrc\pydevd.py", line 1355, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "D:\Users\SUUSER\workspace\ThreadGraph\parseText.py", line 17, in <module>
    G.layout(prog='dot') 
  File "C:\Python27\lib\site-packages\pygraphviz\agraph.py", line 1305, in layout
    data=self._run_prog(prog,' '.join([args,"-T",fmt]))
  File "C:\Python27\lib\site-packages\pygraphviz\agraph.py", line 1251, in _run_prog
    runprog=r'"%s"'%self._get_prog(prog)
  File "C:\Python27\lib\site-packages\pygraphviz\agraph.py", line 1239, in _get_prog
    raise ValueError("Program %s not found in path."%prog)
ValueError: Program dot not found in path.

别告诉我这是重复的问题。我已经看过所有的答案了。

pygraphviz的ValueError:找不到程序dot

(Python) ValueError:找不到程序dot

PyGraphViz的agraph.layout()抛出I0错误

2 个回答

1

如果你安装了Anaconda,最简单的方法就是在命令提示符(CMD)中运行以下命令:

conda install graphviz

你可能还需要运行以下命令:

conda install pydot-ng
1

即使你已经安装了PyGraphviz,还是可能会遇到这个问题,原因是PyGraphviz的bin目录没有被添加到系统路径中。我在Windows上安装了PyGraphviz(通过.msi文件)后就遇到了这个问题。

要解决这个问题,你需要把bin目录(比如C:\Program Files (x86)\Graphviz2.38\bin)添加到系统的PATH变量中。以Windows 7为例,你可以这样操作:

系统属性 -> 环境变量 -> 系统变量 -> PATH -> 编辑...

撰写回答