本記事では、JupyternotebookでPythonのグラフを書く際、グラフのタイトル、ラベル、凡例が文字化けして、正常に日本語で表示できない場合の解決方法をご紹介します。
Pythonの実行環境
今回は、以下の実行環境でプログラムを実行しています。
・Python 3.7.6
・Jupyterlab 1.2.6
・NumPy:1.18.1
・matplotlib:3.3.2
Pythonでグラフのタイトル、ラベル、凡例が文字化けし日本語表示できない事象
Pythonでは初めての頃は、まずmatplotlibというライブラリでグラフを書くのが一般的です。
それでは、次のコードで基本的なグラフを書いてみようと思います。
まずは今回使うライブラリをインポートします。
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
次にグラフを書く記述をします。今回は、y=2xの一次関数のグラフを書きます。
#xとyを定義
x = np.array([-2, -1, 0, 1, 2])
y = 2 * x
#線グラフを書く。凡例は「y=2xの凡例」とする
plt.plot(x, y, label='y=2xの凡例')
#グラフとのタイトルは「1次関数のグラフ」
plt.title('1次関数のグラフ')
#xとyのラベルを表示
plt.xlabel('x軸')
plt.ylabel('y軸')
#凡例を表示
plt.legend()
これを実行すると、次の結果になります。
英数字はちゃんと表示されているようなのに、日本語は文字化けしています。
それでは、一瞬で解決する方法を見ていきます。
Pythonでグラフのタイトル、ラベル、凡例を日本語にする方法
日本語を表示する方法は、次の2つで完了です。
1. japanize-matplotlibをインストールする
JupyterNotebook(JupyterLab)では、新規ロンチャーから「コンソール」を開きます。
コンソールで、次のコマンドを実行し、japanize-matplotlibをインストールします。
pip install japanize-matplotlib
真ん中は、ハイフン(-)になることに注意ください。
そうすると、次のようにインストールが開始します。
次のメッセージが出れば、インストール正常に完了してます。
Successfully installed japanize-matplotlib-1.1.3
Note: you may need to restart the kernel to use updated packages.
2. japanize-matplotlibをインポートする
あとは、ライブラリのインポートの際、次を加えるだけです。
import japanize_matplotlib
次は真ん中は、アンダースコア( _ )になります。
再度、先ほどの同様に次のグラフ作成のコードを実行すると、正常にタイトル、ラベル、凡例が日本語で表示されます。
以上、Pythonでグラフのタイトル、ラベル、凡例を日本語にする方法を説明してきました。
最後まで読んでいただき、ありがとうございました。