Как использовать Dash Loading в Dash Store?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как использовать Dash Loading в Dash Store?

Сообщение Anonymous »

Я пишу простую страницу Dash. Я получаю данные от внешних API и т. д. и помещаю их в dcc.Store. Затем графики извлекают данные и строят графики в обратных вызовах. Я пытаюсь реализовать функцию dcc.Loading, поскольку получение данных может занять некоторое время. Однако я не могу понять, как запустить загрузку графиков, когда работа выполняется Магазином.
Ниже приведен пример:

Код: Выделить всё

import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State
from dash.exceptions import PreventUpdate
import plotly.express as px
import pandas as pd
import time

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div(children=[
html.H1(children='Hello Dash'),

html.Div(children='''
Dash: A web application framework for Python.
'''),

dcc.Dropdown(
id='demo-dropdown',
options=[
{'label': 'New York City', 'value': 'NYC'},
{'label': 'Montreal', 'value': 'MTL'},
{'label': 'San Francisco', 'value': 'SF'}
],
value='NYC'
),

dcc.Loading(
id='loading01',
children=html.Div(id='loading-output')),
# Store certain values
dcc.Store(
id='session',
storage_type='session'),
])

@app.callback(Output('loading-output', 'children'),
[Input('session', 'modified_timestamp')],
[State('session', 'data')])
def loading_graph(ts, store):
if store is None:
raise PreventUpdate
if 'NYC' in store['value']:
v = 1
elif 'SF' in store['value']:
v=2
else:
v=3
return dcc.Graph(
id='example-graph',
figure={
'data': [
{'x': [1, 2, 3], 'y': [4*v, 1*v, 2*v], 'type': 'bar', 'name': 'SF'},
{'x': [1, 2, 3], 'y': [2, 4, 5], 'type': 'bar', 'name': u'Montréal'},
],
'layout': {
'title': 'Dash Data Visualization'
}
}
)

@app.callback(Output('session', 'data'),
[Input('demo-dropdown', 'value')],
[State('session', 'data')])
def storing(value, store):
store = store or {}
store['value'] = value
time.sleep(3)
return store

if __name__ == '__main__':
app.run_server(debug=True)
Думаю, я надеялся, что счетчик будет присутствовать, пока Магазин забирает вещи.
Заранее благодарен за любую помощь или подсказки.
Думаю, я надеялся, что счетчик будет присутствовать, пока Магазин забирает вещи.
Заранее благодарен за любую помощь или подсказки.
п>

Подробнее здесь: https://stackoverflow.com/questions/646 ... dash-store
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как добавить текст в компонент загрузки Dash (DCC.Loading)
    Anonymous » » в форуме Python
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Могу ли я добавить loading="lazy" в ant design vue 4? Помоги мне, пожалуйста
    Anonymous » » в форуме CSS
    0 Ответы
    46 Просмотры
    Последнее сообщение Anonymous
  • Python Json loading() возвращает строку вместо словаря?
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Может ли кто-нибудь помочь в исправлении Order/Additional/loading.php: SL-PHP-INJECTOR-1-inq.UNOFFICIAL FOUND на хостинг
    Anonymous » » в форуме Php
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Использование loading = 'Lazy' для загрузки трех изображений на одну линию не вступит в силу
    Anonymous » » в форуме Html
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»