pythonで作るグラフの日本語表示
事前にIPAなどの日本語対応フォントをインストールしておくこと。
zipダウンロードしたら解凍して.ttfファイルを右クリックからインストールでOK.
独立行政法人 情報処理推進機構
デフォルトのフォントであるsans-serifからIPAGothicやIPAMinchoなどにしなければならない。
やり方は以下の二つ
- ~/.matplotlib/matplotlibrcを弄る
- スクリプトの最初でフォント変更の宣言
~/.matplotlib/matplotlibrcを弄る
matplotlibrcとは、matplotlibの設定ファイルのこと。
import matplolibを行ったときに実行される。
~/.matplotlib以下のディレクトリにmatplotlibrcの名前で保存しておくと、matplotlibのインポート時に読み込んでくれる。
どのrc設定ファイルが有効であるかは、次のコードで調べる。
>>> import matplotlib as mpl
>>> mpl.matplotlib_fname()
'C:\\Users\\python\\.matplotlib\\matplotlibrc'
書き込む内容は以下の通り。
最初にも書いたようにこの場合はIPA明朝がインストールされていること。
それ以外のフォントでもできるはず。名前は調べてください。
font.family : IPAMincho
startup.ipyに注意
スタートアップ時にmatplotlib.pyplotと同時にseabornを起動している場合は以下の操作も行う。
seabornの設定
seabornインポートしているときは、C:\tools\Anaconda3\Lib\site-packages\seaborn\rcmod.pyのrcmod.pyのset関数のデフォルト値のfontを"sans-serif"から"IPAMincho"などに変更する。
def set(context="notebook", style="darkgrid", palette="deep",
font="IPAMincho", font_scale=1, color_codes=False, rc=None):
スクリプトの最初でフォント変更の宣言
import matplotlib as mpl
mpl.rcParameters['font.family'] = 'IPAMincho'
sns.set(font=['IPAMincho'])
フォントキャッシュの更新
設定をちゃんとしたのになんかうまくいかんな、ってときは以下のコマンドでフォントキャッシュを更新するとうまく行くことがある。
import matplotlib as mpl
matplotlib.font_manager._rebuild()