All Articles

【読書速報】『Python インタラクティブ・データビジュアライゼーション入門 ―Plotly/Dashによるデータ可視化とWebアプリ構築―』の感想

一昨日発売された『Python インタラクティブ・データビジュアライゼーション入門 ―Plotly/Dashによるデータ可視化とWebアプリ構築―』を読んだので、感想を書きました。

概要

この本は、Plotly と Dash を使った、Python でのインタラクティブな可視化の解説書です。 plotly.py や Dash に加えて、その周辺ライブラリの使い方も解説しています。

特徴

Python での可視化についての本は初めて読みましたが、おそらくインタラクティブな可視化について書かれている本は珍しいのではないかと思います。

また、この本の特徴として、ネットワーク図の可視化について多くのページを割いて書かれています。 (この書籍では、ノードとエッジから成り立つグラフのことをネットワークと呼んでいます)

どういう人におすすめか

ライブラリやフレームワークの具体的な使い方をまとめた書籍なので、実際に Plotly や Dash などを使い、Python でインタラクティブな可視化をしたいと考えている方が読むとよさそうです。

Plotly や Dash の公式ドキュメントは日本語化されていないようなので、日本語で概要を把握するのにいいかもしれません。

作成できる図も色々載っているので、どんな図をどう作るか簡易的に把握することもできます。

その他のツールの紹介

Appendix の中では、Notebook (.ipynb ファイル) を共有するツールとして、nbviewer、binder、Colaboratory が紹介されていました。

Python でデータを扱う方であれば、こういったサービスは知っておいて損はないと思います。

おわりに

私はもともと Plotly は JavaScript だけのライブラリと認識していたので、それをラップした Python のライブラリがあること自体意外でした。

そもそも JavaScript に苦手意識がない方であれば、Dash などを使わず普通にフロントエンドを実装してしまうこともできると思います。 ですが、Python に慣れていて、他の言語の習得よりも Python で色々できた方が嬉しいという方には Plotly や Dash はちょうどいいツールかもしれないという印象を受けました。

Dash では Python のコードで UI を書くものので、ざっと見た感じでは Flutter や SwiftUI、Elm に近い部分がある印象を受けました。 最初は少しクセがありそうだと思いましたが、慣れると意外と便利に使えるのかもしれません。