pydot.InvocationException:找不到GraphViz的可执行文件

时间:2014-12-27 11:37:34

标签: python scipy graphviz pydot

我尝试运行this example进行决策树学习,但收到以下错误消息:

  

文件" coco.py",第18行,in       graph.write_pdf(" iris.pdf")File" /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pydot.py",   1602行       lambda路径,f = frmt,prog = self.prog:self.write(path,format = f,prog = prog))文件   " /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pydot.py" ;,   第1696行,写在       dot_fd.write(self.create(prog,format))File" /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pydot.py",   第1727行,在创建中       '未找到GraphViz的可执行文件' )pydot.InvocationException:未找到GraphViz的可执行文件

我看到this post关于类似的错误,但即使我按照他们的解决方案(卸载然后以相反的顺序重新安装graphviz和pydot),问题仍然存在......我正在使用MacOS(Yosemite) )。

有什么想法吗?非常感谢帮助。

12 个答案:

答案 0 :(得分:22)

cel,在评论中回答:

  

Graphviz不是python工具。 pypi上的python包提供了一个   在python代码中使用Graphviz的便捷方法。你仍然需要   安装Graphviz可执行文件,这不是pythonic,因此不是   与这些包一起发货。你可以安装那些,例如用一个   通用软件包管理器,如自制软件

就我个人而言,在ubuntu 14.04上,我所要做的就是:

sudo apt-get install graphviz

答案 1 :(得分:9)

在Windows 8上,这为我解决了同样的问题:

import os     
os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'

答案 2 :(得分:8)

brew install graphviz
pip install -U pydotplus

...在MacOSX上为我工作

答案 3 :(得分:6)

使用pip安装pydot和graphviz时遇到了同样的问题,然后我找到了答案here

特别是,我首先卸载了pydot和graphviz,我使用pip单独安装(使用sudo pip uninstall pydotgraphviz相同)。然后,我运行sudo apt-get install python-pydot来解决问题。

答案 4 :(得分:3)

对于Windows用户:
1.install Graphviz
2.将Graphviz路径添加到PATH变量
3.Restart PyCharm或其他编译器。

从版本2.31开始,Visual Studio包不再改变PATH变量或完全访问注册表。如果您希望使用Graphviz的命令行界面或使用其他调用Graphviz程序的程序,则需要自己设置PATH变量。

答案 5 :(得分:3)

conda install -c anaconda graphviz

conda install -c anaconda pydot

答案 6 :(得分:1)

我遇到了同样的问题,我的问题解决了:

  1. 运行命令sudo port install graphviz
  2. 如果端口出现错误,则首先根据您使用的版本从下面安装端口 https://guide.macports.org/chunked/installing.macports.html
  3. 安装端口运行命令sudo port install graphviz
  4. 之后

    如果您正在使用iPython并重新运行,请重新启动python内核。

答案 7 :(得分:1)

我确实遇到了类似的问题,而更正的方法是更改​​路径。

这就是我所做的:

将粘贴的“ graphiz”路径从计算机复制到环境变量>控制面板中的路径

示例: Graphiz路径:C:\ Apps \ Program Files \ Continuum \ Anaconda2 \ Library \ bin \ graphviz)

(我已经将其安装在Apps文件夹中。可能在您的diff路径中)

在环境变量中设置路径:

转到“控制面板”>“控制面板\系统和安全性\系统”。单击“高级设置”,然后单击“高级”。您将在右下角找到环境变量。单击“路径”进行编辑并保存。关闭您的IDE并重新打开它。

对我有用。

答案 8 :(得分:0)

在Mac上,使用Brew安装graphviz而不是pip,请参阅链接:

graphviz信息:http://www.graphviz.org/download/

brew安装:https://brew.sh/

因此,在安装brew之后在终端中键入以下内容应该有效:

brew install graphviz

答案 9 :(得分:0)

也在Ubuntu 18.04上为我工作:

$ sudo apt-get install graphviz  

答案 10 :(得分:0)

如果您使用的是Mac操作系统,则可能会遇到此问题。我已经安装了带有pip的graphviz,但是工作比较简单。因此,我不得不再次将它与brew安装在一起,并为我工作。

使用以下命令

  

简单安装graphviz

答案 11 :(得分:0)

我建议避免使用graphviz。 使用以下替代方法

from sklearn.tree import plot_tree
plt.figure(figsize=(60,30))
plot_tree(dt, filled=True);