Plotly Express
Ploty Expressはplotly.pyのラッパーで、簡潔なコードでデータを可視化できます。
Ploty Expressは以下のような機能をもち、多次元のデータを高い表現力で可視化できます。
- 複数種類のグラフを組み合わせた可視化
- ファセットによる可視化
データを分割して複数のグラフに可視化
- アニメーションによる可視化
データを分割してフレームに描画して可視化
データの読み込み
gapminderデータセットを読み込みます。
[Google Colaboratory]
1 2 3 4
| import plotly.express as px
gapminder = px.data.gapminder() gapminder.head()
|
[実行結果]
では一人当たりのGDP(gdpPercap列)と平均寿命(lifeExp列)を可視化していきます。
pandasでの可視化
まずpandasのplotメソッドを使って可視化を行います。
logxオプションにTrueを指定し、X軸は対数で表示しています。
[Google Colaboratory]
1 2
| %matplotlib inline gapminder.plot.scatter(x="gdpPercap", y="lifeExp", logx=True, xlim=[100, 1e6])
|
[実行結果]
上記の散布図では一人あたりGDPと平均寿命の関係は分かるものの、具体的な値は座標から読み取るしかありません。
また国名(country列)や人口(pop列)など、ほかの列の情報はこのグラフから読み取ることはできません。
Express Plotlyでの可視化
Plotly Expressを使って可視化を行います。
[Google Colaboratory]
1 2 3 4 5 6 7 8
| px.scatter( gapminder, x="gdpPercap", y="lifeExp", log_x=True, hover_name="country", width=800 ).show()
|
[実行結果]
上図はpandasで作成したグラフと同じグラフのように見えますが、特定の要素にカーソルを合わせると、下記の図のようにホバーツールが表示されます。
[実行結果]
ホバーツールからは要素の値が確認でき、各座標の情報に加えて国名も見て取ることができます。