web-dev-qa-db-ja.com

matplotlib pythonインラインon / off

Matplotlibをインライン化してipythonノートブックを起動した場合、inlineコマンドを使用せずにノートブックをリロードすることなく、「標準」のインライン化されていない方法で表示するように図をプロットする方法はありますか?いくつかの図をノートブックにインライン化できるようにしたいのですが、他の図はズームとパンができる従来のインタラクティブモードにしたいです。

48
user2379888

%matplotlib <backend>でmatplotlibのバックエンドを切り替えることができます。システムのデフォルトのバックエンドに戻すには、%matplotlib autoまたは単に%matplotlibを使用します。

gtkqtnotebookなど、多くのバックエンドが利用可能です。個人的にはnotebook(別名nbagg)バックエンドを強くお勧めします。 inlineに似ていますが、インタラクティブで、Jupyter内からのズーム/パンが可能です。

詳細については、次を試してください:?%matplotlib IPython/Jupyter内または IPythonのオンラインドキュメント

38
Gustavo Bezerra

plt.ioff()およびplt.ion()は、バックエンドとしてnotebookを持つJupyterノートブックのチャームのように機能します(通常のimport matplotlib.pyplot as pltを想定)。

7
mattmilten

Matplotlibの正確な構成によって異なりますが、インラインと「osx」、「qt4」、「qt5」、「gtk3」、「wx」、「qt」、「gtk」、「tk」のいずれかを切り替えることができます(一部は他のエイリアスです)。単に%matplotlib <the one you want>を使用して切り替えます。条件に応じて、これらの1つにのみアクセスできます。

6
Matt

別の可能性は、matplotlib.pyplot.close(fig)を使用することです。 %matplotlib autoが恐ろしいwxエラー(LD_LIBRARY_PATHにインストールしたGTK開発ファイルのバージョンに関連する)を発生させても、これは機能します。

あなたがビデオを作るようなことをしている場合、これは問題を引き起こす可能性がありますが(またはそうではないかもしれません;試していない)、IPython.display.HTML per この答え

5
tsbertalan