Dash rangeslider 'Input' 不可迭代
Dash rangeslider 'Input' is not iterbale
我正在开发一个 Dash 应用程序,我需要更改导入数据的大小,为此我需要使用 RangeSlider,左边界是数据的开始,右边界是数据的结束。
这是我的 RangeSlider 函数:
dcc.RangeSlider(
id='my-slider',
min=0,
max=12,
step=1,
value=[8, 12],
),
这是我的回调函数:
@yield_model_app.callback(Output("plot_static", "figure"), Input("my_slider", "value"))
def update_comparison_graf(date_chosen):
return draw_comparison_graph(date_chosen[0], date_chosen[1])
但是这会引发错误:TypeError: 'Input' object is not iterable
为什么会这样?根据 Dash,输出应该是 2 个值的列表 [left_bound, right_bound]
那么为什么我会收到此错误?
您的回调应该如下所示:
@yield_model_app.callback(Output("plot_static", "figure"), [Input("my_slider", "value")])
def update_comparison_graf(date_chosen):
return draw_comparison_graph(date_chosen[0], date_chosen[1])
请注意 Input
是如何包裹在方括号中的,在这种情况下使其成为长度为 1 的列表。
我正在开发一个 Dash 应用程序,我需要更改导入数据的大小,为此我需要使用 RangeSlider,左边界是数据的开始,右边界是数据的结束。 这是我的 RangeSlider 函数:
dcc.RangeSlider(
id='my-slider',
min=0,
max=12,
step=1,
value=[8, 12],
),
这是我的回调函数:
@yield_model_app.callback(Output("plot_static", "figure"), Input("my_slider", "value"))
def update_comparison_graf(date_chosen):
return draw_comparison_graph(date_chosen[0], date_chosen[1])
但是这会引发错误:TypeError: 'Input' object is not iterable
为什么会这样?根据 Dash,输出应该是 2 个值的列表 [left_bound, right_bound]
那么为什么我会收到此错误?
您的回调应该如下所示:
@yield_model_app.callback(Output("plot_static", "figure"), [Input("my_slider", "value")])
def update_comparison_graf(date_chosen):
return draw_comparison_graph(date_chosen[0], date_chosen[1])
请注意 Input
是如何包裹在方括号中的,在这种情况下使其成为长度为 1 的列表。