在2018.3的版本中,Tableau推出了升级版的交互方式:集值,实现了更多的交互方法。而在2019.2中,Tableau又推出了新的交互方式:参数动作(Parameter Action)。这里带你一睹为快。
使用参数动作可让受众通过直接与可视化项交互(例如单击或选择标记)来更改参数值。可以使用参数动作来推动参考线、计算、筛选器和 SQL 查询。
二、背后的原理是什么?
数据交互的本质是向视图传递参数引起相应的视图变化,借助数据的反馈辅助决策。过去我们使用参数,是依靠“参数控件”来调整传递的参数,参数引起筛选器、计算字段或参考线的变化,它们参与到视图的构建里。参数动作并没有改变这个流程,只是增强了“参数控件”的方式,通过 在视图上使用动作采集参数 ,整个交互更加流畅方便、浑然一体。
就像在photoshop中,你不再需要去色板去选择颜色,只需要用吸管在图像中拾取即可。
用上面的图,可以更加清晰地理解两种参数控制的区别,参数动作(或者称之为参数值)通过多种动作从视图中拾取参数值,而无需使用参数控件。
无需隔靴搔痒,随处点击,即时交互。
三、参数动作的案例
下面,我们说几个示例,分别代表了不同的场景。其一是使用参数修改参考线,其二是分类钻取。我们使用之前表计算和集动作用过的数据,保持案例的连贯行,同时对比参数动作与集动作的差异。
在十大表计算的第一题中( 【Tableau】10大Tableau表计算——深度解读 ),我们通过参数控件来更改视图的参考线日期,进而计算其他日期相当于参考日的百分比变化。使用参数动作功能,我们无需参数控件,代之以直接在视图中选择一个点,进而“拾取”所对应的日期作为参考日。
此题的计算逻辑无需变化,仅需要在视图上添加「参数动作」即可。方法如下:菜单“工作表”——“操作”——“添加操作”,选择我们想要改变的参数。
这里比较重要的地方是最下面的“值”—“字段”,假设我们只是选择了一个数值,那么无需聚合;但是如果访问者选择了多个数值怎么办?要么怎么都不做(none/无),要么就要指定一个聚合方式,比如选择多个日期,可以使用最小值,这个最小值传递给参数。
如此以来,选择就会引起参数的改变,而参数改变又通过计算字段(参数-team)引起视图的下钻变化。
THEN [Player] else ” END
三、集动作与参数动作的差异
当然,集动作和参数动作看上去实现的结果一样,但是二者有本质上的差异。
第一,集动作的控制更加精细,它可以设置“清除动作后”的行为,比如取消选择,那么动态集也清除为空,这样就实现了全部折叠;但是参数动作无法设置为空,也没有“清除动作后”的选择。
第二,通过集动作,可以传递多个数据,比如上面下钻时同时展开两个字段;但是参数的选择虽然可以多个,但是多个之后必须聚合为一个数值才能传递给视图。因此,为了避免访问者选择多个数据导致参数动作失效,我们需要设置“聚合”方式。
比如上面第一题,如果选择多个日期,我们可以选择“最大值”,那就会以最近的日期为参考日期;同样,第二题,如果选择多个主分类,我们可以设置“最大值”,那就就会判断在数据源的先后顺序,如果此处选择“无”,多选时,系统就不会传递参数(当然,这里选择最大值没有意义,因为数据源字段顺序不可控)。这也是为什么我称“LODs、TC和Set Action为Tableau的“三剑客”,而没有参数动作的影子。