Тире-код создает пустой график рассеяния (только с сеткой) - PullRequest
0 голосов
/ 29 сентября 2019

Я очень плохо знаком с приборной панелью.Таким образом, я нашел в Интернете некоторый код, который я пытаюсь заставить работать, чтобы научить себя основам тире, это просто базовый пример интерактивных сюжетов в тире, которые я хотел бы расширить на себе.Предполагается взять списки X и Y и создать точечный график (обновление каждую секунду, даже если данные никогда не меняются).

У меня работает код со следующими требованиями

dash==0.30.0
dash-core-components==0.38.0
dash-html-components==0.13.2
dash-renderer==0.15.0

К сожалению, при запуске в режиме отладки он выдает пустой график

enter image description here

import sqlite3
import pandas as pd
import os
import dash
from dash.dependencies import Output, Event, Input
import dash_core_components as dcc
import dash_html_components as html
import plotly
import random
import plotly.graph_objs as go
from collections import deque

app = dash.Dash(__name__)
app.layout = html.Div(
    [   html.H2('Live Twitter Sentiment'),
        dcc.Input(id='sentiment_term', value='stormemma', type='text'),
        dcc.Graph(id='live-graph', animate=False),
        dcc.Interval(
            id='graph-update',
            interval=1*1000
        ),

    ]
)


@app.callback(Output('live-graph', 'figure'),
              [Input(component_id='sentiment_term', component_property='value')],
              events=[Event('graph-update', 'interval')])

def update_graph_scatter(sentiment_term):
    try:


        X = [1,2,3]
        Y = [4,5,6]

        data = plotly.graph_objs.Scatter(
                x = X,
                y = Y,
                name = 'Scatter',
                mode = 'line+markers'
                )
        return{'data':[data],
               'layout' : go.Layout(
                       xaxis = dict(range=[min(X), max(X)]),
                       yaxis = dict(range=[min(Y), max(Y)]),
                       title='Term: {}'.format(sentiment_term))}


    except Exception as e:
        with open('error.txt', 'a') as f:
            f.write(str(e))
            f.write('\n')

if __name__ == '__main__':
    app.run_server(debug=False)

Ожидаемое поведение заключается в построении графиков X и Y, как это определено в моем кадре данных панд.

...