[translate]

by Michael Wu 喜乐君 2019/5

2018.3发布的新功能集值,进一步扩展了Tableau的交互功能,通过用户选择数据实现了更深入、更多样化的数据对比,并有更多的机会以全新视角理解数据。如今,你可以为数据的利益相关者提供更丰富的分析、更灵活的探索和更简单的用户体验。有关集值如何应用于数据对比方面,可以参考上一篇博客

集值使得交互更加具有感染力,无需编程即可对仪表板提供更加精准的控制。它们使得用户能够针对终端用户交互设计自定义的反馈。因此,可以通过单一的选择协调多个可视化视图的不同交互动作,从而创造接近无限的组合。

筛选器 VS 集值 Filter actions vs. set actions

视图的交互往往被认为就是筛选,不过,筛选只是用户选择的一种反馈形式,有时候,我们还想要更多,比如以下的场景:

1、查询与选择相关的所有条目,而不是仅保留精准匹配的数据。

2、保留符合任意一条条件的条目,而不是满足所有条件的;

3、对所选数据的排序、对齐、分组、下钻操作,同时保留这些数据的背景数据;

4、隐藏数据,而非过滤数据,因此可以在计算中继续使用。

筛选仅仅是保留选择的数据,而组则是把数据分成两类:组内和组外。严格的将,筛选是组的一种特殊形式,原则上,组可以实现筛选实现的所有功能,但是反过来可不行。

 

借助集值功能,终端用户在视图中选择的数据标记可以保存在集中。由于集可以嵌套(比如创建合并集),也可以应用在计算字段中,因此用户就可以设计更加多样的交互动作,比如类似A或者B的筛选,建立在关系上的筛选等,这就为一些复杂问题比如购物篮分析提供了新的解决方案。在下面分享的视频中,我们将重点论述大家可能遇到的一些特殊场景下的用户操作流程,比如基于关系的筛选,排序和对齐标记,类似于A或者B的筛选,动态分组,运行表计算等。你可以学到以下的内容:

  • 在交互中呈现数据关系和重叠分析;
  • 借助Tableau的运算,以运算辅助分析型思考
  • 使用提示和技巧来设计和着色

点击这里下载博客使用的数据源  【这里】 和工作簿  here.

 

案例1 :关系筛选  Filtering on relationships

概念:一些数据代表意义,而另一些数据代表关系。我们都是面向于那些代表意义的数据类型做选择。以2018年世界杯球队举例,人们不会问“哪些球队属于 分组E?”而是这样问,“哪些球队属于巴西所在的分组?”(ps:“巴西”是有意义的数据,而分组E则代表的是数据包含的关系)分组字段只有在我们做检查时有意义。筛选总是选择用户选中的标记,而集可以选择与用户选择有关系的其他字段。

数据源:2018年世界杯比赛结果

场景:选择一支球队,统计它参加的比赛数量以及输赢打平的对象,每支球队赢球和失球的数量。

说明:当我们选择一个国家时,进球和失球的数量正好相同,因此进球是相对于所选择的球队而言的。

延伸说明:购物篮分析可以用这个方法来分析,仅需要把订单好代替球队,产品代替球队即可。

【常识】
W、D、L分别是 wins、draws、losses,即胜、平、负;

GS 代表“进球”(goals scored),GA 代表“失球”(goals against),GD 代表“净胜球”(goals difference);P 就是“积分”(points)

Example 1 - Filtering on a Related Field.gif

 

 

(本案待展开)

案例2:选择数据的排序与对齐 Sorting and aligning on a selection

概念:堆叠条形图(Stacked bar charts)常被用来统计部分相对于总体的占比。最大的部分相对于总体的占比比较清晰,但是要看其他的部分的占比就不太容易,因为它们不是在一个基准上。通过排序和对齐选择的数据标记,交互可以解决这个问题。

数据源:2017-2018年股市数据

场景:每只股票上涨或者下跌的频率如何,涨跌幅度是多少?哪些股票波动最大,而哪些最为稳定?同样,哪些股票上涨更多,而哪些下跌更多?

说明:每个条形代表的是股票每日涨跌幅度的分布情况,深红色部分代表经常下跌的股票,而深紫色代表经常上涨的股票。颜色的深浅代表涨跌变化的程度。选择不同的部分,可以回答关于涨跌幅度、程度和涨跌方向的高级问题。

延伸说明:虽然每只股票的条形长度总是一样,选个一个或者多个分类时,条形都会自动对齐到最小的区间。
Noteworthy: While the bar lengths are always identical across stocks, selecting one or multiple bins realigns the bars against the minimum selected bin.

Example 2 gif- Sorting and Aligning on a Selection

 

案例3: “A或B”类型的查询   OR logic applied across selection criteria

概念:多个筛选器总是对数据标记执行“并集”查找操作,而集可以执行“A或B”类型的查询操作。

数据源:伦敦的名义房产价格(1995~2018)

场景:以房产类型分类,对应的房产的总额占比(此句有些费解 :What proportion of properties have a selected estate type OR are categorised by a selected property type? )哪一类房产对应两种标准?对于仅对应一种产品类型的房产而言,产权类型和房屋类型的占比分别是多少?

Scenario: What proportion of properties have a selected estate type OR are categorised by a selected property type? What proportion meet both criteria? Of the proportion that meet only one criteria, what percent meets the estate type criteria and what percent meets the property type criteria?

说明:百分比分析结合“A或者B”条件可以帮助我们分析跨选区的重叠情况。例如,几乎每套房产都对应一种产权类型;但是在独立产权和联排房产(terraced properties)之间有很高的重合度,而独立产品和套内平层(相当于公寓)直接则几乎没有重叠。

