前提・実現したいこと
Jupyterでワインデータセットの決定木モデルのファイル作成中に、以下のエラーメッセージが発生し、フォルダにファイルは作成されるのですが、ファイルがAcrobatReaderでサポートされていないか、破損しているためというエラーメッセージが出て開けません。
同様のエラーはpngファイルでも起こります。
発生している問題・エラーメッセージ
InvocationException Traceback (most recent call last)
<ipython-input-5-1110f02aa565> in <module>
3
4 graph = pydotplus.graph_from_dot_data(dot_data) # グラフを描画
----> 5 graph.write_pdf('wine.pdf') #PDFを作成
6 graph.write_png('wine.png') #PNGを作成
~\Anaconda3\lib\site-packages\pydotplus\graphviz.py in <lambda>(path, f, prog)
1808 lambda path,
1809 f=frmt,
-> 1810 prog=self.prog: self.write(path, format=f, prog=prog)
1811 )
1812
~\Anaconda3\lib\site-packages\pydotplus\graphviz.py in write(self, path, prog, format)
1916
1917 else:
-> 1918 fobj.write(self.create(prog, format))
1919 finally:
1920 if close:
~\Anaconda3\lib\site-packages\pydotplus\graphviz.py in create(self, prog, format)
2030 raise InvocationException(
2031 'Program terminated with status: %d. stderr follows: %s' % (
-> 2032 status, stderr_output))
2033 elif stderr_output:
2034 print(stderr_output)
InvocationException: Program terminated with status: 1. stderr follows: Format: "pdf" not recognized. Use one of:
該当のソースコード
ライブラリのインポート
%matplotlib inline
import matplotlib.pyplot as plt
import pydotplus
from sklearn.tree import DecisionTreeClassifier
from sklearn.tree import export_graphviz
from sklearn import datasets
from IPython.display import Image
ワインデータのダウンロード
wine = datasets.load_wine()
X = wine.data
y = wine.target
決定木のモデルの訓練
model = DecisionTreeClassifier(criterion='gini', max_depth=2, random_state=0)
モデルの訓練
model.fit(X, y)
DOTフォーマットでデータを作成
dot_data = export_graphviz(model,out_file=None,feature_names=wine.feature_names, class_names=wine.target_names)
graph = pydotplus.graph_from_dot_data(dot_data) # グラフを描画
graph.write_pdf('wine.pdf') #PDFを作成
graph.write_png('wine.png') #PNGを作成
試したこと
Graphviz本体のインストール、環境Pathの設定、pip install graphviz、再起動
下記の質問回答も参照しました
https://teratail.com/questions/211740
補足情報(FW/ツールのバージョンなど)
環境はWindows10、64bit、Python3.8、scikit-learn0.17、graphviz2.38
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/02 13:55