はじめに
- Elixir楽しんでいますか
- elixir.jp Slackで @kikuyuta 先生がおもしろそうなものを紹介されていたのでイゴかしてみます
- この記事は、2021/05/22(土) 00:00 - 2021/05/24(月) 23:59開催のautoracex #29というもくもく会の成果です
Graphing support via VegaLite has arrived to Livebook! https://t.co/ORd2PzQF5s - currently static but dynamic graphs are coming soon!
— Dashbit (@dashbit) May 21, 2021
We are also working on a VegaLite library with support for JSON, PNG, SVG, and PDF exports.#MyElixirStatus pic.twitter.com/uVxaFLRkL3
完成品
- https://livebook.torifuku-kaiou.tokyo/
- パスワードは
enjoyelixirwearethealchemists
です - https://github.com/elixir-nx/livebook/tree/e10f43e5b53a75a857106df04bd45d37629f4ebf
- どうぞご自由にお使いください
- 上のバーに
/home/sammy/livebook/vega_lite_examples.livemd
と入力して、Open
を押してください - 動画と同じブックが開けますので、あとは見出しのすぐそばにカーソルをもっていくと
Evaluate
なるなんだか押せそうなものがでてきますので迷わず押してみてください - あら、びっくりグラフが表示されます
ローカルでのイゴかしかた
-
Mix.install/2というElixir
1.12
から追加された関数を使いますので、1.12
が必要です - これまでHTTPoison等のHexを使うさいに、
mix new hello
なんてやってmix.exs
のdepsを変更して…… といった操作をする必要がありました -
Mix.install/2を使うことで、そういうことを必要なしに、
.exs
の書きなぐりのファイルにいきなりHTTPoisonを導入なんてことが可能になります- @MzRyuKa さんの「Elixir1.12.0-otp-24のMix.install/2でNxライブラリを試してみる」にnxを用いた具体例がありますのでぜひご参照ください
- 手前味噌な記事の「Mix.install/2 で お手軽に依存ライブラリ(Hex) をインストールしてElixirプログラムをイゴかす」もよろしければご参照ください
- そろそろ、Livebookをローカルでイゴかす手順を書きます
-
Dockerを使ってみます
- Docker Hubにあるものは必ずしも最新のimageとはなっていないようなので
git clone
してきて、Dockerfile
でビルドからしてみます
- Docker Hubにあるものは必ずしも最新のimageとはなっていないようなので
$ git clone https://github.com/elixir-nx/livebook.git
$ cd livebook
$ docker build -t livebook/livebook .
$ docker run -p 8080:8080 -e LIVEBOOK_PASSWORD="enjoyelixirwearethealchemists" livebook/livebook
- Visit: http://localhost:8080/
password: enjoyelixirwearethealchemists
- 画面上のほうの
Import
ボタンを押下
-
From clipboard
に、https://github.com/elixir-nx/vega_lite/blob/5cea6289bb18e28376c72497df5a005833924fe3/notebooks/examples.livemd の内容を貼り付けて、Import
- あとは
Evaluate
を押してお楽しみください
Wrapping Up
- Enjoy Elixir