継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

Python の可視化フレームワーク「Dash」

タダです。

機械学習やデータ分析の勉強の過程で Python を使ってデータの可視化をやることが増えました。これまでは、「Matplotlib」のみを使っていましたが、別の手法として今回「Dash」というフレームワークを使ってみます。 plot.ly

Dash とは

Dash」とは、Web アプリケーション 用 Python フレームワークです。Flask 、Plotly.js 、および React.js 上に書かれた「Dash」は、Web ブラウザのデータ可視化ができます。

plot.ly github.com

データ可視化の例

サイトにデータ可視化の例が載っていて、様々なデータのビジュアライズができることがわかります。 dash.plot.ly

セットアップ方法

「Dash」のセットアップは簡単です。以下の2つのコマンドを実行すれば終わりです。

$ pip install dash==0.39.0
$ pip install dash-daq==0.1.0

参考情報

dash.plot.ly

サンプルデータの可視化

早速、サンプルデータを可視化してみます。

import dash
import dash_core_components as dcc
import dash_html_components as html

app = dash.Dash()

app.layout = html.Div(children=[
    html.H1(children='Hello Dash'),
    html.Div(children='Dash: A web application framework for Python.'),

    dcc.Graph(
        id='example-graph',
        figure={
            'data': [
                {'x': [1, 2, 3], 'y': [4, 1, 2], 'type': 'bar', 'name': 'SF'},
                {'x': [1, 2, 3], 'y': [2, 4, 5], 'type': 'bar', 'name': u'Montréal'},
            ],
            'layout': {
                'title': 'Dash Data Visualization'
            }
        }
    )
])

if __name__ == '__main__':
    app.run_server()%

コードを書いたら実行してみます。

$ python app.py
 * Debug mode: off
 * Running on http://127.0.0.1:8050/ (Press CTRL+C to quit)

http://127.0.0.1:8050/ にアクセスしてみます。このように簡単にデータを Web ブラウザ上に表現することができました。

f:id:sadayoshi_tada:20190329230725p:plain

まとめ

Python のデータ可視化フレームワークの「Dash」を簡単に紹介しました。

Web ブラウザ上に表示できるのでアプリケーションと組み合わせて、Web サイトなどに組み込んでみると面白いかもしれません!

今回は簡単な紹介にとどまりましたが、「Dash」を使って可視化の手法を今後も学んでいければと思います。