运行以下Python代码后:
import pygraphviz as pgv
G=pgv.AGraph()
G.add_edge(1,2)
G.add_edge(2,3)
G.add_edge(3,4)
G.layout(prog='dot')
G.draw('1.png')
我在IDLE中得到了这个痕迹:
File "<pyshell#7>", line 1, in <module>
G.layout(prog='dot')
File "C:\Python27\lib\site-packages\pygraphviz\agraph.py", line 1302, in layout
data=self._run_prog(prog,' '.join([args,"-T",fmt]))
File "C:\Python27\lib\site-packages\pygraphviz\agraph.py", line 1275, in _run_prog
raise IOError("".join(errors))
IOError: 'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
请帮忙,我正在开设一个课程项目。 信息: Graphviz已正确安装
答案 0 :(得分:0)
看起来这是你的PyGraphViz和Windows版本的错误。我发现this bug ticket描述了它,但它显然在2011年得到修复。看起来他们实际上没有发布更新,但如果你可以切换到它,它应该在他们的SVN中。
如果没有,并且您不介意自己编辑源代码,那么他们所做的实际修复是really trivial。只需找到agraph.py
,然后更改此行:
runprog=self._get_prog(prog)
到
runprog=r'"%s"'%self._get_prog(prog)