Python Dash空表

时间:2019-07-11 19:29:16

标签: python plotly-dash

我使用Dash并想显示一个表格,html.Layout如下所示:

html.Div([
     dash_table.DataTable(
          id="table_infos",
          columns=["Intitulé", "Donnée"]
            )
        ], style={'display': 'inline-block', 'verticalAlign': 'top', 'width': '30%', 'padding':'30px'})

我的回调是这样的:

@app.callback(Output('table_infos', 'data'),
                [Input('ville-picker', 'value')])
def update_generales(selected_ville):
    departement = df.loc[df['ville'] == selected_ville]['departement'].iloc[0]
    region = df.loc[df['ville'] == selected_ville]['region'].iloc[0]
    cp = df.loc[df['ville'] == selected_ville]['code postale'].iloc[0]
    code_insee = df.loc[df['ville'] == selected_ville]['code_insee'].iloc[0][-5:]
    ci = df.loc[df['ville'] == selected_ville]['code_insee'].iloc[0][18:]

    habitants = df_demo.loc[df_demo['code_insee'] == ci]['Population'].iloc[0]

    infos = {'Intitulé' : ['Région','Département','Code Postal', 'Code Insee',"Nombre d'habitants"],
            'Donnée' : [region, departement, cp, code_insee, habitants]}

    df_info = pd.DataFrame(infos, columns=['Intitulé', 'Donnée'])

    df_info['Intitulé'] = np.asarray(['Région','Département','Code Postal', 'Code Insee',"Nombre d'habitants"])
    data = df_info.to_dict("rows")

    return data

但是,我有一个空表,但是希望有相同数量的行,但我希望有2列,但是空表。

有人可以帮助我!

1 个答案:

答案 0 :(得分:0)

问题是columns的定义方式。它必须同时具有nameid值,如下所示:

columns=[{'id': "Intitulé", 'name': "Intitulé"}, {'id': "Donnée", 'name': "Donnée"}]

Docs page供参考。