Я пытаюсь построить линейный сюжет с Боке, который будет показывать точки разных цветов в соответствии с их категориями.эти точки - частота дыхания пациента.Существует 13 категорий частоты дыхания, таких как A, B, C и т. Д. Я смог нарисовать график, но не смог нарисовать его в соответствии с категориями.
Вот мой код для построения графика:
x = np.arange(1, len(resp_rates))
y = resp_rates
# output to static HTML file
output_file("Respiration rate.html")
# create a new plot with a title and axis labels
p = figure(title="Respiration rate class", x_axis_label= "Patient ID 123", y_axis_label= "Respiration rates", plot_width = 1000)
# add a line renderer with legend and line thickness
p.line(x, y, legend="Respiration rate", line_width=2)
# show the results
show(p)
Вывод:
Я рассчитал классы для каждой точки, которыехранится в списке под названием метки.Как раскрасить точки на линейном графике в соответствии с их классами / метками? Мне нужно использовать только Bokeh.
Редактировать: Я изменил код:
x = np.arange(1, len(resp_rates))
y = resp_rates
# output to static HTML file
output_file("Respiration rate.jpg")
# create a new plot with a title and axis labels
p = figure(title="Respiration rate class", x_axis_label= "Patient ID 123", y_axis_label= "Respiration rates", plot_width = 3000, x_range=(0, 101))
# add a line renderer with legend and line thickness
pal = Dark2[3]
factors = list(set(labels))
source = ColumnDataSource(data=dict(Classes=labels, x=x, y=y))
p.line(x, y, legend="Respiration rate", line_width=2, factor_cmap('Classes', palette=pal, factors=factors), source=source)
# show the results
show(p)
Теперь выдает эту ошибку:
File "<ipython-input-32-8377d3798bb8>", line 13
p.line(x, y, legend="Respiration rate", line_width=2, factor_cmap('Classes', palette=pal, factors=factors), source=source)
^
SyntaxError: positional argument follows keyword argument