![見出し画像](https://assets.st-note.com/production/uploads/images/32513122/rectangle_large_type_2_8db9ca96acbe39781ddf1c89fcbe165a.jpeg?width=1200)
【python】sklearnの決定木モデルの可視化画像で日本語を使用する方法【画像で解説】
タイトルそのままです
使用環境
・Windows10 Home
・ Python 3.7.7
・scikit-learn==0.22.1
・pydotplus==2.0.2
・graphviz version 2.38.0 (20140413.2041)
ざっくり説明
Q:そもそもなんで日本語が豆腐になるのか?
A:pydotplusがデフォルトで呼び出してるgraphvizのfontが、
日本語に対応していない
Q:"豆腐"とは?
A:これ
手順
1. sklearnの_export.pyまでの絶対PATHを確認する
以下のコマンドを実行する
import sklearn.tree._export
print(sklearn.tree._export.__file__)
出力結果
C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\sklearn\tree\_export.py
私の環境では、
C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\sklearn\tree に _export.py があるそうだ
2._export.pyを開く
エクスプロ―ラーを起動、上記のPATHのtreeまでをコピペする
_export.pyの行の上で右クリック > プログラムから開く
「その他のアプリ」をクリック
「メモ帳」をクリック > 【OK】ボタンをクリック
3. _export.py の該当部分のコードを直接書き換える
以下、メモ帳アプリでの操作
「編集」をクリック > 「検索」をクリック
検索BOXに"fontname"と記入 >【次を検索】をクリック
検索した文字列が色反転される
赤線部分を2ヵ所書き換える
・変更前:fontname=helvetica
・変更後:fontname=Sans
「ファイル」をクリック >「上書き保存」をクリック
<これで作業は終了>
日本語化されているか確認
ちゃんと日本語が表示された
参考URL
Pythonでimportしたモジュールの場所を調べる
・https://minus9d.hatenablog.com/entry/2014/08/23/204931
Python3でscikit-learnの決定木を日本語フォントで画像出力する方法のまとめ
・https://own-search-and-study.xyz/2016/08/16/python3でscikit-learnの決定木を日本語フォントで画像出力する/