こんにちは。
PyCon2017のビデオを全部ではないですが、気になったタイトルのものだけ見ているんですけど、その中で面白いものをみつけたので紹介します。
PyCon2017:Python's Visualization Landscape
Pythonにはめちゃめちゃ沢山の可視化ライブラリがあります。
ぶっちゃけどれ使ったら良いんだみたいな感じになりますし、それぞれ特性はあるんだろうなぁとは思いつつも、「まぁmatplotlibとかseabornとかでいいか」みたいな感じになっちゃったり、「おぉーこれ便利じゃん」みたいな感じで、その場しのぎコードを書いたりしてあとで死にたくなります笑。
同じような思いはみんなもっているようで、PyCon2017で以下のプレゼンがされていました。
動画中で使われている、スライドは以下からみれます。
最近見つけた以下の資料とかは、どんな時に何を使えばいいかが簡潔にまとまっています。これも参考になりました。
可視化ライブラリ一覧
ここで紹介されていた以下の可視化ライブラリの関係図がすごくわかりいやすかったです。
紹介されているライブラリはちょいちょい触っていこうかなと思うんですが、一通りサイトを回ってみたので、リンクをカテゴリごとに以下に貼り付けていきます。
いくつかは触ったことがありますが、触ったことのないものを中心に、ぼちぼち触っていこうと思います。使ったらまた更新します。
Python Base
○matplotlib
代表格であるmatplotlib。最初は結構分かりにくいというか、ちょっとこれもやりたいと思った時に「およ?」ってなることが多いものですが、一番使うと思います笑。
■インストール
正直、Anacondaを私は使うので、Anacondaをインストールした時点でmatplotlibが入っているのもあり、普通にmatplotlibをいれたことがありません(そして多分その方が色々いいと思います)。
もし単体でいれたい場合は、普通にpipではいるみたいですが、色々必要なものとかをインストールしないといけないので、詳しくは公式ページをみながらOSごとにやったほうがいいです。
○seaborn
こんなことを思ったときとかに便利なやつです。
- matplotlibで描くとちょっとめんどくさいなぁ
- matplotlibで描くとダサいし、それを克服するの結構たいへんだなぁ
- そんなに頑張って作る必要もないんだけどとりま可視化したい
私は一時期これをしって、matplotlibから逃げてました。正直これで結構なんとかなります(笑)。
インタラクティブとか複雑(?)じゃない、シンプルな可視化だけとりあえずしたくて、「手抜きして綺麗なのを作りたいんじゃおりゃー!!」って時に使います(笑)。
seabornのインストールは、以下の様な感じで出来ます。
pip install seaborn # pipで入れたい場合 conda install seaborn # anacondaを使っている場合
Galleryとかを見るとどんなグラフを作れるかがわかるんじゃないかと。numpyとかpandasとかlistとかは普通によしなに受け取ってくれますし、コレ超オススメです。
○ggpy
○Yellow brich
○Vaex
Javascript Base
○plotly
可視化ライブラリとしては有名なplotlyです。pythonから以外でも使えるのですが、とにかく綺麗にplotできるのが売りだと思います。プライベートな利用にはお金がかかるplotlyですが、ちょっと前になりますが、オープンソース化されてます。
pythonから使用するためには、
pip install plotly
で入ります。
オンラインでの可視化のホスティングサービスが用意されているのが、plotlyの凄いところ。こちらからアカウントを作成したら、グラフをオンライン上でプロットして保存できます。
フリーでは、Publicな状態みたいですが、お金を払うとPrivateにもできます。