编程语言
首页 > 编程语言> > 在sklearn Python的决策树中使用pydot制作图表

在sklearn Python的决策树中使用pydot制作图表

作者:互联网

我希望这段代码能够创建树的PDF图形.

from sklearn import datasets,tree
import StringIO
import pydot
from sklearn.externals.six import StringIO  

iris = datasets.load_iris()

clf = tree.DecisionTreeClassifier()
clf = clf.fit(iris['data'],iris['target'])

dot_data = StringIO.StringIO()
tree.export_graphviz(clf, out_file=dot_data)
graph = pydot.graph_from_dot_data(dot_data.getvalue())
graph.write_pdf("iris.pdf")

有没有办法做我想要的虽然是pydot?这种方式是死路一条.

进一步解释问题,代码在最后一个语句中失败. graph.write_pdf()正在graph.progs()中查找Graphviz,但那里没有条目.错误消息显示找不到Graphviz可执行文件.

无论如何我通过在DOS终端中调用dot.exe命令能够pdf文件,但最好使用pydot来执行此步骤.

解决方法:

添加PATH变量后,看起来您正在导入StringIO,然后调用StringIO.StringIO()

试着打电话:

dot_data = StringIO()

适用于我的python 2.7.6 Win7 x64环境,带有pydot and graphviz error: Couldn’t import dot_parser, loading of dot files will not be possible修复.

标签:python,decision-tree,pydot
来源: https://codeday.me/bug/20190612/1227399.html