InvocationException: GraphViz‘s executables not found【BUG已解决】

项目场景:

在机器学习框架中遇到了一个bug:安装了GraphViz模块后,在对着sklearn的决策树文档操作输出决策树模型结果时,还是爆出了如下的错误:
报错位置为:

display(Image(graph.create_png()))
graph.write_png("tree_wine-Gini.png")
graph.write_pdf("tree wine-Gini.pdf")

报错语句为:

InvocationException: GraphViz’s executables not found

原因分析:

网上很多答案告诉我们,要我们安装GraphViz模块,然而并不对!
如下,我安装了GraphViz,但是还是报错了。
InvocationException: GraphViz‘s executables not found【BUG已解决】_第1张图片InvocationException: GraphViz‘s executables not found【BUG已解决】_第2张图片
所以说问题不在这,我查阅质料发现,改正这个bug的方法有一个:下文详细描述。

解决方案:

解决bug为:

InvocationException: GraphViz's executables not found

1.去graphviz.官方下载自己电脑符合的操作系统的安装包:

https://graphviz.gitlab.io/_pages/Download/Download_windows.html

2,安装的时候,记住自己安装在电脑里的位置:以我的电脑为例,我的电脑安装的路径为:

D:\Graphviz\bin

3,安装完成之后,我们去运行一下代码,看看是否可以运行成功。
4.如果还是失败,你们就需要我们手动的去指明Graphviz的位置了:
添加如下代码:

import os
os.environ["PATH"] += os.pathsep + 'D:/Graphviz/bin'

在你的机器学习模型里:

import pydotplus
from IPython.display import display,Image
import os
os.environ["PATH"] += os.pathsep + 'D:/Graphviz/bin'
graph=pydotplus.graph_from_dot_data(dot_data.getvalue())
display(Image(graph.create_png()))
graph.write_png("tree_wine-Gini.png")
graph.write_pdf("tree wine-Gini.pdf")

运行结果:
InvocationException: GraphViz‘s executables not found【BUG已解决】_第3张图片
完美的解决了这个bug。
在jupyter里也是好用的:

from sklearn import tree 
clf = tree. DecisionTreeClassifier ()
lenses=clf.fit(X,y)
print("training score:",clf.score(X, y) )
from six import StringIO 
dot_data = StringIO()
tree.export_graphviz(clf,out_file=dot_data,
                     feature_names=wine.feature_names,
                     class_names=wine.target_names,
                     filled=True,
                     rounded=True,
                     special_characters =True)
import pydotplus 
from IPython.display import display,Image
graph=pydotplus.graph_from_dot_data(dot_data.getvalue())
import os
os.environ["PATH"] += os.pathsep + 'D:/Graphviz/bin'
display(Image(graph.create_png()))
graph.write_png("tree_wine-Gini.png")
graph.write_pdf("tree wine-Gini.pdf")

InvocationException: GraphViz‘s executables not found【BUG已解决】_第4张图片

你可能感兴趣的:(BUG解决合集,#,机器学习,GraphViz,GraphViz‘s,图像输出)