Принять меры, основанные на значениях Radiobutton и флажок при нажатии кнопки в Bokeh - PullRequest
0 голосов
/ 17 июня 2019

Требуется сгенерировать значения, основанные на одном графике, выбранные из переключателей и флажков.

  • Переключатель 1 (RB1): температура, влажность, давление.
  • Переключатель 2 (RB2): для 24 часов, 48 часов.
  • Флажок (CB1): Индия, Англия, Италия.

Я должен иметь возможность выбирать из RB1, RB2, CB3 (температура, 24 часа, Индия соответственно), и на основании их значений необходимо сгенерировать соответствующий график в качестве вывода. Иллюстрация в Bokeh, Python для подобного примера была бы очень полезна.

Я могу реагировать или предпринимать действия, основываясь только на одном входе либо RB1, либо RB2, либо CB1 одновременно. Не удалось выполнить действие на основе всех значений одновременно.

1 Ответ

0 голосов
/ 19 июня 2019

Насколько я могу судить, вы хотите этот шаблон:

# Set up multiple widgets
offset = Slider(title="offset", value=0.0, start=-5.0, end=5.0, step=0.1)
amplitude = Slider(title="amplitude", value=1.0, start=-5.0, end=5.0, step=0.1)
phase = Slider(title="phase", value=0.0, start=0.0, end=2*np.pi)
freq = Slider(title="frequency", value=1.0, start=0.1, end=5.1, step=0.1)

# Set up one callback for all the widgets, that uses all their values
def update_data(attrname, old, new):

    # Get all the current slider values
    a = amplitude.value
    b = offset.value
    w = phase.value
    k = freq.value

    # Generate the new curve based on all the values
    x = np.linspace(0, 4*np.pi, N)
    y = a*np.sin(k*x + w) + b

    # This update uses values from all four sliders at the same time
    source.data = dict(x=x, y=y)

Здесь я проиллюстрировал Slider, но принцип справедлив для любых виджетов.

...