Bokeh-Widget-Rückruf, um alle Checkboxen auszuwählen

Ich habe in ein paar Probleme beim Versuch, ein Bokeh CheckboxGroup-Widget einrichten. Die Checkbox Gruppe ist es selbst groß (50 Staaten) und ich möchte die Auswahl als alle aktivisieren.

Auch (und noch wichtiger), da diese Gruppe sehr interaktiv sein soll, möchte ich die Schaltflächen "Select All" und "Clear All" hinzufügen. Ich verstehe, dass ich einen Rückruf-Mechanismus brauchen werde, um dies zu tun, aber nach der Suche nach den Beispielen, Dokumentation und Stackoverflow, konnte ich nicht herausfinden, wie genau Ich habe eine vereinfachte Version von meinem Code unten. Meine Vorliebe ist es, das Standard-Widget Callback anstatt den JS-Callback zu verwenden.

Jede Hilfe geschätzt!

from bokeh.plotting import curdoc, output_file from bokeh.models.widgets import Button, CheckboxGroup from bokeh.layouts import widgetbox, row from bokeh.models import ColumnDataSource, Callback output_file("states.html", title="states") states = ["Alabama", "Alaska ", "Arizona", "Arkansas", "California", \ "Colorado", "Connecticut", "Delaware", "Florida", "Georgia", \ "Hawaii", "Idaho ", "Illinois", "Indiana", "Iowa", "Kansas", \ "Kentucky", "Louisiana", "Maine", "Maryland", "Massachusetts", \ "Michigan ", "Minnesota", "Mississippi", "Missouri", "Montana",\ "Nebraska", "Nevada ", "New Hampshire", "New Jersey",\ "New Mexico", "New York", "North Carolina", "North Dakota", \ "Ohio", "Oklahoma","Oregon", "Pennsylvania", "Rhode Island", \ "South Carolina", "South Dakota", "Tennessee", "Texas", "Utah",\ "Vermont", "Virginia","Washington", "West Virginia", \ "Wisconsin", "Wyoming"] states = CheckboxGroup( labels = states, active=[0,1]) select_all = Button(label="select all") # need some help here group = widgetbox(select_all, states) layout = row(group) curdoc().add_root(layout) curdoc().title = "states" 

One Solution collect form web for “Bokeh-Widget-Rückruf, um alle Checkboxen auszuwählen”

Die Grundfunktion des Bokeh-Servers besteht darin, alle Bokeh-Objekte sowohl auf der Python- als auch auf der JS-Seite synchron zu halten. Die active Eigenschaft der CheckboxGroup gibt an, welche CheckboxGroup zu jeder Zeit nicht nur Initialisierung überprüft werden. Um also alle Boxen zu überprüfen, musst du es nur im Rückruf richtig einstellen:

 from bokeh.plotting import curdoc, output_file from bokeh.models.widgets import Button, CheckboxGroup from bokeh.layouts import widgetbox, row from bokeh.models import ColumnDataSource, Callback output_file("states.html", title="states") states_list = ["Alabama", "Alaska ", "Arizona", "Arkansas", "California", \ "Colorado", "Connecticut", "Delaware", "Florida", "Georgia", \ "Hawaii", "Idaho ", "Illinois", "Indiana", "Iowa", "Kansas", \ "Kentucky", "Louisiana", "Maine", "Maryland", "Massachusetts", \ "Michigan ", "Minnesota", "Mississippi", "Missouri", "Montana",\ "Nebraska", "Nevada ", "New Hampshire", "New Jersey",\ "New Mexico", "New York", "North Carolina", "North Dakota", \ "Ohio", "Oklahoma","Oregon", "Pennsylvania", "Rhode Island", \ "South Carolina", "South Dakota", "Tennessee", "Texas", "Utah",\ "Vermont", "Virginia","Washington", "West Virginia", \ "Wisconsin", "Wyoming"] states = CheckboxGroup( labels = states_list, active=[0,1]) select_all = Button(label="select all") def update(): states.active = list(range(len(states_list))) select_all.on_click(update) group = widgetbox(select_all, states) layout = row(group) curdoc().add_root(layout) curdoc().title = "states" 
  • Holen Sie sich ausgewählte Daten im Feld Auswahlwerkzeug in Bokeh
  • Bokeh Zeitreihen-Plot-Annotation ist um 1 Stunde ausgeschaltet
  • So legen Sie Eigenschaften von ausgewählten / nicht ausgewählten Glyphen in Bokeh fest
  • Wie zeichnet man Balkendiagramm interaktiv auf der Grundlage des Wertes des Dropdown-Widgets in Bokeh-Python?
  • Bokeh custom ToolTips {safe} tag zeigt nichts an
  • Python bokeh - erstellen Sie eine benutzerdefinierte Pan-Taste
  • Code 503 in Flasche mit eingebettetem Bokeh Server App, der jsonified Daten durch requests.get ()
  • TimeSeries-Plots mit Bokeh
  • Probleme mit Korrelationsgraphen in Bokeh
  • Bokeh Widget Slicing Daten
  • Python Bokeh - Taptool zu einer Teilmenge von Glyphen zuordnen
  • Python ist die beste Programmiersprache der Welt.