使用Dash和Flask从大型Excel文件中重新加载数据

时间:2019-03-13 17:35:12

标签: python-3.x pandas flask plotly-dash

我正在尝试通过单击按钮从Excel文件(30MB)重新加载数据-在flask / dash服务器运行时,然后刷新页面。它不起作用...

enter image description here

我不想每次刷新都加载数据,因为加载所有内容都需要1-2分钟-从用户角度来看,这不是很方便。

因此,主要思想是允许用户通过单击按钮在需要时加载新数据。

我的代码如下:

#function - load data
def loadData():
    logging.debug(str(datetime.datetime.now()) + ' => load data...')
    dfCapacite = pd.read_excel(rapportCapacitePath, 'Capacit', header=11)
    logging.debug(str(datetime.datetime.now()) + ' => loading data finished')

#function that render the layout
def make_layout():
    logging.debug(str(datetime.datetime.now()) + ' => load layout')
    return html.Div([

        html.Span(id='refresh-span', children=''),
        html.Div(
           html.Button('Rafraichir', id='refresh-btn-1')
        )
    ])
@app.callback(Output('refresh-span', 'children'),
        [Input('refresh-btn-1', 'n_clicks')])
def on_click(n_clicks):
    if n_clicks != None:
        loadData()
        make_layout()
    return "data loaded !"

loadData()
app.layout = make_layout

if __name__ == '__main__':
    app.run_server(debug='False', port=80, host='wxrafvf814')

任何建议将不胜感激。

0 个答案:

没有答案