延伸说明:增加筛选器时,视图的标记数量一定会减少(因为是求重),而增加“A或者B”类型的集,却可以在结果集中增加标记的数量。

Example 3 gif- OR Filters.gif

 

动态分组 Dynamic Grouping

 

案例4:合并详细级别 Merging levels of detail

概念:数据都是按照严格的层次结构保存的,有时候分析经常需要把不同详细级别的数据合并到一个字段上。例如,销售主管经常想要看他们团队每个人的销售达成情况,以此和其他团队的达成做对比。

数据源:2018年世界杯球员和球队的市场价值

场景:选中一个分组,其中每个球队的平均球员价值是多少?与其他分组的球员平均价值相比,差异如何?(ps 注意,前一个问题是球队级别,后一个对比是对比分组级别)

说明:德国队的平均球员价值比其他分组的平均值更高,而和德国队统一分组的其他球队,瑞典队、墨西哥队、韩国队却低于其他分组的平均值。看来墨西哥和瑞典队能超越德国队挺进16强,也算是表现卓越了。

延伸说明:集值的合并详细级别的功能,可以帮助你同时对比组内的成员信息和跨组的信息。

 

4 Merging LoDs.gif

案例5:分组与其他聚合对比 Selection vs other/ conditional aggregation

原理概念:筛选动作会移除没有未选中的分类,而集可以把未选中的分类单独分类为“其他”。

数据源:伦敦名义房产价格(1995-2018)

场景:选择一个或者多个区域,它们与其他街区的房屋名义价格波动的变化趋势对比。

说明:每当我们多选一个区域,这个区域就会从“其他”的分类中被移除。

延伸说明:如果使用筛选,删除此前的筛选器,视图会显示每个分类的单独的时间趋势线,而使用集合,清除选择会显示这些数据的聚合数据(With filters, clearing selections displays a separate time series for each category.With sets, clearing selections displays aggregate data. )当我们有很多的分类需要选择时,这个功能格外好用。

Example 5动画 - Selection vs Other

 

案例6 单个成员下钻 Single member drill down

概念:把某个分类的子类展开,可以帮助我们在一个尺度基础上,对比不同详细级别的数据。

数据源:2018年世界杯球员和球队的市场价

场景:指定分组的球队平均价,或者球队的球员平均价相对于各分组的球员平均价值的差异是多少?

Example 6 动画 - Single Member Drill Down.twbx

延伸说明:比率可以跨分层结构来对比,而绝对值往往不行。比如,我们一般不会比较一个球员相对整个球队的价值,除非是为了突出几个明星球员。例如,球员Lionel Messi单人的市场价值高于整个俄罗斯队。当你使用这个功能时,务必要考虑好比较的度量和分析的目的。

【喜乐君解读】Tableau通过集值,可以把某个分类的子分类,以及子分类的细分类下钻展开,这里的行功能区,默认情况下包含了一个维度和两个计算字段——只是默认的计算字段为空集,当点击分类或者子分类时,集开始有成员,对应的计算字段返回对应的球队或球员信息,从而出现下钻效果。

但是,这里显示成员,需要从上一级扩展到下一级别,因此需要使用计算字段来传递选择结果。

基于第一个集的计算字段为:如果选择了某Group,则返回它包含的球队Team名称。字段具体如下:

if [Group Set] then [Team] ELSE “” END

 

操作顺序 Order of operations

案例7:筛选器计算排序  Compute rank before filters

概念:像排序之类等表计算都是在筛选器之后才执行的,是在结果集的基础上的计算,然后,有时候你会希望在筛选之间执行表计算。

数据源:2018年世界杯的球员和球队的市场价

场景:选择一个国家,它的每个球员在所在球队、区域以及总体的排序是多少?

说明:Lionel Messi在Argentina队、南非和全球都是排名第一。Harry Kane 在英国队、欧洲都是排名第一,而在全球排名第二。Kylian 在法国队排名第一,欧洲排名第二,世界排名第三。

延伸说明:和筛选不同,聚焦选择的集会在球员的层面做数据分区,同时隐藏集之外的国家。这样就可以保证排序是在所有数据基础上做排序,而非可见的数据做排序。

Noteworthy: Rather than filtering by the selected team, the set capturing the selection partitions the player detail view and hides the countries that are out of the set. This ensures that ranks are computed across all data, not only the visible data.

Example 7动画 - Compute Rank Before Filters

 

案例8:移动平均计算 Example 8: Computing moving averages across data that is removed from the view

概念:时间序列分析经常需要筛选到指定的时间区间,同时在计算中还需要保留之前时间的数据。(这就要求不能使用筛选器)

数据源:1995-2008年伦敦名义房产价格

场景:可以选择一个时间区域,从而查看每周的销售数量,以及52周的移动平均销售的对比情况。

延伸说明:这里使用了一个自定义计算字段,它返回选择区域的销售数量,未选中部分返回空值(null)。隐藏空值就可以把视图自动放大到指定时间区间。

Example 8动画 - Moving Average

 

集值让互动更上一层楼

集值提供了强大而灵活的设计工具,从而使得整个交互更具有吸引力。它把更多的交互控制权交给设计者,意味着可以终端用户也可以沉浸于更好的自定义体验和交互过程。虽然博客仅仅是展示了几个例子,集值的交互潜力是无限的,我们希望在社区中看到更多的人能发挥集值的强大功能。

探索集值的更多信息

 

May 11, 2019