web-dev-qa-db-ja.com

空白のヒストグラムを表示する%matplotlibノートブック

Jupyterノートブックでは、%matplotlib notebookの代わりに%matplotlib inlineを使用しています。Jupyterのプロットとやり取りできるのは素晴らしいことです。ただし、ヒストグラムを作成しようとすると、空白のプロットが表示されます。

%matplotlib notebook

%matplotlib inlineを使用すると、すべて正常に動作します: %matplotlib inline

どうしたの?

25
João Abrantes

上記の私のコメントが実際に誰かが問題を解決するのに役立っているのを見て、答えとして投稿します。

この問題は、カーネルを再起動せずに%matplotlib inlineから%matplotlib notebookに切り替えると発生します。

%matplotlib notebookから%matplotlib inlineへの切り替えは正常に機能します。

そのため、解決策はカーネルを再起動するか、新しいノートブックを起動することです。

場合によっては、ノートブックバックエンドの設定を繰り返すのに役立ちます。つまり、次のように2回呼び出します。

%matplotlib notebook
%matplotlib notebook

その理由の分析は this comment にあります。

答えは、必ずしもカーネル全体を再起動することではありません。

Matplotlibモジュールをリロードすると、それも機能します。私のようなPython 3.6を使用し、私のようなimport matplotlib.pyplot as pltがある場合:

from importlib import reload
reload(plt)
%matplotlib notebook

トリックを行います。はい、それはまだハックです。少なくともこれは、ノートブックの中央で使用できる独立したコードセルです。 %matplotlib inlineを介したスイッチバックは問題ではありません。

5
Anderas

問題はスイッチング間の相互作用のようです:

%matplotlib notebook
%matplotlib inline

対話型プロットで図「電源ボタン」を使用する:

enter image description here

Solution:ボタンを押して空白のプロットが表示される場合は、Jupyterを再起動し、電源ボタンを使用しないでください再びnotebookinlineを切り替える必要がある場合

0
Justas