Plotly Dash - синтаксическая ошибка при добавлении заголовка к рисунку в dcc.graph - PullRequest
0 голосов
/ 03 июля 2018

Просто просматривая образец учебника на веб-сайте Dash, я попытался изменить пример кода и столкнулся с синтаксической ошибкой при попытке добавить заголовок к рисунку во втором dcc.Graph.

Второй dcc.Graph - это то, что я создал. Отладчик кода сообщает, что двоеточие между 'title' и 'Test Progress является синтаксической ошибкой. Я проверил все скобки, и все они выстроились правильно. Обратите внимание, что я не включил полный исходный код, так как только ошибка dcc.Graph была связана с ошибкой. Я предполагаю, что, возможно, используются неправильные типы скобок. Но, основываясь на первом dcc.Graph, я не думаю, что это так.

dcc.Graph(
            id='example-graph',
            figure={
                'data': [
                    {'x': [1, 2, 3], 'y': [4, 1, 2], 'type': 'bar', 'name': 'SF'},
                    {'x': [1, 2, 3], 'y': [2, 4, 5], \
                     'type': 'bar', 'name': u'Montréal'},
                ],
                'layout': {
                    'title': 'Dash Data Visualization'
                }
            }
        ),
dcc.Graph(id='plot1', 
                  figure={          
                plotly_figure, 'layout' : {
                    'title': 'Test Progress'
                    }

                }
            )

Дополнительная информация: Добавлена ​​фактическая строка данных, которая относится к plotly_figure в разделе dcc.Graph, и синтаксическая ошибка больше не появляется.

plotly_figure = dict(data=[dict(x=[1,2,3], y=[2,4,8])])

dcc.Graph(id='plot1', 
                  figure = {          
                          'data': [
                    {dict(data=[dict(x=[1,2,3], y=[2,4,8])])},
                ],
                          'layout' : {
                        'title' : 'Test Progress'
                    }

                }
            )

Решение проблемы: Правильный синтаксис для plotly_fig выглядит следующим образом:

plotly_fig = [dict(x=[1,2,3], y=[2,4,8])]
dcc.Graph(id='plot1', 
                      figure={          
                    plotly_fig, 'layout' : {
                        'title': 'Test Progress'
                        }

                    }
                )
...