在示例here之后,我向堆叠的条形图添加了多个工具提示。我还想在图上方的工具栏中提供其他工具,但是当使用示例中的过程创建多个悬停工具时,它会在工具栏中创建多个图标,看起来像这样:
是否可以添加多个悬停工具,并使工具栏与其他工具一起可见,但不能复制悬停图标?
答案 0 :(得分:2)
只需将toggleable
属性设置为False
。检查隐藏鼠标悬停工具按钮的此示例:
from bokeh.models import HoverTool, ColumnDataSource, LassoSelectTool, PanTool
from bokeh.plotting import show, figure, curdoc
source = ColumnDataSource(dict(
x=[1, 2, 3, 4],
y=[5, 6, 7, 8]
))
p = figure(
width=400,
height=400,
tools='')
p.scatter(
x='x', y='y', source=source,
fill_alpha=1.0, line_alpha=1.0, line_color="grey",
size=6
)
pan = PanTool()
lasso = LassoSelectTool()
tooltips = '''
<b>X: </b> @{x} <br>
<b>Y: </b> @{y} <br>
'''
hover = HoverTool(
toggleable=False, # add this to all your hover tools
mode='mouse',
tooltips=tooltips,
)
tools = (
pan, lasso, hover
)
p.add_tools(*tools)
curdoc().add_root(p)
好吧,如果您只想使用一个按钮,则可以只使用一个悬停工具。模型CustomJSHover
对您可能有用。
作为解决方法,您还可以通过按一些按钮或自定义工具来更新每个悬停的renderers
属性。