ユーザ用ツール

サイト用ツール


プログラミング:python:webアプリケーションフレームワーク:dash:基本構造

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

次のリビジョン
前のリビジョン
プログラミング:python:webアプリケーションフレームワーク:dash:基本構造 [2019/07/15 10:14]
sotoyama 作成
プログラミング:python:webアプリケーションフレームワーク:dash:基本構造 [2019/07/15 13:48] (現在)
sotoyama
ライン 1: ライン 1:
 +{{indexmenu_n>​2}}
 ===== 基本構造 ===== ===== 基本構造 =====
-==== インストール ​====+==== 全体構造 ​==== 
 <code python> <code python>
 import dash import dash
ライン 29: ライン 31:
             ],             ],
             '​layout':​ {             '​layout':​ {
-                '​title':​ 'Dash Data Visualization'+                '​title':​ 'Sample Graph Data'
             }             }
         }         }
ライン 40: ライン 42:
 </​code>​ </​code>​
  
 +==== レイアウト ====
 +=== ブロック ===
 +<code python>
 +# div要素
 +html.Div(children='​出力文字列'​)
 +</​code>​
 +
 +=== 見出し ===
 +<code python>
 +# h1要素
 +html.H1(children='​見出し1'​)
 +
 +# h2要素
 +html.H2(children='​見出し2'​)
 +
 +# h3要素
 +html.H3(children='​見出し3'​)
 +
 +# h4要素
 +html.H4(children='​見出し4'​)
 +
 +# h5要素
 +html.H5(children='​見出し5'​)
 +
 +</​code>​
 +
 +==== フォーム ====
 +<code python>
 +# ドロップダウン(単一選択)
 +dcc.Dropdown(
 +    options=[
 +        {'​label':​ '​佐藤',​ '​value':​ '​sato'​},​
 +        {'​label':​ '​鈴木',​ '​value':​ '​suzuki'​},​
 +        {'​label':​ '​田中',​ '​value':​ '​tanaka'​},​
 +    ],
 +    value='​suzuki'​
 +),
 +html.Br(),
 +
 +# ドロップダウン(複数選択)
 +dcc.Dropdown(
 +    options=[
 +        {'​label':​ '​佐藤',​ '​value':​ '​sato'​},​
 +        {'​label':​ '​鈴木',​ '​value':​ '​suzuki'​},​
 +        {'​label':​ '​田中',​ '​value':​ '​tanaka'​},​
 +    ],
 +    value=['​sato',​ '​suzuki'​],​
 +    multi=True
 +),
 +html.Br(),
 +
 +# ラジオボタン
 +dcc.RadioItems(
 +    options=[
 +        {'​label':​ '​佐藤',​ '​value':​ '​sato'​},​
 +        {'​label':​ '​鈴木',​ '​value':​ '​suzuki'​},​
 +        {'​label':​ '​田中',​ '​value':​ '​tanaka'​},​
 +    ],
 +    value='​suzuki'​
 +),
 +html.Br(),
 +
 +# チェックボックス
 +dcc.Checklist(
 +    options=[
 +        {'​label':​ '​佐藤',​ '​value':​ '​sato'​},​
 +        {'​label':​ '​鈴木',​ '​value':​ '​suzuki'​},​
 +        {'​label':​ '​田中',​ '​value':​ '​tanaka'​},​
 +    ],
 +    value=['​suzuki',​ '​tanaka'​]
 +),
 +html.Br(),
 +
 +# テキストボックス
 +dcc.Input(value='​佐藤',​ type='​text'​),​
 +html.Br(),
 +
 +# スライダー
 +dcc.Slider(
 +    min=0,
 +    max=5,
 +    marks={i:​str(i) for i in range(1,​6)},​
 +    value=3
 +)
 +</​code>​
 +{{ :​プログラミング:​python:​webアプリケーションフレームワーク:​dash:​dash_フォーム.jpg?​direct&​600 |}}
 +
 +==== グラフ ====
 +=== 棒グラフ ===
 +<code python>
 +dcc.Graph(
 +    id='​example-graph',​
 +    figure={
 +        '​data':​ [
 +            {'​x':​ [1, 2, 3, 4, 5], '​y':​ [2, 1, 3, 6, 8], '​type':​ '​bar',​ '​name':​ '​XXXX'​},​
 +            {'​x':​ [1, 2, 3, 4, 5], '​y':​ [4, 9, 5, 6, 1], '​type':​ '​bar',​ '​name':​ '​YYYY'​},​
 +        ],
 +        '​layout':​ {
 +            '​title':​ 'Dash Data Visualization',​
 +        }
 +    }
 +)
 +</​code>​
 +{{ :​プログラミング:​python:​webアプリケーションフレームワーク:​dash:​dash_棒グラフ.jpg?​direct&​600 |}}
 +
 +=== 折れ線グラフ ===
 +<code python>
 +import plotly.graph_objs as go
 +
 +# ~~~ 省略 ~~~
 +
 +dcc.Graph(
 +    id='​sample-line',​
 +    figure={
 +        '​data':​[
 +            go.Scatter(
 +                x=[1, 2, 3, 4, 5, 6],
 +                y=[2, 4, 6, 8, 10, 12],
 +                mode='​lines',​
 +                opacity=0.7,​
 +                marker={
 +                    '​size':​15
 +                },
 +                name='​XXXX'​
 +            ),
 +            go.Scatter(
 +                x=[1, 2, 3, 4, 5, 6],
 +                y=[5, 10, 8, 16, 11, 20],
 +                mode='​lines',​
 +                opacity=0.7,​
 +                marker={
 +                    '​size':​15
 +                },
 +                name='​YYYY'​
 +            )
 +        ],
 +        '​layout':​ go.Layout(
 +            xaxis={'​title':'​x軸'​},​
 +            yaxis={'​title':'​y軸'​},​
 +            width=1000,
 +            height=500
 +        )
 +    }
 +)
 +</​code>​
 +{{ :​プログラミング:​python:​webアプリケーションフレームワーク:​dash:​dash_折れ線グラフ.jpg?​direct&​600 |}}
 +
 +=== 円グラフ ===
 +<code python>
 +</​code>​
 +
 +=== 帯グラフ ===
 +<code python>
 +</​code>​
 +
 +
 +=== ヒスとグラム ===
 +<code python>
 +</​code>​
 +
 +
 +=== レーダーチャート ===
 +<code python>
 +</​code>​
 +
 +
 +=== 散布図 ===
 +<code python>
 +import plotly.graph_objs as go
 +
 +# ~~~ 省略 ~~~
 +
 +dcc.Graph(
 +    id='​sample-scatter',​
 +    figure={
 +        '​data':​[
 +            go.Scatter(
 +                x=[1, 4, 6, 9],
 +                y=[10, 30, 20, 25],
 +                mode='​markers',​
 +                opacity=0.7,​
 +                marker={
 +                    '​size':​15
 +                },
 +                name='​グループ1'​
 +            ),
 +                go.Scatter(
 +                x=[2, 8, 5, 1],
 +                y=[5, 19, 12, 20],
 +                mode='​markers',​
 +                opacity=0.7,​
 +                marker={
 +                    '​size':​15
 +                },
 +                name='​グループ2'​
 +            )
 +        ],
 +        '​layout':​go.Layout(
 +            xaxis={'​title':'​x軸'​},​
 +            yaxis={'​title':'​y軸'​},​
 +        )
 +    }
 +)
 +</​code>​
 +{{ :​プログラミング:​python:​webアプリケーションフレームワーク:​dash:​dash_散布図.jpg?​direct&​600 |}}
 +
 +=== 箱ひげ図 ===
 +<code python>
 +</​code>​
 +
 +
 +=== 三角グラフ ===
 +<code python>
 +</​code>​
 +
 +==== Markdown記法 ====
 +<code python>
 +dcc.Markdown('''​
 +# 見出し1
 +## 見出し2
 +
 +- 箇条書き1
 +- 箇条書き2
 +- 箇条書き3
 +- 箇条書き4
 +'''​)
 +</​code>​
 +{{ :​プログラミング:​python:​webアプリケーションフレームワーク:​dash:​dash_markdown.jpg?​direct&​600 |}}
 +
 +
 +==== Callback関数 ====
 +<code python>
 +import dash
 +import dash_core_components as dcc
 +import dash_html_components as html
 +from dash.dependencies import Input, Output
 +
 +# ~~~ 省略 ~~~
 +
 +app.layout = html.Div([
 +    dcc.Input(id='​input-div',​ value='​initial value',​ type='​text'​),​
 +    html.Div(id='​output-div'​)
 +
 +])
 +
 +@app.callback(
 +    Output(component_id='​output-div',​ component_property='​children'​),​
 +    [Input(component_id='​input-div',​ component_property='​value'​)]
 +)
 +
 +def update(input_value):​
 +    return 'You entered {}'​.format(input_value)
 +</​code>​
 +{{ :​プログラミング:​python:​webアプリケーションフレームワーク:​dash:​dash_callback.jpg?​direct&​600 |}}
  
プログラミング/python/webアプリケーションフレームワーク/dash/基本構造.1563185660.txt.gz · 最終更新: 2019/07/15 10:14 by sotoyama