如何让 hoverTool 只对某些字形进行命中测试?

How to make hoverTool only do hit test on certain glyphs?

fig = figure(plot_width=1000, plot_height=500, tools=[HoverTool()])
fig.circle([1,2,3], [1,2,3], color='red')
fig.circle([1,2,3], [2,3,4], color='blue')
show(fig)

我希望 hoverTool 只适用于红色圆圈。

文档说:

renderers
property type: List(Instance(Renderer))

An explicit list of renderers to hit test again. If unset, defaults to all renderers on a plot.

但是,Circle 字形似乎不是渲染器。

您必须向每个圆形字形添加名称="foo" 属性,然后将您要与之交互的渲染器的名称传递给 HoverTool[=11] 的 "names" 属性=]

如:

fig = figure(plot_width=1000, plot_height=500, tools=[HoverTool(names=['reds'])])
fig.circle([1,2,3], [1,2,3], color='red', name='reds')
fig.circle([1,2,3], [2,3,4], color='blue', name='blues')
show(fig)