手っ取り早く日本語化したい方はこの方法!!
一番簡単なのは japanize_matplotlib
をインストールし、importする方法です。
とりあえずややこしいことはせずに日本語化だけできれば良い方はこの方法
pip install japanize_matplotlib
import matplotlib.pyplot as plt
import numpy as np
import japanize_matplotlib
x = np.arange(-3, 3, 0.1)
y = x * 2
plt.plot(x, y, label='直線')
plt.title('直線グラフ')
plt.legend()
plt.show()

ちょっと上級者向けの日本語化
日本語をタイトルやラベルなどに使うと豆腐文字になってしまいます。
これはmatplotlibで使用しているフォントが日本語に対応していないためです。
解決するには日本語に対応したフォントを使うように設定してやる必要があるわけです。
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(-3, 3, 0.1)
y = x * 2
plt.plot(x, y, label='直線グラフ')
plt.title('直線グラフ')
plt.legend()
plt.show()

やり方には以下のようなものがあります
plt.rcParams['font.family]
で設定する- matplotlibの設定ファイルを書き換える
デフォルトを変えるのでいちいちコードでフォントを指定しなくてもOKだけど他のPCにコードだけもっていってやると文字化けするかも
plt.rcParams[‘font.family’]で設定
rcParamsでは色々な設定ができますが、特にrcParams['font.family']
でfontを設定できます
import matplotlib.pyplot as plt
plt.rcParams["font.family"] = "Hiragino sans"
x = [1, 2, 3, 4, 5, 6]
y = [3, 5, 1, 9, 7, 2]
plt.plot(x, y)
plt.title('折れ線グラフ')
plt.show()

rcParamsについてはこちらの記事をご覧ください。
matplotlibの設定ファイルを書き換える
matplotlibにはmatplotlibrc
という設定ファイルがあるのですが、
この設定ファイルを書き換えることで、いちいちコードで日本語フォントを指定する必要がなくなります
matplotlibrc
がどこにあるかというと、以下のコードで確認できます
import matplotlib
print(matplotlib.matplotlib_fname())
#/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
人によって場所は違うと思いますが、僕はこんな感じでした
そしてmatplotlibrc
を開くとこんな感じで色々と書かれていますが、#font.family
の後に記載されているフォントを変更することでデフォルトのフォントを変更することができるのです

#font.family: sans-serif
⬇︎
#font.family: Hiragino sans
と書き換えて、保存しましょう(Hiragino sansが使えない場合は適宜日本語の使えるフォントにしてください)
import matplotlib.pyplot as plt
print(plt.rcParams['font.family'])

コメント