Jupyter widgets の検討
「Jupyter notebook でグラフをグリグリできると良いな」とwidgetsのページを見ながら考えていたので、 検討してみました。
結果として現状標準機能は自分の用途には合わず、Jpyter Labに期待という感じです。
JupyterはRとbashのみにしたかったのですが、widgetsはpythonでしか使えないようです。 RではShiny*1を使った方が確実だと思います。
何はともあれ実践 ipywidgets
またQiitaですね。いい加減アカウント作った方が良いかもしれません。
まず、これらの記事をみて思うのは、 「ほうほう、これでsin curveをグリグリできるんだね」
じゃ、まずnoteをダウンロードしてみよう。 参照した記事はすでに1年以上経過しているので、packageの変更があったようなので 合わせて名称を変更します。
IPython.html.widgets -> ipywidgets IntSliderWidget -> IntSlider
動きました。動くのですが( ^ω^)・・・、でも期待していたものと何か違います。
お分かりいただけるでしょうか?
実はスライダーを動かす度に画像が連続的に生成されてしまうのです。 これらはパラメータ3つ動かしたときにできた画像です。 セルの書き換え命令とか個別にあるのかもしれないのですが、以下のような記事を見つけました。
……標準機能の可能性が高そうですね。とりあえず、これ以上の追及はやめておきます。
ただニーズは高そうな機能なので、公式ページなどにはこれらを wrap したパッケージ bqplot (開発元 bloomberg)などもあり、 こちらの方が高機能かもしれません。 ダウンロードしてexampleに一部動かないものがありました。
現段階ではJupyter上でwidgetを使うのは実用性が乏しいかもしれません。 bqplotの詳細などが分かったら、また記事にするかも。
mybinder が復活していたので確認。期待していたタイプのものはなかった残念。 また kernel が python2であった。 conda のバージョンを上げたら notebook が5.0になっていた何か違うのだろうか?