我在虚拟环境(Windows 8.1)中安装了pydotplus和graphviz。 现在,我想可视化决策树。但是pydotplus无法找到GraphViz的可执行文件。
from sklearn import tree
from sklearn.datasets import load_iris
import pydotplus
from IPython.display import Image
iris = load_iris()
X,y = iris.data[:,2:], iris.target
clf = tree.DecisionTreeClassifier(max_depth=2)
clf.fit(X,y)
dot_data = tree.export_graphviz(clf,
out_file=None,
feature_names=iris.feature_names[2:],
class_names=iris.target_names,
rounded=True,
filled=True)
graph = pydotplus.graph_from_dot_data(dot_data)
Image(graph.create_png())
人们通过在GraphViz bin目录中添加其PATH来解决此问题。显然,该目录通常是C:\Program Files (x86)\Graphviz2.34\bin\
。但是,这不是我的情况。我怎么找到它?
答案 0 :(得分:1)
从我的评论中可以看出,您已经使用pip安装了graphviz。事实是,名为graphviz in pip的软件包只是用于graphviz应用程序的python接口。换句话说,它类似于您尝试使用的pydotplus软件包。
这些软件包的作用是为您提供一些类和方法供您在Python代码中弄乱,而当需要渲染图形时,它们只需调用graphviz二进制文件并将其发送给生成的点源代码即可。当然,要使它们起作用,您必须在计算机上安装上述提到的graphviz二进制文件。
您需要做的是下载并运行graphviz installer(适用于Windows的链接),它没有以任何方式与python和pip连接。安装后,您将在Program Files中获得Graphviz文件夹,其中包含graphviz可执行文件。
在使用pydotplus之前,可能需要将此文件夹添加到PATH中。
要检查所有设置是否正确,请运行以下命令:
> dot -?
您应该看到dot命令手册页。