【matplotlib】import matplotlibでfont cacheについてUserWarningが出る場合

python2.7.10(pyenv)環境下でのJupyter notebookでimport matplotlibしたときにWarningが出た。

Enthought Knowledge Base:Matplotlib 1.5.1: Font Cache Warningの情報でドンピシャに解決したのでシェアします。以下は参考にしたこの記事の大まかな訳です。





Matplotlib 1.5.1で、FontManager()クラスからインスタンスを生成し、 Matplotlibがフォントキャッシュをビルドする際に、以下のようなWarningが表示されます。(例えば、matplotlib.pyplotをインポートするとき)

UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.

このようなWarningはFontManager()のインスタンスが初めて生成されるときだけに表示されますが、インスタンスによっては、新しくビルドされたフォントキャッシュを有効にするために、古いmatplotlibのフォントキャッシュを削除しなければなりません。古いフォントキャッシュを削除するには、Ipythonのプロンプトで以下のコードを実行します。

import matplotlib as mpl
font_cache_path = mpl.get_cachedir() + '/fontList.cache'
%rm $font_cache_path

Warningは、次にmatplotlib.pyplotをインポートしたときに表示されるかもしれませんが、その後は出ないはずです。

Matplotlib 1.5.2にアップデートされたときにはこのエラーは解決されるんじゃないでしょうか。


参考:
Enthought Knowledge Base:Matplotlib 1.5.1: Font Cache Warning
GitHub:Repeated warning about fc-list #5836




【matplotlib】import matplotlibでfont cacheについてUserWarningが出る場合” への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です