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

Vega-Lite非堆叠直方图Legend Binding下Tooltip显示异常求助

问题:Vega-Lite非堆叠直方图绑定图例后Tooltip显示异常

问题现象

  • 选中所有图例时,Tooltip显示正常;
  • 取消部分图例选择后,Tooltip会错误显示未选中系列的上方数据;
  • 预期Tooltip仅展示鼠标当前悬停的选中系列数据。

解决方案

核心原因是未选中的系列元素虽被隐藏,但仍存在于视图中,导致Tooltip触发时捕获到这些隐藏元素的数据。可通过以下方式修复:

方案1:修改选择器配置,移除未选中系列

在图例绑定的选择器中添加empty: "none",确保未选中的系列完全从视图中移除,而非仅隐藏:

"selection": {
  "legend": {
    "type": "multi",
    "fields": ["series"],
    "bind": "legend",
    "empty": "none" // 新增配置
  }
}

方案2:添加数据过滤变换,仅保留选中系列

通过transform过滤掉未选中的系列数据,从根源上移除无效元素:

"transform": [
  {"filter": {"selection": "legend"}} // 过滤选中的图例数据
]

同时保持选择器的基础配置:

"selection": {
  "legend": {"type": "multi", "fields": ["series"], "bind": "legend"}
}

补充:确保Tooltip配置正确

Tooltip需直接绑定当前数据字段,避免引用全局数据:

"tooltip": [
  {"field": "x", "type": "ordinal"},
  {"field": "series", "type": "nominal"},
  {"field": "y", "type": "quantitative"}
]

验证效果

修改后,取消部分图例时,未选中系列的数据会被移除或过滤,Tooltip仅显示当前悬停的选中系列数据,符合预期效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 17:52:58