web-dev-qa-db-ja.com

jupyterlabインタラクティブプロット

JupyterノートブックからJupyterlabを使用しています。私が使用していたノートブックでは:

import matplotlib.pyplot as plt
%matplotlib notebook
plt.figure()
x = [1,2,3]
y = [4,5,6]
plt.plot(x,y)

インタラクティブなプロット用。これは今私に(jupyterlabで)与えます:

JavaScript output is disabled in JupyterLab

私も魔法を試してみました( jupyter-matplotlib インストール済み):

%matplotlib ipympl

しかし、それは単に返します:

FigureCanvasNbAgg()

インラインプロット:

%matplotlib inline

うまく動作しますが、インタラクティブなプロットが必要です。

19
Albatross

Georgyの提案 に従って、これはNode.jsがインストールされていないことが原因でした。

5
Albatross

手順を完了する

  1. nodejsをインストールします(例: conda install nodejs
  2. ipymplをインストールします(例: pip install ipympl
  3. [オプション、ただし推奨。 JupyterLabの更新、例:.
    pip install --upgrade jupyterlab。]
  4. [オプション、ただし推奨。ローカルユーザーインストールの場合、次を実行します。
    export JUPYTERLAB_DIR="$HOME/.local/share/jupyter/lab"。]
  5. 拡張機能をインストールします。

    jupyter labextension install @jupyter-widgets/jupyterlab-manager
    jupyter labextension install jupyter-matplotlib
    
  6. ウィジェットを有効にします:jupyter nbextension enable --py widgetsnbextension

  7. JupyterLabを再起動します。
  8. %matplotlib widgetで飾り付けます。

推奨されていませんが、やみくもにAnacondaでウィジェット拡張機能を動作させるには、ターミナルウィンドウで次のコマンドを実行できます。

conda install -y nodejs
pip install ipympl
pip install --upgrade jupyterlab
jupyter labextension install @jupyter-widgets/jupyterlab-manager
jupyter labextension install jupyter-matplotlib
jupyter nbextension enable --py widgetsnbextension
7
Mateen Ulhaq

Jupyter-matplotlibバックエンドを有効にするには、matplotlib Jupyterマジックを使用します。

%matplotlib widget
import matplotlib.pyplot as plt
plt.figure()
x = [1,2,3]
y = [4,5,6]
plt.plot(x,y)

詳細はこちら GitHubのjupyter-matplotlib

Screenshot Jupyter Lab

5
John