Как установить цвет наведения для глифов в боке? - PullRequest
0 голосов
/ 09 января 2019

Есть два способа добавить глифы в Bokeh. Я предпочитаю второй способ, так как он дает больше гибкости с Ховерами и легендами. Я не могу найти возможность установить цвет при наведении во втором методе. Есть ли способ сделать это?

from bokeh.layouts import gridplot
from bokeh.models import ColumnDataSource, CDSView, IndexFilter
from bokeh.plotting import figure, show
from bokeh.io import curdoc, output_notebook, output_file, export_png    
from bokeh.models import (
  ColumnDataSource, Circle, HoverTool,Grid, TapTool,PanTool, WheelZoomTool, BoxSelectTool,ZoomInTool, ZoomOutTool, CDSView, GroupFilter)

curdoc().clear()
output_notebook()

source = ColumnDataSource(data=dict(x=[1, 2, 3, 4, 5], y=[1, 2, 3, 4, 5]))
view = CDSView(source=source, filters=[IndexFilter([0, 2, 4])])

#---------------------Method1-----------------------------
tools = ["box_select", "hover", "reset"]
p = figure(plot_height=300, plot_width=300, tools=tools)
p.circle(x="x", y="y", size=10, hover_color="red", source=source)

#---------------------Method2-----------------------------
p_glypg = figure(plot_height=300, plot_width=300, tools="pan,wheel_zoom,box_zoom,reset,zoom_in,zoom_out,save")
circle = Circle(x="x", y="y", size=10)
c = p_glypg.add_glyph(source, circle)
c_hover = HoverTool(renderers=[c], tooltips=[('x', '@x')])
p_glypg.add_tools(c_hover) 

show(gridplot([[p,p_glypg]]))

enter image description here

1 Ответ

0 голосов
/ 09 января 2019

Таким же образом, как выбранный / невыбранный может быть добавлен на низком уровне, как описано в документации:

https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#selected-and-unselected-glyphs

circle = Circle(x="x", y="y", size=10)
hover_circle = Circle(x="x", y="y", size=10, fill_color="red")
c = p_glypg.add_glyph(source, circle, hover_glyph=hover_circle)
...