如何使用散景服务器获取鼠标位置?

How to get mouse position with bokeh server?

我想使用散景服务器通过回调函数获取鼠标在绘图中的位置。最新的散景版本 2.0.2 的解决方案会很棒。

到目前为止,我发现这个 由于图形对象中 tool_events 属性的弃用而不再起作用。

我发现这个 javascript example 不适用于 boekh 服务器上下文。

有人知道如何使用散景实现这一点吗?

如果你想在每次移动后获得鼠标位置,不管光标是否在任何字形上,你可以只听mousemove事件:

from bokeh.events import PointEvent
from bokeh.io import curdoc
from bokeh.plotting import figure

p = figure()
p.circle(0, 0)


def on_mouse_move(event: PointEvent):
    print(event.x, event.y, event.sx, event.sy)


p.on_event('mousemove', on_mouse_move)

curdoc().add_root(p)

您可能还对 mouseentermouseleave 感兴趣。