Jupyter (Notebook)からPlutoへ
7月は個人的にはいろいろと面白いカンファレンスがありました。7月頭にScientific PythonのSciPy2020, 翌週にGIS関連のESRI UC 2020, 最後の週にJuliaのJuliaCon 2020です。 コロナウイルスの影響で全てVirtualでしたが、おかげでSciPy2020の75ドルを除いてJuliaConも無料でしたから参加した人も多かったかもしれません。ただVirtualなだけに時間はアメリカに合わせた形。日本からの参加者にはきつかったかもしれませんね。でも現在はほぼ全てがYoutubeで見ることが可能なはずです。
ここではJuliaCon2020で興味深かったものを簡単に紹介しようと思います。
今回、即インストールして試してみたのが、Pluto.jlです。「個人的には」大当たりです。
Python使っている人ならご存知のJupyter notebookですが、オンライン上で使えるGoogle ColabやAzure notebook、現時点ではベータ版ですが面白い存在のDeepnoteなど、それぞれちょっと違った味付けをしてnotebookが提供されています。Google ColabでしたらGoogle DriveがマウントできたりとかTPUが使えるとかですかね。DeepnoteはGitlabやDatabaseとの連携などいろんな機能がどんどん追加されています(登録後すぐにお願いしてみましたがとうとうJuliaも使えるようになりました)。昨年発表されたESRI ArcGIS Notebookもより便利になっており、全世界のユーザーからサーバーにアップされた様々なGeospatial Dataが簡単にインポートできたりNotebookをcronやTask Schedulerのようなスケジューリングが簡単にできたりします。これらのように企業ごとにJupyter Notebookを使ったサービスの違いが出てきたなと感じます。
そして今回知ったPluto.jlですが、これもJupyter Notebookの派生といえばそうなります。PythonでJupyter Notebookを使っている人にはあまり目新しさはないのですが、個人的にはこのシンプルでJulia上で動くのがとてもありがたかったのです。
Anacondaやminicondaを使っていろんな環境が作れますから、私が使うArcGIS Proもminicondaを使ってデフォルトとは異なる環境構築をいくつかしています。ArcGIS ProはGeospatial関連のPython code (arcpy)たくさんあるのでこれをArcGIS Notebookだけじゃなく、普段のJupyter Notebookでも使うためにはちょっと設定が必要になります。ArcGISだけだと問題は全くないのですが、ここにJuliaのIJuliaをインストールなどすると、デフォルトのminiconda、ArcGISのminiconda、IJuliaのminicondaが存在してしまい、インストールする「順番」によってはそれぞれの起動に悪さをします。私はここにハマってArcGIS Notebookが使えない時期がしばらくありました。IJuliaが原因だったのでどうにかしたかったのです。
実際の使い方ですが、Pluto.run(1234)をするだけで、http://localhost:1234でPluto notebookが開けます。
Plutoが起動すると下記のような画面になります。
サンプルがあるのでPlotsを開いてみると、開くと同時に全てのコマンドが実行されるようです。
実行された結果の一部がこちら。面白いのが結果が下ではなくコードの上に表示されることですね。
残念ながらJupyter Notebookをインポートできるようにはなっていないようですが、PyCallは当然使えるのでここからarcpyをインポートしてみます。
これは個人的にはかなり使えますね。これからが楽しみです。
この記事が気に入ったらサポートをしてみませんか?