如何将绘图短划线输入保存为全局变量

问题描述 投票:0回答:1

我正在使用Plotly Dash创建一个仪表板,该仪表板要求按日期过滤数据(由于某些图表是分类的,所以滑块不起作用)。

我想允许用户输入日期,然后将其用作全局变量。我导入此全局变量以过滤其他python文件中的数据框,然后创建图表。我在下面的尝试无效。变量start_date不更新。

app = dash.Dash()

app.layout = html.Div([
    dcc.Input(id='date', value='start date (yyyy-mm-dd)', type='text'),
    html.Button(id='submit-button', type='submit', children='Submit'),
    html.Div(id='output_div')
])

start_date = 0

@app.callback(Output('output_div', 'children'),
                [Input('submit-button', 'n_clicks')],
                [State('date', 'value')],
                )
def update_output(clicks, input_value):
    if clicks:
        print(clicks, input_value)
        global start_date
        start_date = datetime.strptime(input_value, '%Y-%m-%d').date()
        return start_date
        print(type(start_date))


if __name__ == '__main__':
    app.run_server(debug=True, port=8051)
python plotly dashboard hyphen
1个回答
0
投票
hidden html.Div(...),然后使用它来存储来自回调的输入。之后,您将可以从任何其他回调中访问它。
© www.soinside.com 2019 - 2024. All rights reserved.