2020年6月13日土曜日

Matplotlibで日本語が表示されないからフォントを追加

目的

Matplotlibの初期フォントでは日本語を表示すると豆腐になるため、それを修正する方法


準備

IPAフォント

ここからIPAexゴシックをダウンロード

中身にあるipaexg.ttfをRaspberry piに持っていく


インストール

下記で行っていることは、フォントをダウンロードして来たものに置き換える

その後に設定ファイルをローカルにコピーして、その設定ファイルのフォントをダウンロードしたものを使用するように書き換える

最後に、cacheを削除して、フォント定義をリセットする

 $ cp ipaexg.ttf /home/pi/.local/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/
$ cp /home/pi/.local/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc /home/pi/.config/matplotlib/
$ vim /home/pi/.config/matplotlib/matplotlibrc
#font.family : sans-serif
font.family : IPAexGothic
$ rm -rf /home/pi/.cache/matplotlib/

その他

設定ファイルがどこにあるかわからない場合はpython上で確認する

python3
Python 3.7.3 (default, Dec 20 2019, 18:57:59) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib
>>> matplotlib.get_configdir()
'/home/pi/.config/matplotlib'
>>> import matplotlib
>>> matplotlib.matplotlib_fname()
'/home/pi/.config/matplotlib/matplotlibrc'