未找到 GraphViz 的可执行文件:Anaconda-3



我试图显示树输出,但当我运行下面的脚本时,我收到一个错误,如:

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

我在这里搜索过类似的主题,但大多数都与Mac相关。我使用的是Windows 10 64位操作系统,而我使用的则是Anaconda-3 64位。我很想听听你对此的建议。

#Displaying the decision tree
from sklearn import tree
#from StringIO import StringIO
from io import StringIO
#from StringIO import StringIO 
from IPython.display import Image
out = StringIO()
tree.export_graphviz(classifier, out_file=out)
import pydotplus
graph=pydotplus.graph_from_dot_data(out.getvalue())
Image(graph.create_png())

edit:我再次安装了graphviz和pydotplus模块,但现在仍然可以工作。

我也遇到了同样的问题。以下是((Win10,Anaconda3,Jupyter笔记本,python 3.x)的解决方案

  1. 下载并安装https://graphviz.gitlab.io/_pages/Download/Download_windows.html

  2. conda安装graphviz

  3. 将graphviz安装路径(C:…\graphviz\bin)添加到控制面板>系统和安全>系统>高级系统设置>环境变量>路径>编辑>新建

  4. 非常重要:重新启动Jupyter笔记本电脑。我试着重新启动机器,结果成功了

这个问题在这里针对不同的操作系统回答:Graphviz';找不到的可执行文件(Python 3.4)

我也遇到了类似的问题。和Vamshi一样,我有一个类似的Win10系统。我的规格;Win10,基于x64的系统,Anaconda3,Anaconda Navigator 1.9.6,Python 3.7(确切地说是Spyder 3.3.3)。

我的解决方案还包括编辑PATH环境变量。以下是一个循序渐进的计划:

  1. 导航到Anaconda资源管理器窗口中的"环境"选项卡。你应该能够在屏幕的左上侧找到它。

  2. 选择要在其中安装GraphViz软件包的相关环境。对于大多数用户来说,这只是一个"基本(根)"环境。

  3. 选择要安装GraphViz的环境后,单击环境名称右侧的播放符号(例如"base(root)")。应该会弹出许多选项。只需从下拉菜单中选择"打开终端"选项。

  4. 当您单击"打开终端"时,将在适合您的环境的正确位置打开命令提示符。键入以下代码;


conda install graphviz

PS:你也可以使用pip-install graphviz,但根据我的经验,它可能会与使用conda安装的其他模块发生冲突。

  1. Anaconda现在将下载Graphviz软件包,并检查其与您安装的所有其他软件包的兼容性。请耐心等待,这可能需要一些时间,具体取决于您的系统和互联网连接。

  2. 安装完成后,退出命令提示符,返回到安装Graphviz的环境(可能是"base(root)")。从下拉菜单中,选择"频道"下拉菜单左侧的"已安装"选项。在右侧的搜索框中键入"graphviz",并检查软件包是否已成功安装在您选择的环境中。

  3. 现在完成了,打开一个使用Graphviz功能的.py脚本并执行该脚本。很可能您仍然会看到这样的警告消息:"找不到GraphViz的可执行文件"。在警告消息中,将给出特定的文件位置地址。对我来说,这个文件的位置是"C:\Users\David\Anaconda3\Library\bin\graphviz",但根据您的安装过程和计算机的设置,它可能会有所不同。请确保复制此文件路径。

  4. 现在我们需要编辑系统的环境变量。这里要非常小心。首先,只需按Windows「开始」键即可打开「开始」菜单。然后,只需键入"环境变量"。Windows应该给你的第一个建议是:"编辑系统环境变量"。单击此链接。

  5. 现在,您应该在系统属性菜单的"高级"选项卡上。单击此菜单底部的"环境变量"按钮->在新菜单中选择路径->单击"编辑"->单击"新建"->在此框中粘贴Python警告框中的链接。对我来说,这是"C:\Users\David\Anaconda3\Library\bin\graphviz",但可能有所不同。点击回车键。

  6. 路径菜单中应该会出现一个新行,其中包含您刚刚输入的确切地址。

  7. 关闭所有程序并重新启动电脑。这是新路径生效所必需的。

  8. 重新打开Anaconda Explorer,选择安装GraphViz的环境,然后从Anaconda浏览器运行Spyder。

  9. 重新运行使用GraphViz功能的.py脚本。错误消息应该已经消失,包应该按预期运行。

Vermundir的回答帮助解决了我的问题。

但是,关于步骤9,您需要确定要进入的正确路径。在我的案例中,Python错误不包含任何路径。要在anaconda3中找到bin目录的正确路径(需要在其中附加graphviz),请在ipython上运行以下2行代码:

import os
os.environ 

扫描os.environ的输出,您会在"path"列表下找到anaconda3-bin目录的路径。例如,你可能会找到这样一条路径:

C:\Users\your_username\AppData\Local\Continuum\anaconda3\Library\bin

然后将graphviz附加到该路径,如下所示:

C:Usersyour_usernameAppDataLocalContinuumanaconda3Librarybingraphviz 

这是您在步骤9中单击"新建"时输入的路径。

最新更新