matplotlib-fontja
matplotlibを日本語表示に対応させます。
uehara1414さんのjapanize-matplotlibをフォークし、Python 3.12以降でも動作するよう修正したものです。変更点の詳細についてはCHANGELOGをお読みください。
利用方法
matplotlibをimportした後、matplotlib_fontjaをimportします。
import matplotlib.pyplot as plt
import matplotlib_fontja
plt.plot([1, 2, 3, 4])
plt.xlabel('簡単なグラフ')
plt.show()
インストール
pip install matplotlib-fontja
pipenv install matplotlib-fontja
poetry add matplotlib-fontja
rye add matplotlib-fontja
rye sync
利用フォント
IPAexゴシック (Ver.004.01) を利用しています。
利用にあたってはIPAフォントライセンスv1.0に同意してください。
FAQ
import matplotlib_fontja
したのに日本語表示になりません #1
import matplotlib_fontja
してからmatplotlibでグラフを描画するまでにフォントの設定が変わる処理が入っていると、日本語表示がなされない可能性があります。
例えば、seabornを利用している場合であればsns.set()
などで描画フォントが seaborn のデフォルトに上書きされ、日本語表示がされなくなります。
sns.set(font="IPAexGothic")
のように利用フォントにIPAexGothic
を設定するか、フォント上書き後にmatplotlib_fontja.japanize()
を利用するなどで日本語表示できるはずです。
importのみして利用されないコードなのでフォーマッターに消されてしまいます
リンターなどの警告が気になる・コードを消される方向けにmatplotlib_fontja.japanize()
メソッドの実行でもimport時と同じくフォントを設定できるようになっています。
無意味な実行になりますが、時と場合に応じて実行してください。
もしくはリンターごとに無視させる設定をすることで対応できるはずです。# noqa
などで設定してください。
なぜインストール時はmatplotlib-fontja
でimport時はmatplotlib_fontja
なのですか?
チェインケースが読みやすく好きだからです。import時にはチェインケースは利用できないのでスネークケースになっています。