Есть ли способ обновить интервал слайдером в да sh? - PullRequest
1 голос
/ 08 апреля 2020

Как я писал в заголовке - у меня есть страница с графиком и ползунком

    trigger_page = html.Div(
[
    dcc.Textarea(value='Triggers'),
    dcc.Graph(id='trigger_graph', animate=True),
    dcc.Slider(id='my-slider', min=0, max=10000, value=1000, updatemode='drag'),
    dcc.Interval(id='trigger_graph_update',interval=1000),
]
)

Как написать обратный вызов и метод для обновления значения в d cc .interval с помощью ползунка? Мой метод с обратным вызовом:

@app.callback(Output('trigger_graph', 'figure'), [Input('trigger_graph_update', 'n_intervals')])
def update_graph(value):
    global trigger_rate_array_x
    global trigger_rate_array
    trigger_rate_array=[]
    trigger_rate_array_x=[]
    triggerFiller()
    X = trigger_rate_array_x
    Y = trigger_rate_array

    data = plotly.graph_objs.Scatter(
        x=list(X),
        y=list(Y),
        name='Scatter',
        mode='lines+markers'
)

return {'data': [data], 'layout': go.Layout(xaxis=dict(range=[min(X), max(X)]), yaxis=dict(range=[min(Y), max(Y)])),}

Я искал в Google, стеке и специализированных форумах. Я не нашел ответа. Пожалуйста - не ненавидь, не оставляй «минус». Просто помоги мне ..

1 Ответ

1 голос
/ 08 апреля 2020

Вы можете сделать это легко, создав обратный вызов с ползунком в качестве ввода и интервалом в качестве вывода:

@app.callback(
    Output("trigger_graph_update", "interval"),
    [Input("my-slider", "value")]
)
def update_interval(value):
    return value    
...