【问题标题】:Tableau blending with aggregation across nullsTableau 与空值聚合混合
【发布时间】:2014-12-25 20:00:08
【问题描述】:

我想使用仅包含 id 子集的辅助数据源为图表着色:

我有一个将项目与开始日期和大量供应商相关联的主要数据源 - 一个项目可能有很多供应商。我有一个辅助数据源,它将我的一部分供应商链接到一个表明他们所在层级的排名。

我想按项目年份制作面积图,用颜色细节显示供应商层级的细分。由于一个项目可能涉及许多供应商,我想按所涉及的任何供应商的最高层(例如 max(tier))为每个项目着色。不在我的辅助数据源中的供应商应分配到最低层 (0)。

我的辅助资源中有一个计算字段,它生成一个代表排名中的层级的数字(排名越低越好,任何排名都比没有好):

Tier: if isnull([rank]) then 0 else if [rank] >= 200 then 2 else 1

在我的主要中,我定义了另一个计算字段来按层对每个项目进行聚合:

VendorClass: if max[Secondary].[tier] == 0 then "Low vendors" elseif max[Secondary].[tier] == 2 'Top Vendors' else 'Mid Vendors'

但是,当我尝试绘制项目 ID 与 VendorClass 的不同计数时,我看到每个项目都获得相同的 VendorClass('Top')。

我怀疑这是由于 VendorClass 字段删除了辅助项中存在空值的项目,尽管计算字段尝试将空值变为 0。

任何帮助表示赞赏.....

更新:

这是我的表格:

主要来源:

项目: project_id | name | date_started | etc. 123 | project1 | 2009-01-01 456 | project2 | 2010-01-01 789 | project3 | 2010-06-01

供应商: vendor_id | name | address | etc. 1 | Foo | main st 2 | Bar | state st 3 | Fob | church st 4 | Bof | broadway

项目供应商 project_id | vendor_id 123 | 1 123 | 2 456 | 2 456 | 3 456 | 4 789 | 3 789 | 4

次要来源: vendor_id | rank | tier 1 | 1 | 2 2 | 200 | 1

注意:我可以从我的数据源传递层级或将其计算为辅助字段中的字段 - 没关系 - 但关键是不在此表中的供应商(例如 3 和 4)应分配到层0. 由于供应商的数量和保持同步的问题,将每个供应商都添加到此数据源是不切实际的。

我想要一个图表来显示每年不同项目的总数,但我希望每个案例的颜色代表该项目中任何供应商的最高级别:

2009 年有一个项目,有 2 个供应商,其中最大层级是 2(供应商 1),因此它是列 1 高的单位,例如第 2 层为蓝色。

2010 年有两个项目。 456 的最大层级为 1(供应商 2),789 的最大层级为 0(供应商 3 和 4),因此 2010 的列高为 2 个单位,例如第 1 层为绿色,其中一个段,例如第 0 层为红色。

【问题讨论】:

  • 这令人困惑。尝试简要了解一下您的表格和您正在使用的内容作为关键,以便我们更好地了解您拥有什么以及您想要实现的目标
  • 无论如何,您并没有处理表 1 中的条目与表 2 没有对应关系的情况。您只是在处理可能出现在表 2 本身上的空值。但这不是您问题的根源(否则它将落在 ELSE 语句上,而不是 ELSEIF 上)。需要查看表格和密钥以了解正在发生的事情

标签: tableau-api


【解决方案1】:

尝试在主数据源中定义层计算字段(在辅助数据源中引用字段)

要查看引用另一个数据源中字段的语法,请使用计算编辑器中字段下的下拉菜单选择您需要引用的数据源。

它必须是一个聚合计算,这意味着计算的行为取决于可视化元素上的维度,因为它们决定了分区。

【讨论】:

    【解决方案2】:

    上述示例中不需要您的混合。尝试用连接替换混合,计算将被简化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多