yakataの情報奮闘記

プログラミングの話をします

Pandas DataframeのVisualizer "Lux"の紹介 Github Trendを眺めてみる② 

Intro Luxとは

pandas Dataframeに対して適当な統計量を計算してVisualize してくれるツールにLuxっていうのが合って、それが既存のコードにimport luxを追加するだけで動くとのことなので、試してみたいと思います。Readme.mdにあった、Example Jupyter notebookはなぜかうまく動かなかったので、Localで仮想環境を作って試してみました。

※追記 その後普通に動きました。一時的にサーバー重かっただけみたいですね。

環境構築&install

pyenvとpipenvは入っているものとします。Luxを試すためのフォルダと環境を作っていきます。

環境

  • WSL2(Ubuntu 20.04)
  • python 3.8.7
  • pip 21.0.1
  • pipenv version 2020.11.15

環境構築

mkdir -p lux
cd lux
pipenv --three #今回は3.8.7
pipenv install numpy pandas lux-api notebook #必要なライブラリをインストール
pipenv run jupyter nbextension install --py luxwidget --user #LuxをJupyterNotebookに拡張機能として入れる。 --userをつけないと自分の環境ではPermissionErrorが起こりました。
pipenv run jupyter nbextension enable --py luxwidget --user #同上
pipenv run jupyter notebook

terminalにJupyterLabのURLが出てくるので、コピーしてブラウザで開く

Exampleにあった、最小の構成をコピーして実行するとちゃんと以下のような結果を得られた。

f:id:ponyo4869yakata398:20210324104330p:plain
pandas dataframeをpandasで表示した例
f:id:ponyo4869yakata398:20210324104413p:plain
Pandas DataframeをLuxで表示した例
Toggleするだけで2変数の散布図やヒストグラムを見ることが出来るのは便利ですね。

Jupyter Labの場合

本当はJupyter Labでやってみたかったのですが、試してみると、widgetをうまく読み込めないと出てしまいました。

f:id:ponyo4869yakata398:20210324104506p:plain
画面キャプチャ。Jupyter Labではエラーとなった。
Issueを探してみると、2020年10月のものが見つかり、現時点ではJupyter labはまだsupportしてないらしいです。

参考URL(該当のIssue) https://github.com/lux-org/lux/issues/110

おわりに

今回はPandas DataframeのVisulalizerであるLuxを紹介しました。 今回はデフォルトの設定だけの紹介となりましたが、設定することで、色々なVisualizeができるみたいですし、これ自体もMatplotlibのようにコードでVisualizeしてくれるツールにもなるらしいです。是非触ってみてください。 ところで、最近こういう既存のコードを書き直さずに使える〇〇みたいなライブラリ見かけますけれど、これどうやって作っているんでしょうかね。

参考サイト

LuxのGithub https://github.com/lux-org/lux

LuxのDoucment https://lux-api.readthedocs.io/en/latest/index.html

1分でわかるLux(公式) https://www.youtube.com/watch?v=qmnYP-LmbNU