I'm trying to display a decision tree in Jupyter Notebook and I keep receiving the message:
CalledProcessError: Command '['dot.bat', '-Tsvg']' returned non-zero exit status 1
I'm using the following code:
from sklearn.datasets import load_iris
from sklearn import tree
import graphviz
from IPython.display import SVG
iris = load_iris()
clf = tree.DecisionTreeClassifier()
fitted_clf = clf.fit(iris.data, iris.target)
graph = graphviz.Source(tree.export_graphviz(fitted_clf,
feature_names = iris.feature_names,
class_names = iris.target_names,
filled = True, rounded = True,
special_characters = True))
SVG(graph.pipe(format='svg'))
The Exception is raised in the last line when I try to use 'pipe'. I also tried:
graph.format = 'png'
graph.render('example')
instead of pipe but i keep on raising a similar exception:
CalledProcessError: Command '['dot.bat', '-Tpng', '-O', 'example']' returned non-zero exit status 1
Any idea of what is causing that behaviour? and how can I fix it?
(I'm using Python 3.5.2, sklearn 0.17.1, graphviz 0.8.2 and IPython 6.4.0)