Spotfire:条形图中的加权百分比计算
Spotfire : Weighted Percentage Calculation in BarChart
我有这组数据:
Kind Weight
A 3
A 3
A 3
B 2
B 2
C 1
我想创建一个 Spotfire 条形图来表示不同的 Kind 列值的贡献。 Spotfire 在这种情况下提供的表达式是:
Count() / THEN [Value] / Sum([Value]) OVER (All([Axis.X]))
但我想将其除以 Weight 列的值。当 Spotfire 要求聚合方法时,我尝试了这个方法但没有成功:
Count() / First([Weight]) THEN [Value] / Sum([Value]) OVER (All([Axis.X]))
郑重声明,我没有使用计算值,因为我的目的是拥有一个动态条形图。
提前致谢。
根据您想要的逻辑,您可以在条形图的 VALUE AXIS
上使用它:
UniqueCount([Kind]) / UniqueCount([Kind]) OVER (All([Axis.X]))
这将有效,除非 Weight
不等于 Count of Kind
如果您的 Weight
可以更改,例如,如果 Kind A
的权重为 2
而不是 3
但仍然有 3
行,您可以通过这样做来完成你的逻辑:
- 插入计算列:
Count([Kind]) OVER ([Kind]) / Max([Weight]) OVER ([Kind])
。将此列命名为 WeightedWeight
- 在条形图
VALUE AXIS
上使用此公式 Max([WeightedWeight]) / UniqueCount([Kind]) OVER (All([Axis.X]))
我有这组数据:
Kind Weight
A 3
A 3
A 3
B 2
B 2
C 1
我想创建一个 Spotfire 条形图来表示不同的 Kind 列值的贡献。 Spotfire 在这种情况下提供的表达式是:
Count() / THEN [Value] / Sum([Value]) OVER (All([Axis.X]))
但我想将其除以 Weight 列的值。当 Spotfire 要求聚合方法时,我尝试了这个方法但没有成功:
Count() / First([Weight]) THEN [Value] / Sum([Value]) OVER (All([Axis.X]))
郑重声明,我没有使用计算值,因为我的目的是拥有一个动态条形图。
提前致谢。
根据您想要的逻辑,您可以在条形图的 VALUE AXIS
上使用它:
UniqueCount([Kind]) / UniqueCount([Kind]) OVER (All([Axis.X]))
这将有效,除非 Weight
不等于 Count of Kind
如果您的 Weight
可以更改,例如,如果 Kind A
的权重为 2
而不是 3
但仍然有 3
行,您可以通过这样做来完成你的逻辑:
- 插入计算列:
Count([Kind]) OVER ([Kind]) / Max([Weight]) OVER ([Kind])
。将此列命名为WeightedWeight
- 在条形图
VALUE AXIS
上使用此公式Max([WeightedWeight]) / UniqueCount([Kind]) OVER (All([Axis.X]))