我已经完成了苹果的平均价格计算。 See example
在新专栏" testar"中,我只想显示1990 - 1994年(黄色单元格),因为其他年份未在我的公式中指定。 用于平均计算的公式是:
=CALCULATE (
AVERAGEX (Datasrc; Datasrc[C_P2] );
DATESBETWEEN(Datasrc[Year];"1990-01-01";"1994-01-01")
)
任何想法或建议怎么做?
答案 0 :(得分:3)
您需要在IF()中测试Datasrc [Year]的值。
以下是使用虚拟数据集的示例。
Testar =
IF(
MAX( DimDate[Year] ) > 2010
&& MAX( DimDate[Year] ) < 2014
,[SumAmt]
)
我们正在测试MAX()DimDate [Year]。在任何给定的轴上,只有一年在上下文中,因此max是该轴上的年份。
您使用的度量计算您定义的5年内容中的平均值,覆盖当前过滤器上下文的任何内容。
此外,在这种情况下,AVERAGEX()是不必要的;你可以使用AVERAGE(Datasrc [C_P2])。
答案 1 :(得分:0)
差不多,感谢您的宝贵意见并让我朝着正确的方向前进!!!,因为我年份表的格式不同,我希望列出的平均价格我做了一点点不同。我只是将您的公式与我的 平均公式 结合起来,得到了我想要的结果。 {{3}}
使用的代码:
var bar2 = svg.selectAll("g.bar")
.data(data)
.enter()
.append("g")
.attr("transform", function(d, i) { return "translate(0," + i * barHeight + ")"; });
var bar = svg.selectAll("g.bar")
.data(data)
.enter()
.append("g")
.attr("transform", function(d, i) { return "translate(0," + i * barHeight + ")"; });
公式的第一部分仅取出我感兴趣的年份。 公式的第二部分[CALCULATE(AVERAGEX ....)计算我感兴趣的年份的平均值。