我的问题如下:假设我有一个数据集,其中有4个字段
这4个字段显示在Tableau信息中心的表格中。当我点击表格中的任何项目时,我希望顶部的文字在我的表格中显示两个指标的排名和指标的唯一计数以及他们的价值观。
e.g。 '金额= 32,500:342中排名第4,卖出价= 2.5美元:6中排名第2'(我只有6种不同的卖价)
我还希望实现是动态的,因此当我按日期过滤时,结果将调整为适合例如'金额= 32,500:10分中排名第1,卖出价= 2.5美元:4分中排名第1
我尝试过使用RANK函数,但每当我点击表格中的一行时,它就会有效地过滤掉所有其他数据,并将等级设置为1。
有办法做到这一点吗?
答案 0 :(得分:4)
我认为你无法完全按照你的描述去做。
正如您所说,RANK()
函数为您提供当前“分区”中的排名,即实际显示在仪表板上的数据。如果排除例如。等级为1的行,等级为2的行现在为1。
无法根据数据源中的排名计算此值(除非您在Tableau之外执行此操作)。
如果您的数据源中有排名,则可以创建一个包含4个不同表格的仪表板(全表,金额,等级,记录数),并根据第一个中的选择过滤最后3个。
作为一种解决方法,您可以在工具提示中显示这些值。
[NumberofRecords]
Size()
[NumberofRecords]
,[Rank]
和[Amount]
放到工具提示架上答案 1 :(得分:3)
克里斯,
尝试使用INDEX()功能而不是RANK()。例如,如果您显示年份的结果,则您的32,500美元值可能会被列为123的123.当过滤到特定的日期时,该排名"排名"价值将在当天变为相应的排名。不确定这是否正是您所寻找的。这是关于该主题的教程视频。希望这会有所帮助。
Using Index for Rank in Tableau : Video Link
<强>更新强>
对于行和指标排名:
要验证数据,您可以在排名计算的右侧添加另一个离散维度价格字段。一切都应该按照预期在这里工作。
此外,我使用Tableau Superstore销售数据在以下链接中生成了一个快速示例。
Example Project Using Tableau Superstore Sales Data
埃里克