私はこれらのパッケージをかなり長い間動作させるように努めてきましたが、成功しませんでした。基本的にエラーは:
GraphViz's Executables not found
編集:私はlog元々エラーのある端末を投稿していませんでした。私はUbuntu今使用しているので、過去に取得したものとまったく同じエラーを再現することはできません(1年前、これまでははるかに遠い...)。ただし、現在の設定で同様のエラーが発生しています。で仮想環境を使用しているときでもpipenv。エラーは、@张乾元の回答に記載されている行に起因するようです:
Traceback (most recent call last):
File "example.py", line 49, in <module>
Image(graph.create_png())
File "/home/philippe/.local/lib/python3.6/site-packages/pydotplus/graphviz.py", line 1797, in <lambda>
lambda f=frmt, prog=self.prog: self.create(format=f, prog=prog)
File "/home/philippe/.local/lib/python3.6/site-packages/pydotplus/graphviz.py", line 1960, in create
'GraphViz\'s executables not found')
pydotplus.graphviz.InvocationException: GraphViz's executables not found
私がインストールしようとしたGraphViz2種類の方法を経由して:経由pip install graphvizとを通じて.msiパッケージ(ともインストールしようpydot、pydotplusとgraphviz多くの異なる順序で)。
私が実行しようとしているコードは、単にIris Datasetのdot-to-pngコンバーターです。
from sklearn.tree import DecisionTreeClassifier
import sklearn.datasets as datasets
from sklearn.externals.six import StringIO
from sklearn.tree import export_graphviz
import pandas as pd
import pydotplus
from IPython.display import Image
iris = datasets.load_iris()
df = pd.DataFrame(iris.data, columns = iris.feature_names)
y = iris.target
dtree = DecisionTreeClassifier()
dtree.fit(df,y)
dot_data = StringIO()
export_graphviz(
dtree,
out_file = dot_data,
filled = True,
rounded = True,
special_characters = True
)
graph_1 = pydotplus.graph_from_dot_data(dot_data.getvalue())
Image(graph_1.create_png())
でJupyter NotebooksとでAtom、システムが探しているように見えるGraphViz内部のpydotplusそれが指すように、~\Anaconda3\lib\site-packages\pydotplus\graphviz.py。それは逆にしてはいけませんか?
最後に、私はすでにを使用GraphVizしてシステムのパスを追加しようとしたことを指摘したいと思います。PATHC:\Users\Philippe\Anaconda3\Library\bin\graphviz
pipenv、まだ適切に確認していません。virtualenvDocker Containers