В документации Bokeh GlyphRenderer ничего подобного не указано. Простая альтернатива - создать свой собственный обратный вызов HoverTool
, чтобы придать кружочкам без наведения желаемый вид, как в этом примере (работает для Bokeh v1.0.4)
from bokeh.models import ColumnDataSource, HoverTool, CustomJS
from bokeh.plotting import show, figure
source = ColumnDataSource(dict(x = [1, 2], y = [3, 4], color = ['blue', 'blue']))
p = figure(tools = 'hover')
c = p.circle(x = 'x', y = 'y', color = 'color', size = 20, source = source)
code = ''' if (cb_data.index.indices.length > 0){
selected_index = cb_data.index.indices[0];
for (index in source.data['color']){
if (index == selected_index)
source.data['color'][index] = 'red';
else
source.data['color'][index] = 'yellow';
source.change.emit();
}
else{
for (index in source.data['color'])
source.data['color'][index] = 'blue';
} '''
p.select(HoverTool).callback = CustomJS(args = dict(source = source), code = code)
show(p)
Результат;