Sarebbe bello poter visualizzare e nascondere le linee in modo interattivo in un grafico bokeh. Di ', ho creato la mia trama qualcosa di simile:Come visualizzare e nascondere le linee in modo interattivo in un grafico Bokeh?
from bokeh.plotting import output_file, figure, show
from numpy.random import normal, uniform
meas_data_1 = normal(0, 1, 100)
meas_data_2 = uniform(-0.5, 0.5, 100)
output_file("myplot.html", title="My plot")
fig = figure(width=500, plot_height=500)
fig.line(x=range(0, len(meas_data_1)), y=meas_data_1)
fig.line(x=range(0, len(meas_data_2)), y=meas_data_2)
show(fig)
Come posso aggiungere la possibilità di abilitare in modo interattivo/disabilitare una delle due linee?
So che questo è nella lista dei desideri (vedi this feature request), ma non sembra che sarebbe stato implementato troppo presto.
Ho l'impressione che questo dovrebbe essere possibile utilizzando un CheckBoxGroup e un self-defined callback, ma purtroppo questo callback deve essere scritto in JavaScript, che non ho assolutamente alcuna esperienza in.
Grazie per la modifica! Domanda a parte: c'è un modo per farlo usando un elenco di riproduttori invece di variabili separate? Mi piacerebbe mostrare/nascondere un insieme di ~ 30 diversi renderer contemporaneamente. – user2561747
Probabilmente, dovresti essere in grado di passare un elenco come uno dei valori nel dict 'args', IIRC. – bigreddot
Impossibile ottenere che funzioni, bokeh sollevato 'ValueError: previsto un elemento di Dict (String, Instance (Model)), ottenuto {'renderers': [, .. .], 'checkbox': } ' –
user2561747