[Python] Matplotlib使ってRuntimeErrorが出る時の対処

Pythonでグラフを描画できる定番パッケージ「Matplotlib」。
Mac OS の新しい環境で試してみたら下記のような、見慣れないエラーが出た。

RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends. If you are using (Ana)Conda please install python.app and replace the use of 'python' with 'pythonw'. See 'Working with Matplotlib on OSX' in the Matplotlib FAQ for more information.

もちろん、

  • モジュールは環境にインストールされている
  • ファイル内でimport matplotlib.pyplot as pltの記述も忘れてない


先人たちの記録をネット上であさっていると、バックエンドのOS指定の記述を変えないといけないらしい。ので書き換える。

(virtualenvを使っている僕の場合)ファイルの場所
~/{Pythonファイルを置いているディレクトリ}/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc -> 38行目付近のbackend : macosx 部分がこれ。

backendでMac OS Xが指定されてる部分をコメントアウト、新しく"TkAgg"と指定する
#backend : macosx backend : TkAgg

これで無事ファイルがRunできた。

Posted at

[data-hatena-bookmark-layout="standard-noballoon" data-hatena-bookmark-lang="ja" title="このエントリーをはてなブックマークに追加"] img [src="https://b.st-hatena.com/images/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="20" height="20" style="border: none;"]