Невозможно отобразить дерево графиков в блокноте Jupyter - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь отобразить дерево решений в Jupyter Notebook, и я продолжаю получать сообщение:

CalledProcessError: Команда '[' dot.bat ',' -Tsvg ']' вернула ненулевой статус выхода 1

Я использую следующий код:

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'))

Исключение возникает в последней строке, когда я пытаюсь использовать 'pipe'. Я также попробовал:

graph.format = 'png'
graph.render('example')

вместо трубы, но я продолжаю поднимать похожее исключение:

CalledProcessError: Команда '[' dot.bat ',' -Tpng ',' -O ',' example ']' возвращен ненулевой статус выхода 1

Есть идеи, что вызывает такое поведение? и как я могу это исправить?

(я использую Python 3.5.2, sklearn 0.17.1, graphviz 0.8.2 и IPython 6.4.0)

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Ответ Пол-Армана должен работать, если вы работаете с conda.Если нет, то вам нужно выполнить:

brew install graphviz
pip install graphviz

В случае, если вы получите предупреждение о том, что graphviz уже установлен, но не связан, следуйте инструкциям, чтобы связать его.Т.е. brew link graphviz (или brew link --overwrite graphviz, если первый выдает ошибку).

Причина, по которой он работает в conda без brew, заключается в том, что conda install graphviz фактически устанавливает библиотеку c ++, а не python.

0 голосов
/ 14 июня 2018

Установка graphviz xorg-libxrender xorg-libxpm из репозитория conda-forge, и привязки python из pip обычно решают эту проблему для меня.

conda install -c conda-forge graphviz xorg-libxrender xorg-libxpm
pip install graphviz

Не забудьте сначала удалить ранее установленные пакеты.

...