最近は、Jupyter Notebookを使っていますが、それと似たようなものでJupyterLabというのがAnaconda Navigatorに前からあったので試しにつかってみました。
Jupyter Notebookと同様にブラウザ上で使うことができるので便利。
さらにツリービュー、ターミナル、エディタもあり、画面分割可能でだいたい一通りのことができます。
Anaconda Navigatorからすぐにインストール(不要ならアンインストール)できるので試してみるにはよさそう。
かなりJupyter Notebookからは進化しているのですが、まだベータ版のようです。
右クリックでコピペできない:
ということでしばらく使っていると、やはりベータ版なのか多少不便な点が。
まず、マウス右クリックでコピペがメニューに出てこない。右クリックすると、以下のようなメニュー。
セル単位でのコピペは可能。しかし単語や行だけのコピペはできないために、仕方なくキーボードでCtrl+C、Ctrl+Vを入力するしかない。なんとメニューバーにすらない。
もうひとつとして、せっかくターミナルも同一画面上で使用できるのにもかかわらず、同様に右クリックだけではコピペできない。そのかわり、シフトキーを押しながらの右クリックならメニューが出てくる(以下)。
つい癖で右クリックしてみたものの、コピペできないということが少しストレスを感じてしまいます。改良されないのでしょうか?
%matplotlib nbaggが使えない:
Jupyter notebookではplt.plot()で表示するするとき、%matplotlib inlineを使いますが、アニメーションなどを表示するには、%matplotlib nbaggを使っています。しかしnotebookのほうでは使えるけれども、JupyterLabのほうだと、Javascriptエラーがでてしまいます。
事前にnodejsとnpmをインストールしておき、notebookとjupyterlabをアップデート、さらにipympl、jupyter-matplotlibをインストールとのこと。
しかし、それでもなぜかエラーがでてしまいます。このページでも話されていることなのですが、まだダメっぽい。
また、%matplotlib nbaggを使っても、
こんな感じのエラーがでてしまいます。%matplotlib ipymplを使うともっとひどいエラーがでてしまい、jupyter-matplotlibがダメみたい。何回かインストールし直してみましたが改善されないので、今回は保留。
ということから、結構使い勝手はよくなっているJupyterLabなのですが惜しい。ベータ版なので仕方ないのかもしれませんが、しばらく待ってみることにします。
そもそも、Jupyter Notebookなら特に問題ないので、今まで通りJupyter Notebookでいいかと。
しかし、その後、jupyter-matplotlibのサイトをみると、
It requires matplotlib 2.0 or and ipywidgets 7.0 more recent.
と書いてあることからチェックしてみると、ipywidgetsのバージョンが低いことが判明。さっそくアップデートしてみました。
すると、いままで%matplotlib nbaggではだめだったgifアニメーション制作が可能になりました。
そして、上のようにバックエンドを確認してみたところ、いままではnbAggと出力されていたのが、'module://ipykernel.pylab.backend_inline'になっていました。少しだけ進展したのですが、あいかわらずアニメーション自体は表示されず、もう少しというところ。しばらくすれば、また進展あるかも。
要は、このようなアニメーションをJupyterLab上で表示させたいのですが、一コマごとに出力したpngファイルを順番に表示することができずにいるということです。このアニメーションはpngを束ねてgifアニメにしたものですが、それも表示できません。バージョンアップによって制作はできるようになったので、よかったのですが惜しい。もちろんJupyter Notebook上では表示も制作も問題ないというわけです。
その後もう少しやってみると、どうやらJupyterLabではmatplot.animationを使う場合、アニメーション出力はHTML(ani.to_html5_video())を使うと大丈夫でした。もうひとつHTML(ani.to_jshtml())というのもあるのですが、こちらはダメみたい。Jupyter Notebookではどちらとも大丈夫ですが、JupyterLabの場合はHTML(ani.to_html5_video())を使ったほうがよさそうです。
追記:
その後、GIFアニメーションの作成+読込み+再生について実験してみました。
Jupyter Notebookと同様にブラウザ上で使うことができるので便利。
さらにツリービュー、ターミナル、エディタもあり、画面分割可能でだいたい一通りのことができます。
Anaconda Navigatorからすぐにインストール(不要ならアンインストール)できるので試してみるにはよさそう。
かなりJupyter Notebookからは進化しているのですが、まだベータ版のようです。
右クリックでコピペできない:
ということでしばらく使っていると、やはりベータ版なのか多少不便な点が。
まず、マウス右クリックでコピペがメニューに出てこない。右クリックすると、以下のようなメニュー。
セル単位でのコピペは可能。しかし単語や行だけのコピペはできないために、仕方なくキーボードでCtrl+C、Ctrl+Vを入力するしかない。なんとメニューバーにすらない。
もうひとつとして、せっかくターミナルも同一画面上で使用できるのにもかかわらず、同様に右クリックだけではコピペできない。そのかわり、シフトキーを押しながらの右クリックならメニューが出てくる(以下)。
つい癖で右クリックしてみたものの、コピペできないということが少しストレスを感じてしまいます。改良されないのでしょうか?
%matplotlib nbaggが使えない:
Jupyter notebookではplt.plot()で表示するするとき、%matplotlib inlineを使いますが、アニメーションなどを表示するには、%matplotlib nbaggを使っています。しかしnotebookのほうでは使えるけれども、JupyterLabのほうだと、Javascriptエラーがでてしまいます。
JavaScript output is disabled in JupyterLabしかし、このページにいくつか対処策があるようです。
conda install notebook jupyterlab # for updating jupyter notebook and lab pip install ipympl jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-matplotlib
事前にnodejsとnpmをインストールしておき、notebookとjupyterlabをアップデート、さらにipympl、jupyter-matplotlibをインストールとのこと。
しかし、それでもなぜかエラーがでてしまいます。このページでも話されていることなのですが、まだダメっぽい。
また、%matplotlib nbaggを使っても、
こんな感じのエラーがでてしまいます。%matplotlib ipymplを使うともっとひどいエラーがでてしまい、jupyter-matplotlibがダメみたい。何回かインストールし直してみましたが改善されないので、今回は保留。
ということから、結構使い勝手はよくなっているJupyterLabなのですが惜しい。ベータ版なので仕方ないのかもしれませんが、しばらく待ってみることにします。
そもそも、Jupyter Notebookなら特に問題ないので、今まで通りJupyter Notebookでいいかと。
しかし、その後、jupyter-matplotlibのサイトをみると、
It requires matplotlib 2.0 or and ipywidgets 7.0 more recent.
と書いてあることからチェックしてみると、ipywidgetsのバージョンが低いことが判明。さっそくアップデートしてみました。
すると、いままで%matplotlib nbaggではだめだったgifアニメーション制作が可能になりました。
そして、上のようにバックエンドを確認してみたところ、いままではnbAggと出力されていたのが、'module://ipykernel.pylab.backend_inline'になっていました。少しだけ進展したのですが、あいかわらずアニメーション自体は表示されず、もう少しというところ。しばらくすれば、また進展あるかも。
要は、このようなアニメーションをJupyterLab上で表示させたいのですが、一コマごとに出力したpngファイルを順番に表示することができずにいるということです。このアニメーションはpngを束ねてgifアニメにしたものですが、それも表示できません。バージョンアップによって制作はできるようになったので、よかったのですが惜しい。もちろんJupyter Notebook上では表示も制作も問題ないというわけです。
その後もう少しやってみると、どうやらJupyterLabではmatplot.animationを使う場合、アニメーション出力はHTML(ani.to_html5_video())を使うと大丈夫でした。もうひとつHTML(ani.to_jshtml())というのもあるのですが、こちらはダメみたい。Jupyter Notebookではどちらとも大丈夫ですが、JupyterLabの場合はHTML(ani.to_html5_video())を使ったほうがよさそうです。
追記:
その後、GIFアニメーションの作成+読込み+再生について実験してみました。
0 件のコメント:
コメントを投稿