基于Tableau 2022的带百分比与数值的垂直堆叠条形图实现问询
在Tableau Desktop 2022中实现需求的方案
可行性确认
完全可行,Tableau 2022的筛选器、计算字段及图表配置能力可覆盖所有需求。
分步实现方法
1. 搭建基础堆叠条形图
- 把
FieldA拖到行功能区,每个FieldA值对应一行 - 将你的数值度量字段拖到列功能区
- 把
FieldB拖到标记卡的颜色栏,自动生成基于FieldB的堆叠条形 - 拖数值度量到标记卡的标签,显示原始数值
2. 配置FieldB的单选按钮筛选器
- 拖
FieldB到筛选器功能区,全选所有值后确认 - 右键筛选器控件,选择单选按钮样式,勾选允许多个值,支持1-6个选项的选择
3. 实现单选/多选的图表模式切换
通过计算字段动态控制显示的度量类型:
步骤1:创建计算字段选中FieldB数量
SIZE()
右键该字段→计算依据→选择FieldB,确保计算的是当前筛选后FieldB的选项数量
步骤2:创建动态显示值计算字段
IF [选中FieldB数量] = 1 THEN [你的数值度量字段] ELSE SUM([你的数值度量字段]) / TOTAL(SUM([你的数值度量字段])) END
步骤3:替换度量并设置格式
- 把列功能区的原始度量换成
动态显示值 - 选中单个FieldB选项时,图表显示常规数值堆叠;选中多个时,自动切换为百分比堆叠
- 选中标签,在设置格式面板设置数字格式为
自动,让数值/百分比自动适配
4. 同时显示数值与百分比(多选场景)
创建组合标签计算字段:
IF [选中FieldB数量] = 1 THEN STR([你的数值度量字段]) ELSE STR([你的数值度量字段]) + " (" + STR(ROUND(SUM([你的数值度量字段])/TOTAL(SUM([你的数值度量字段]))*100, 1)) + "%)" END
拖该字段到标记卡的标签,替换原有标签,即可在多选时同时显示数值和百分比
实用技巧
- 确认
选中FieldB数量的计算依据为FieldB,避免计算错误 - FieldB新增选项时,筛选器会自动同步,无需手动更新
- 把筛选器设为浮动,固定在仪表盘显眼位置,优化交互
- 多选时确保标记卡的堆叠模式处于开启状态,保证百分比堆叠显示正确
内容的提问来源于stack exchange,提问作者sanchoniathon
相关产品推荐
相关产品推荐

