質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1647閲覧

【Python】Graphvizファイル作成時にファイルフォーマットが認識されず出力エラー

4r1t0

総合スコア1

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/08/02 02:41

前提・実現したいこと

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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Anacondaを使用しているようですので、pipによるインストールおよび環境変数の設定は一度削除して、condaコマンドにより再インストールする方が良いです。

terminal

1pip uninstall graphviz 2conda install graphviz

投稿2020/08/02 04:46

yymmt

総合スコア1615

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

4r1t0

2020/08/02 13:55

pipによるインストールおよび環境変数の設定は一度削除して、condaコマンドにより再インストールした上で、ダウンロードしたgraphvizフォルダのbinに再度システム環境変数のPathを繋ぎ直したところ、pdf,pngのファイルを出力することができました。 迅速な回答を頂きありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問