Как обновить график Plotly после получения данных изображения через POST-запрос? - PullRequest
1 голос
/ 08 апреля 2020

Я хочу использовать приложение Da sh для отображения изображений, загруженных с помощью POST-запроса с удаленного клиента. Я использую маршрут Flask для обработки запроса POST:

from dash import Dash
from flask import request
import dash_core_components as dcc
import numpy as np
import plotly.express as px
import cv2

app = Dash(__name__)
app.layout = dcc.Graph(id="graph")

@app.server.route("/images/upload", methods=["POST"])
def upload_image():
    """Upload an image via post request."""
    if request.method == 'POST':
        # check if the post request has the file part
        data = request.data
        if data:
            nparr = np.fromstring(data, np.uint8)
            img = cv2.imdecode(nparr, cv2.IMREAD_COLOR)

            # this is the figure I want to load in the graph
            fig = px.imshow(img)

            # call a callback to update the graph component or update directly
            # ...
            # ...

            return "OK"

Мой вопрос: Можно ли обновить компонент Graph сразу после получения данных изображения от в пределах upload_image()? Я знаю, что могу использовать компонент Interval, но предпочел бы немедленно запустить обновление.

...