如何在 Holoviews 中设置活动工具

kcp*_*kcp 2 python-3.x bokeh holoviews

有时我的绘图是在工具处于活动状态时绘制的,有时是在和处于活动状态pan时绘制的。我想在渲染时强制激活。有没有办法做到这一点?panwheel_zoomwheel_zoom

phi*_*jfr 6

自从 Holoviews 1.11.0 发布以来,原来的答案已经过时了。HoloViews 现在有一个显式选项来设置活动工具,调用active_tools它接受工具名称或实例列表,例如要wheel_zoom默认激活该工具,您可以这样做:

 hv.Curve([1, 2, 3]).options(active_tools=['wheel_zoom'])
Run Code Online (Sandbox Code Playgroud)

下面答案的其余部分已过时:

对于 HoloViews 中未直接公开的任何选项,您可以定义可以直接修改散景模型的钩子。这是一个简单的示例,定义了一个钩子来设置活动滚动工具(如散景文档中所述)

def set_active_tool(plot, element):
    plot.state.toolbar.active_scroll = plot.state.tools[2]

hv.Curve([1, 2, 3]).options(finalize_hooks=[set_active_tool])
Run Code Online (Sandbox Code Playgroud)

不过,设置活动工具似乎是一个相当常见的操作,因此提出问题以请求可以将活动工具直接声明为绘图选项将不胜感激。