不同类别间的相互比较是可视化中的一个基本任务。以船舶轨迹数据为例,人们需要比较船舶在一周不同天和一天不同时刻的线路。对于这类任务,一种通常的可视化策略是Small Multiple显示,而Pivot Table就是相应的一种可视化形式。那么,用Pivot Table到底可以完成哪些比较人物呢?如何设计Pivot Table以支持这些比较任务呢?
图1显示了一个Pivot Table。其中,每张小图表示一种商品类别在一个地区一段时间的销售额。这些小图排列成规则的网格状,以方便用户比较。其中,横轴表示时空组合,纵轴表示商品类别,销售额数据使用柱状图画在相应的小图中。在Pivot Table中,坐标轴是有层次结构的。横轴分三层:第一层是地理位置,分为西(West)和东(East);第二层是年度,分为2010,2011,2012;第三层是四个季度(Q1到Q4)。纵轴则分为两层,第一层是商品大类,分为家具(Furniture)和办公用品(Office Supplies);第二层是每一大类下的小类。
在Pivot Table中有三种方法可以比较小图。第一种是就这样让用户用眼睛比较;第二种是把要比较的两个小图重叠起来;第三种是先将两个小图中数据的差异计算出来,再在一张小图中直接画出差异。一般认为,后面两种方式更为有效,但此时用户需要显式的为每一个小图指定另一个小图作为比较的参照。随着分析任务不同,参照指定的方式也会有变化。那么,到底有哪些参照指定的方式呢?对于需要系统分析用户任务的研究者,或者可视化软件的编程者来说,清楚的了解这些众多的参照指定方式是相当重要的。为此,本文[1]提出了一个基于Pivot Table的结构化比较模型,系统的总结了各种参照指定方式。
文中将常见的比较任务总结为三类,分别提出了三种参照指定的方式:绝对参照、相对参照和聚集参照。由此,文章提出了一个系统的比较模型。这里我们考虑一个商品销售数据,它包含了不同商品在不同地区不同时间的销售额。如果用户需要将每年的销售额和2010的销售额相比,那么可以选择2010年的小图作为绝对参照;如果用户需要将每年的销售额和前一年的销售额相比,那么可以选择前一年的小图作为相对参照;如果用户需要将每年的销售额和三年的平均值相比,那么可以先做聚集计算得到三年的平均值,再选择这个平均值作为聚集参照。文中详细论述了每种参照指定方式及其变形,并最终将它们以形式化的方式表述出来。
文章将该模型用于多种类型数据的比较,包括高维数据、时变数据和轨迹数据。这显示了模型的普适性。例如,在一个高维数据的例子中,人们需要比较的是汽车引擎设计参数设定对最终引擎力矩和漏油量的影响。特别的,图2显示了力矩对参数“进气阀门关闭位移(intake valve closing shift)”的敏感性。该参数有四个设计值:-30ms,-10ms,10ms和30ms,依次对应图中的四列。每一列分别和左边的一列做差,差值以柱形图直接表示,而原本的数值显示为颜色。这是一个典型的相对参照。
图3是一个轨迹数据的例子,人们需要比较的是挪威海湾的船舶航行路线随时间的变化。这里,横轴对应每天的4个时间段,纵轴对应周一到周日。首先每个时间段的平均船舶密度被计算出来,显示为第一行的密度图。然后周一到周日的船舶密度分别和平均密度做差,差值直接用颜色表示出来,显示在下面七行。这是一个典型的聚集参照。
关于比较模型的详细描述,请参照原文。
[1] Johannes Kehrer, Harald Piringer, Wolfgang Berger, and M. Eduard Gröller, “A Model for Structure-Based Comparison of Many Categories in Small-Multiple Displays”, IEEE Trans. Visual. Comput. Graph., 19(12): 2287-2296, 2013.
评论关闭。