Python の matplotlib でつくる図に 日本語文字を表示する

Python の matplotlib で作図するとき、図の中に、日本語の漢字や かな を入れることが できるかどうか、また、どのようにすればできるかは、 OS や、Python処理系のインストールされかたによってちがう。

日本語フォントを指定する

OS に、TrueType というフォントファイル形式で、 日本語の文字の字形をふくむフォントが設定されていれば、 そのフォント名を指定してやれば、表示できることがおおい。

指定するフォント名

MS Windowsの日本語版をつかっているばあい
「MSゴシック」のフォントを指定してやればよい。 ただし、フォント名は日本語文字ではなくASCIIで「MS Gothic」などのように指定する。 (もし「MS明朝」を指定したいならば「MS Mincho」である。)
Linux のうち Ubuntu 22.04 (hamana), 24.04 (niigata) のばあい
Noto Sans CJK JP」を指定する。

どこに指定するか

plt.text, set_title など
() の中に 「, fontfamily='MS Gothic'」などをつけくわえればよい。
[fontfamily としたところは fontname でも可能であり、増田がまえにつくったプログラム例ではそうなっているが、 fontfamily としたほうが柔軟な対応ができるようなのでこちらを紹介することにした。]
legend
() の中に「, prop = {"family" : "MS Gothic"}」などをつけくわえればよい。
プログラムのはじめで一括指定する方法
「import matplotlib.pyplot as plt」の後 (直後がよい) に、 「plt.rcParams['font.family'] = 'MS Gothic'」という文を置く。

各プログラム内ではなく、ユーザーごとの matplotlib 設定を記述するファイル matplotlibrc で 指定する方法もある。(わたしはまだ動作確認できていない。)

参考

この件については、つぎのウェブページを参考にした。


2022-05-09, 2025-09-09
増田 耕一 (MASUDA Kooiti)
増田の個人サイトでの [計算機を利用した気象分野の教材のページ] [立正大学の授業用の教材ページ] [教材目録ページ] [日本語入り口ページ] [ホームページ]