matplotlibをOSXのpyenv仮想環境下で使用するには。

matplotlibを使いたかっただけなのに、まさかトラブるとは思っていませんでした…。

ちょと前まで普通に使えていたはずなのですが、そういえばSSD換装後にOSXを再インストールして以降、使った覚えがない。

pyenv環境下でmatplotlibを使用するためには色々と下準備が必要ということを今更知り、とりあえず解決したので、その備忘録です。

import matplotlibでいきなり警告

pip install matplotlibは何事もなく成功するのですが、import matplotlibでおもむろに警告が出力されます。

が、これは問題ありません。

フォントのキャッシュを作ってるのでしばし待てと。

OSX再インストール前にも表示されたかどうかは… うーん、記憶にない。

そしてRuntimeError

フォントキャッシュ作成を待つこと数分の後、出ました、エラー。

仮想環境下でmatplotlib使うには、どうも何か下準備が必要そうです。

Matplotlib FAQを見ろとあったので、ググってみたところ、ありました。

matplotlibの問題ではないと前置きした上で(そこ強調するよね)、GUIフレームワークとのインタラクションのためにおまじないが必要なのだそう。

OSXの場合は、以下のリンクを参照してくださいとのこと。

しっかりpyenv環境下での対処法が記載されています。

RuntimeError解決方法

--enable-frameworkオプションを有効にした上でインストールせよとのこと。

やってみます。

インストールは普通に完了したので、必要なパッケージをインストールします。

エラーなく動きました… が、imshowした後にウィンドウが表示されるはずが、何も表示されない…。

ipython notebookでブラウザ表示できればいいか…。

まとめ

とりあえず、RuntimeErrorなしにpyenv環境下でmatplotlibが使えるようになりました。

plt.imsave()すれば、バッファ上に確保した画像データをpngファイルに吐き出すこともできたので、当面は問題なさそうです。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする