You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bokeh使用HoverTool时仅展示单个悬浮提示框的问题咨询

解决方案

方法1:修正现有CSS写法

你代码中的CSS存在两处问题:一是将选择器中的div误写为dif,二是选择器适配的是旧版Bokeh的DOM结构,适配Bokeh 2.3.3的正确CSS如下:

div.bk-tooltip > div.bk-tooltip-row:not(:first-child) {
    display: none !important;
}

替换掉你原有tooltips里的style段即可生效。

方法2:直接通过Bokeh接口配置(更稳定,无需自定义CSS)

Bokeh 2.3.3的HoverTool原生支持单条提示展示,仅需在实例化时添加两个参数即可,完整示例代码如下:

from bokeh.plotting import figure, show
from bokeh.models import HoverTool, Range1d

custom_hover = HoverTool(
    tooltips="""
        <b>X: </b> @x <br>
        <b>Y: </b> @y
    """,
    point_policy="first",  # 重叠时仅取第一个匹配的元素
    show_all=False  # 关闭多数据同时展示
)

p = figure(tools=[custom_hover])

p.circle(x=[0.75,0.75,1.25,1.25], y=[0.75,1.25,0.75,1.25], size=230, color='red', fill_alpha=0.2)
p.y_range = Range1d(0,2)
p.x_range = Range1d(0,2)

show(p)

两种方法都可以实现重叠数据点仅展示单条tooltip的需求,第二种方法不需要依赖DOM结构,Bokeh版本升级时兼容性更好。


内容的提问来源于stack exchange,提问作者cmfrantz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 09:36:03