matplotlibで日本語を使った図表を表示してみたら、良く有る豆腐が沢山出てしまった。
まぁ、きっと日本語フォントの問題なんだろうと、ググって1ページ目に出てきたサイトの方法に沿って設定してみた。
1. matplotlibの設定ファイルテンプレートの置き場を確認する
import matplotlib
print(matplotlib.matplotlib_fname())
2. matplotlibのユーザ設定ファイル置き場(?)を確認する
print(matplotlib.get_configdir())
3. 1で表示されたファイルを2のディレクトリにコピーする
cp 1のファイルパス 2のディレクトリ
4. IPAからフォントをダウンロードする
IPAexフォント Ver.003.01(IPAexFont Ver.003.01) | IPAexフォント/IPAフォント
5. 解凍して出てきたttfファイルを1のファイルと同階層にある「fonts/ttf」ディレクトリ以下にコピーする
cp 解凍したディレクトリ/*.ttf 1のファイルディレクトリ/fonts/ttf/
6. 3でコピーした設定ファイルの一番下にフォントを追加する
font.family:IPAexGothic
※ 記載するのはファイル名ではなくフォント名なので注意
他のサイトでは2の場所に有るキャッシュファイルを削除しろと有るが、そもそもキャッシュファイルが無かったのでそのまま実行してみた。
しかし…指定したフォントファイルが見つからないとエラーになる。
1のディレクトリを見ると「fontList.json」と言うあからさまに怪しいファイルが有り、その中には追加したIPAのフォントが記載されていない。
という訳で、削除するのは怖いので、一旦違うディレクトリに移動させて再度実行してみたところ、
UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment. 'Matplotlib is building the font cache using fc-list. '
と言うメッセージが表示されて、その後日本語が表示されるようになった。
良かった。
コメント