Python Plotly Sankey Graph не отображается

Было интересно, может ли кто-нибудь помочь выяснить, почему эта диаграмма Санки не работает. Я почти уверен, что следовал правильному синтаксису и соглашениям при использовании модуля. Бился головой об стол из-за этого.

import plotly.offline

data_trace = {'domain': {'x': [0, 1], 'y': [0, 1]},
    'height': 772,
    'link': {'label': ['EM', 'GWF9C51E', 'GWF9C511', 'GWF9C51E Sensor Set',
                                'GWF9C511 Sensor Set'],
             'source': [0, 1, 3, 1, 4, 2, 0, 2],
             'target': [1, 3, 1, 0, 2, 0, 2, 4],
             'value': [40, 76, 29, 86, 30, 75, 41, 65]},
    'node': {'color': ['blue', 'yellow', 'yellow', 'green', 'green'],
             'label': ['EM', 'GWF9C51E', 'GWF9C511', 'GWF9C51E Sensor Set',
                      'GWF9C511 Sensor Set'],
             'line': {'color': 'black', 'width': 0.5},
             'pad': 15,
             'thickness': 15},
             'orientation': 'h',
             'type': 'sankey',
             'valueformat': '.3s',
             'valuesuffix': 'pkts',
             'width': 1118}
layout =  dict(
    title = "Testing Sankey",
    font = dict(
    size = 10
    )

fig = dict(data=[data_trace], layout=layout)
plotly.offline.plot(fig, validate=False)

person Icee    schedule 15.06.2018    source источник
comment
Можете ли вы прочитать эту статью, проблема в ваших данных, узнать больше   -  person Naren Murali    schedule 15.06.2018
comment
Спасибо. Теперь я понимаю. Мне нужно придумать другой способ представления Source: 0 - ›Target: 1 и Source: 1 -› Target: 0. Вероятно, просто разделите на узлы отправки / получения.   -  person Icee    schedule 15.06.2018
comment
Пожалуйста, опубликуйте решение как ответ на свой вопрос, как только вы его разберетесь, на графиках Санки не так много подробностей! Спасибо!   -  person Naren Murali    schedule 15.06.2018
comment
Сделаю! Теперь он работает. Спасибо еще раз.   -  person Icee    schedule 15.06.2018
comment
Еще раз извините, вам нужно поставить зеленую галочку, чтобы закрыть свой ответ :)   -  person Naren Murali    schedule 15.06.2018
comment
Он говорит, что мне нужно подождать до завтра, прежде чем я смогу это сделать.   -  person Icee    schedule 16.06.2018
comment
Совсем забыл об этом. Я пошел дальше и нажал зеленую галочку.   -  person Icee    schedule 26.06.2018
comment
Хороший! Без проблем!   -  person Naren Murali    schedule 26.06.2018


Ответы (1)


Проблема вот в чем:

         'source': [1, 3],
         'target': [3, 1]

Вы не можете использовать двойные роли источников и цели, то есть: узел 1 является одновременно источником и целью.

В зависимости от вашего варианта использования вам, возможно, придется разделить его.

На мой взгляд, это сетевой продукт, поэтому я разделил свои узлы на «RX» и «TX», чтобы не дублировать список исходных / целевых данных.

person Icee    schedule 15.06.2018