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

Vega-Lite(Deneb)甜甜圈图问题:聚合分类时文本标记无法同步聚合

问题描述

拥有两个字段:

  • Medium:子类别
  • Medium-Type:类别

按子类别生成甜甜圈图时,数据标签显示正常;但按类别聚合生成甜甜圈图时,甜甜圈分段表现正常,文本标记无法同步聚合。

数据集示例:
Dataset

正常效果(子类别甜甜圈图)

Donut - SubCategory

异常效果(类别聚合甜甜圈图)

Donut - Category

解决方案

问题核心是文本标记层未同步应用与甜甜圈图一致的聚合逻辑。修改Vega-Lite配置时,需确保文本标记的数据源和聚合规则与甜甜圈图完全对齐:

  1. 全局统一数据聚合:在图表根级别添加transform完成数据聚合,避免仅在甜甜圈图层单独设置聚合。示例配置片段:
{
  "data": {...},
  "transform": [
    {"aggregate": [{"op": "sum", "field": "数值字段名", "as": "聚合后数值"}], "groupby": ["Medium-Type"]}
  ],
  "layer": [
    // 甜甜圈图层
    {
      "mark": {"type": "arc", "innerRadius": 50},
      "encoding": {
        "theta": {"field": "聚合后数值", "type": "quantitative"},
        "color": {"field": "Medium-Type", "type": "nominal"}
      }
    },
    // 文本标记层
    {
      "mark": {"type": "text", "radius": 100},
      "encoding": {
        "theta": {"field": "聚合后数值", "type": "quantitative"},
        "text": {"field": "聚合后数值", "type": "quantitative"},
        "color": {"value": "#000"}
      }
    }
  ]
}
  1. 文本标记引用聚合字段:文本标记的text和theta字段必须指向聚合后的字段,而非原始数值字段。这样标签会基于聚合后的数据生成,与甜甜圈分段完全匹配。
验证效果

调整后,类别聚合的甜甜圈图文本标记将同步显示聚合后的数值,与分段一一对应。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 08:14:51