LoginSignup
5
6

More than 5 years have passed since last update.

matplotlibで日本語が表示されない時の対応手順

Last updated at Posted at 2016-07-11

環境設定

以下の手順で機械学習の環境をセットアップします。
http://qiita.com/mix_dvd/items/29dfb8d47a596b4df36d

サンプルコードの入手と実行

PyData.Okinawaのデータを使ってグラフを表示させるテストをしてみます。
https://github.com/PyDataOkinawa/meetup001/blob/master/PyData.Okinawa%20Meetup%20001%20opendata%20sample.ipynb

$ git clone https://github.com/PyDataOkinawa/meetup001.git

Jupyter Notebookを起動し、「PyData.Okinawa Meetup 001 opendata sample.ipynb」という名前のノートを開き、カーネルの「Restart & Run all」を実行します。

下の方に表示されるグラフを見ると、日本語の部分が「□」になっています。

Unknown.png

フォントの設定

上記の状態を改善させるためにIPAからフォントをダウンロードし、matplotlib用にインストールします。
※ 環境設定で示したリンク先の手順でインストールしている場合に完全対応しています

以下のページからダウンロードできます。
コマンドでダウンロードできなかった場合はブラウザでダウンロードして下さい。
http://ipafont.ipa.go.jp/old/ipafont/download.html

Ubuntu

$ sudo apt install unzip
$ wget -O ipafont.zip http://ipafont.ipa.go.jp/old/ipafont/IPAfont00303.php
$ unzip ipafont.zip
$ mv IPAfont00303/*.ttf .pyenv/versions/anaconda2-4.0.0/lib/python2.7/site-packages/matplotlib/mpl-data/fonts/ttf/
$ rm .cache/matplotlib/fontList.cache

Mac

まず、フォントキャッシュを削除するため所在地を確認します。
フォントキャッシュの場所は以下のコードで確認します。

import matplotlib
from matplotlib import rc
print(matplotlib.get_cachedir())

僕の場合は、「/Users/[ユーザー名]/.matplotlib」でした。

$ cd
$ curl -o ipafont.zip http://ipafont.ipa.go.jp/old/ipafont/IPAfont00303.php
$ unzip ipafont.zip
$ mv IPAfont00303/*.ttf .pyenv/versions/anaconda2-4.0.0/lib/python2.7/site-packages/matplotlib/mpl-data/fonts/ttf/
$ rm .matplotlib/*.cache

スクリプトの修正

以下の部分を変更します。

変更前
font = {'family':'Osaka'}
rc('font', **font)
変更後
font = {'family':'IPAGothic'}
rc('font', **font)

ちなみに、どこかに以下のコードも入れておかないとエラーが出ますので、上記コードの前に入れておくことをお奨めします。

from matplotlib import pyplot

再実行

無事に日本語が表示されました。

Unknown2.png

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6