LoginSignup
6

More than 3 years have passed since last update.

Docker上のJupyter Notebookのmatplotlibの日本語文字化けを解決する

Posted at

はじめに

様々な環境でjupyterを使うたびに日本語文字化け問題に苦しんでいる気がします。
今回は解決策がドンピシャのものがなかったので、記録します。

概要

Docker上のJupyter Notebookのmatplotlibの日本語文字化けを解決する。
(Dockerfileに追記する形で進めます。)

ポイント

  1. フォントファイルの置き場所を確認する
  2. フォントのダウンロード
  3. 確認した場所にフォントファイルを置く
  4. matplotlibの設定ファイルの場所を確認
  5. matplotlibのフォントを設定
  6. キャッシュの場所確認
  7. キャッシュを削除

作業

1.フォントファイルの置き場所を確認する

jupyter上で確認。


import matplotlib.font_manager as fm
fm.findSystemFonts()

['/ファイル置き場PATH/なんとか.ttf',
'/ファイル置き場PATH/なんか.ttf'] のように表示されると思います。(3で使う)

2. フォントのダウンロード

IPAexフォントから「IPAexゴシック」をダウンロード。
Dockerfileと同じディレクトリにipaexg.ttf置いておく。

3. 確認した場所にフォントファイルを置く

Dockerfileに追記。

COPY ipaexg.ttf  /ファイル置き場PATH(1で確認)/

4. matplotlibの設定ファイルの場所を確認

jupyter上で確認。


import matplotlib
matplotlib.matplotlib_fname()

'/設定置き場PATH/matplotlib/matplotlibrc'のように表示されると思います。(5で使う)

5. matplotlibのフォントを設定

Dockerfileに追記。

RUN echo 'font.family : IPAexGothic' >> /設定置き場PATH/matplotlib/matplotlibrc

6. キャッシュの場所確認

jupyter上で確認。


import matplotlib as mpl
mpl.get_configdir()

'/キャッシュ置き場PATH/.cache/matplotlib'のように表示されると思います。(6で使う)

7. キャッシュの削除

!rm -r /キャッシュ置き場PATH/.cache/matplotlib

おわり

スクリーンショット 2020-07-11 1.27.04.png

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
6