Nat*_*han 3 python bokeh holoviews
如何holoviews
通过bokeh
后端控制绘图中使用/激活哪些工具?我已经看到了这个 SO 答案,但这只是添加了一个新的活动工具;它不会阻止任何其他工具(例如平移)处于活动状态。
对于一个具体的例子,假设我只想要悬停工具。我会尝试这样做:
import holoviews as hv
hv.extension("bokeh")
hv.Curve([1, 2, 3]).opts(tools=["hover"])
Run Code Online (Sandbox Code Playgroud)
但最终我得到了一个除了默认工具之外还悬停的图。如何指定我想要使用的所有工具的列表,以便不使用该列表之外的工具?
同样,如何指定所有活动工具的列表?例如
import holoviews as hv
hv.extension("bokeh")
hv.Curve([1, 2, 3]).opts(tools=["hover"], active_tools=[])
Run Code Online (Sandbox Code Playgroud)
让我平移和悬停都处于活动状态;我希望悬停成为唯一的工具,但没有任何工具处于活动状态。
对于第一个问题,请使用default_tools
选项:
hv.Curve([1, 2, 3]).opts(tools=["hover"], default_tools=[])
Run Code Online (Sandbox Code Playgroud)
对于第二个问题,holoviews中没有方法可以做到这一点,但你可以Figure
直接将其设置为对象:
def set_tools(plot, element):
plot.state.toolbar.active_drag = None
hv.Curve([1, 2, 3]).opts(finalize_hooks=[set_tools])
Run Code Online (Sandbox Code Playgroud)