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
うまく動作しますが、インタラクティブなプロットが必要です。
Georgyの提案 に従って、これはNode.jsがインストールされていないことが原因でした。
nodejs
をインストールします(例: conda install nodejs
。ipympl
をインストールします(例: pip install ipympl
。pip install --upgrade jupyterlab
。]export JUPYTERLAB_DIR="$HOME/.local/share/jupyter/lab"
。]拡張機能をインストールします。
jupyter labextension install @jupyter-widgets/jupyterlab-manager
jupyter labextension install jupyter-matplotlib
ウィジェットを有効にします:jupyter nbextension enable --py widgetsnbextension
。
%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
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