Filter 在快速过滤器中切换时,Tableau工具提示不正确

Filter 在快速过滤器中切换时,Tableau工具提示不正确,filter,latitude-longitude,tableau-api,Filter,Latitude Longitude,Tableau Api,链接到 我创建了计算值来确定业务等级,这是colormap(在选项卡中) 当我将鼠标悬停在地图(选项卡)上的数据点上时,它会显示正确的等级,即DforShish Boom Bah Car Wash 但是,只要我从下拉列表中选择任何位置,所有等级都是a Tot_平均值的计算如下: { EXCLUDE [Location (Loc)] : AVG([Rating]) } AVG([Rating]) 平均额定值如下: { EXCLUDE [Location (Loc)] : AVG([Rat

链接到

我创建了计算值来确定业务等级,这是colormap(在选项卡中)

当我将鼠标悬停在地图(选项卡)上的数据点上时,它会显示正确的等级,即
D
for
Shish Boom Bah Car Wash

但是,只要我从下拉列表中选择任何位置,所有等级都是
a

Tot_平均值的计算如下:

{ EXCLUDE [Location (Loc)] : AVG([Rating]) }
AVG([Rating])
平均额定值如下:

{ EXCLUDE [Location (Loc)] : AVG([Rating]) }
AVG([Rating])
以下是获得A的条件:

IF [Avg_Rating]  > ATTR([Tot_Avg]) - (.10 * ATTR([Tot_Avg]))
THEN "A"

如何排除故障?

我认为您的困惑在于
EXCLUDE
在做什么。它不是忽略过滤器。这只是说在聚合
AVG([Rating])
时不要按位置分组。当您过滤掉除一个位置以外的所有位置时,
AVG([Rating])
{EXCLUDE[location(Loc)]:AVG([Rating])}
变得等效,因为无论是哪种计算,您都在对过滤分区中的所有点进行平均

因此,如果只有一个位置,则接收a的条件将始终为真。(检查数学:
X>X-.1X
→ <代码>X>.9X)

这里有一种不同的方式来获得你想要的。创建一个计算字段(我称之为位置过滤器):

然后丢弃位置过滤器并用该字段替换它。我们在这里做了一些鬼鬼祟祟的事情——我们制作了与以前完全相同的过滤器,但我们将其伪装为表计算(通过使用
LOOKUP()
)。Tableau在创建过滤分区之后才执行表计算,所以我们欺骗了它,让我们在检查一个位置的同时使用每个位置