表示可用于触发回调的粒度事件。
Bokeh文档和应用程序能够支持各种交互。这些事件通常与事件相关,例如鼠标或触摸事件、交互式下采样模式激活、小部件或工具事件等。此模块中的类表示这些不同的事件,因此可以在回调发生时附加并执行回调。
可以用 CustomJS 回调,无论有没有Bokeh服务器都能正常工作。这可以通过传递和事件类以及 CustomJS 向 js_on_event() 方法。当 CustomJS 在浏览器中执行,其 cb_obj 参数将包含触发回调的具体事件对象。
CustomJS
js_on_event()
cb_obj
from bokeh.events import ButtonClick from bokeh.models import Button, CustomJS button = Button() button.js_on_event(ButtonClick, CustomJS(code='console.log("JS:Click")'))
或者,在Bokeh服务器上运行的Bokeh应用程序的上下文中,也可以触发Python代码在事件发生时运行。这可以通过将事件类和回调函数传递给 on_event() 方法。回调应该接受一个参数 event ,它将传递触发回调的具体事件对象。
on_event()
event
from bokeh.events import ButtonClick from bokeh.models import Button button = Button() def callback(event): print('Python:Click') button.on_event(ButtonClick, callback)
注解
事件没有限制。一些事件,如 MouseMove 可能会以很高的速率触发。
MouseMove
ButtonClick
在Bokeh按钮小部件上宣布按钮单击事件。
DocumentEvent
所有Bokeh文档事件的基类。
这个基类对于单独实例化通常不有用。
DocumentReady
当文档完全空闲时通知。
DoubleTap
在Bokeh图上宣布双击或双击事件。
sx
事件的x坐标 屏幕 空间
浮动
sy
事件的y坐标 屏幕 空间
x
事件的x坐标 data 空间
y
事件的y坐标 data 空间
Event
所有Bokeh事件的基类。
decode_json
事件的自定义JSON解码器。
可以用作 object_hook 的参数 json.load 或 json.loads .
object_hook
json.load
json.loads
dct (dict) -- 解码字典的JSON字典应该有键 event_name 和 event_values
event_name
event_values
ValueError, if the event_name is unknown --
实际案例
>>> import json >>> from bokeh.events import Event >>> data = '{"event_name": "pan", "event_values" : {"model_id": 1, "x": 10, "y": 20, "sx": 200, "sy": 37}}' >>> json.loads(data, object_hook=Event.decode_json) <bokeh.events.Pan object at 0x1040f84a8>
LODEnd
宣布“交互详细程度”模式结束。
在交互操作(如平移或缩放)期间,Bokeh可以选择临时绘制一组缩减的数据,以保持较高的交互速率。这称为交互式详细等级(LOD)模式。此事件在LOD模式刚结束时激发。
LODStart
宣布在绘图上开始“交互式详细程度”模式。
在交互操作(如平移或缩放)期间,Bokeh可以选择临时绘制一组缩减的数据,以保持较高的交互速率。这称为交互式详细等级(LOD)模式。此事件在LOD模式刚开始时触发。
MenuItemClick
在Bokeh菜单项上宣布按钮单击事件。
ModelEvent
所有Bokeh模型事件的基类。
__init__
创建新的基本事件。
model (Model) -- 注册事件回调的Bokeh模型
MouseEnter
宣布鼠标进入事件到Bokeh图。
当鼠标离开整个绘图画布(包括轴或图例的任何边框填充和空间)时,将生成enter事件。
MouseLeave
从一个Bokeh情节中宣布一个鼠标离开事件。
当鼠标离开整个绘图画布(包括轴或图例的任何边框填充和空间)时,将生成leave事件。
在Bokeh情节上宣布鼠标移动事件。
此事件可能以非常高的速率触发,可能会增加网络流量或CPU负载。
MouseWheel
在Bokeh情节上宣布鼠标滚轮事件。
delta
(有符号)滚动速度
默认情况下,Bokeh图不会阻止默认滚动事件,除非 WheelZoomTool 或 WheelPanTool 处于活动状态。这可能会在将来的版本中发生变化。
WheelZoomTool
WheelPanTool
Pan
在一个Bokeh阴谋中宣布一个泛活动。
delta_x
x方向的滚动量
delta_y
y方向的滚动量
direction
滚动方向(1或-1)
PanEnd
宣布在一个Bokeh阴谋的泛活动的结束。
PanStart
宣布一个泛活动的开始。
Pinch
在一个Bokeh阴谋中宣布一个紧急事件。
scale
(有符号的)缩放量
此事件仅适用于触控设备。
PinchEnd
在一个Bokeh阴谋中宣布一个紧缩事件的结束。
PinchStart
在一个Bokeh阴谋中宣布一个紧缩事件的开始。
PlotEvent
适用于绘图模型的所有事件的基类。
PointEvent
与特定(x,y)点关联的UI事件的基类。
请注意,数据空间坐标是相对于默认范围的,而不是任何额外的范围,并且屏幕空间原点位于HTML画布的左上角。
Press
宣布一个关于博克阴谋的新闻发布会。
PressUp
在一个Bokeh情节上宣布一个新闻发布会。
Reset
宣布绘图上的按钮单击事件 ResetTool .
ResetTool
Rotate
在Bokeh图上宣布一个轮换事件。
rotation
已完成的旋转(度)
RotateEnd
宣布一个旋转事件的结束。
RotateStart
宣布一个旋转事件的开始。
SelectionGeometry
宣布绘图上选择事件的坐标。
geometry
包含选择事件坐标的字典。
双关语
final
在每个mousemove上进行选择时,选择事件是否是最后一个选择事件。
布尔
Tap
在Bokeh图上宣布点击或点击事件。