Bokeh - PullRequest
       25

Bokeh

0 голосов
/ 04 сентября 2018

Мне нужно адаптировать Пример Bokeh составной диаграммы к моим данным, я следовал той же схеме, но когда я запустил код, следующая ошибка возросла ValueError: Keyword argument sequences for broadcasting must all be the same lengths. Got lengths: [5, 6]

Ниже моего кода это фрагмент моих данных, данные распространяются в течение нескольких дней

from bokeh.core.properties import value
from bokeh.io import show, output_file
from bokeh.plotting import figure
output_file("stacked.html")

time = ['2018-08-06 00:00:00', '2018-08-06 01:00:00', '2018-08-06 02:00:00',
    '2018-08-06 03:00:00', '2018-08-06 04:00:00', '2018-08-06 05:00:00']
boards = ['GPHB_00-40', 'GPHB_41-60', 'GPHB_61-80', 'GPHB_81-90', 'GPHB_91-100']
colors = ['#2b83ba', '#abdda4', '#ffffbf', '#fdae61', '#d7191c']

data = {'time'         : time,
        'GPHB_00-40'   : [95, 99, 99, 100, 100, 100, 100, 95, 69, 55],
        'GPHB_41-60'   : [4,  1,  1,  0,   0,   0,   0,   4,  20, 34],
        'GPHB_61-80'   : [1,  0,  0,  0,   0,   0,   0,   1,  5,  8 ],
        'GPHB_81-90'   : [0,  0,  0,  0,   0,   0,   0,   0,  4,  2 ],
        'GPHB_91-100'  : [0,  0,  0,  0,   0,   0,   0,   0,  2,  1 ]}

p = figure(x_range=time, plot_height=250, title="Boards Load",
           toolbar_location=None, tools="")

p.vbar_stack(boards, x='time', width=0.9, color=colors, source=data,
             legend=[value(x) for x in time])

p.y_range.start = 0
p.x_range.range_padding = 0.1
p.xgrid.grid_line_color = None
p.axis.minor_tick_line_color = None
p.outline_line_color = None
p.legend.location = "top_left"
p.legend.orientation = "horizontal"

show(p)

1 Ответ

0 голосов
/ 05 сентября 2018

Я нашел решение, в коде была ошибка

p.vbar_stack(boards, x='time', width=0.9, color=colors, source=data,
         legend=[value(x) for x in time])

указана ссылка на время, это должна быть ссылка на доски

p.vbar_stack(boards, x='time', width=0.9, color=colors, source=data,
         legend=[value(x) for x in boards])
...