Ich beginne, Bokeh zu verwenden, um Daten zu plotten, die keine gemeinsame x- oder y-Variable teilen. Ich würde gerne in der Lage sein, eine Linie auszuwählen und die anderen, nicht ausgewählten Linien grau auszublenden. Idealerweise würde die ausgewählte Linie auch an die Vorderseite des Diagramms gebracht werden.Farbe der nicht ausgewählten Bokeh-Linien ändern
Bisher war es mir möglich, die Linie auszuwählen, aber ich finde keine Möglichkeit, die nicht ausgewählten Linien auszugrauen oder die Höhe der ausgewählten Linie einzustellen.
import numpy as np
from bokeh.plotting import figure, show, output_file
from bokeh.models.sources import ColumnDataSource
from bokeh.models import Line,TapTool
output_file("test.html")
x0s = np.random.randint(0,20,20)
y0s = np.random.randint(0,20,20)
x1s = np.random.randint(0,20,20)
y1s = np.random.randint(0,20,20)
p_left = figure(tools=[TapTool()])
for xs,ys in zip([x0s,x1s],[y0s,y1s]):
source = ColumnDataSource({'x': xs, 'y': ys})
default_line = Line(x='x', y='y', line_color='blue', line_width=2)
selected_line = Line(line_color='red', line_width=4)
nonselected_line = Line(line_color='grey')
p_left.add_glyph(source,default_line,selection_glyph=selected_line,nonselection_glyph=nonselected_line)
show(p_left)
Können Sie bitte einige Skripte zeigen? Ich versuche das Gleiche, aber es sind immer alle Zeilen ausgewählt oder alle nicht ausgewählt - ich kann keine Zeile aus 3 auswählen – jf328