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

Plotly如何隐藏hoverlabel且在Dash回调中保留hoverData功能

解决方案

核心原理

你之前的操作存在两个问题:

  • hoverinfo、hovertemplate是**trace(数据层)**的配置参数,不属于布局配置,放在update_layout里才会提示非法参数
  • 你将hovermode=False相当于全局禁用了所有hover事件监听,自然无法触发回调获取hoverData

可行实现方案

不需要修改全局hover配置,只需要将对应trace的hoverlabel透明度设为0,视觉上完全隐藏悬浮标签,同时hover事件会正常触发,不影响hoverData的获取。

修改后的代码如下:

import plotly.express as px
from PIL import Image
import numpy as np

ss_rgb = np.array(Image.open('test.png'))

fig = px.imshow(ss_rgb)

fig.update_xaxes(visible=False)
fig.update_yaxes(visible=False)
fig.update_layout(
     dragmode=False
    # 删除hovermode=False配置,保留默认hover事件监听
)
# 新增:隐藏所有trace的hoverlabel,不影响hover事件触发
fig.update_traces(hoverlabel_opacity=0)

可选补充方案

如果你需要完全清空悬浮标签内容而非仅隐藏,也可以在update_traces中配置空的hovertemplate,配合使用效果更稳妥:

fig.update_traces(
    hoverlabel_opacity=0,
    hovertemplate=""
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 03:36:02