¿Cómo capturar el valor del widget desplegable en bokeh python?
La documentación oficial de bokeh 0.12.1 en el enlace proporciona el siguiente código para crear un menú desplegable.
Pero no menciona claramente cómo capturar el valor del widget desplegable cuando alguien hace clic y selecciona un valor del menú desplegable.
from bokeh.io import output_file, show
from bokeh.layouts import widgetbox
from bokeh.models.widgets import Dropdown
output_file("dropdown.html")
menu = [("Item 1", "item_1"), ("Item 2", "item_2"), None, ("Item 3", "item_3")]
dropdown = Dropdown(label="Dropdown button", button_type="warning", menu=menu)
show(widgetbox(dropdown))
Pregunta
Se ve que hay 2 métodos llamados on_click () y on_change () pero a partir de la documentación no se pudo descubrir cómo capturar el valor. ¿Cómo podemos asignar el valor seleccionado a una nueva variable?
EDITAR
Según la información de @Ascurion, actualicé mi código como se muestra a continuación. Pero cuando selecciono un valor en el menú desplegable, nada se imprime en la consola ipython en Spyder. Por favor avise.
from bokeh.io import output_file, show
from bokeh.layouts import widgetbox
from bokeh.models.widgets import Dropdown
output_file("dropdown.html")
menu = [("Item 1", "item_1"), ("Item 2", "item_2"), None, ("Item 3", "item_3")]
dropdown = Dropdown(label="Dropdown button", button_type="warning", menu=menu)
def function_to_call(attr, old, new):
print dropdown.value
dropdown.on_change('value', function_to_call)
dropdown.on_click(function_to_call)
show(widgetbox(dropdown))