layout: post title: 可视化中的数据 description: “当下随着大数据热潮的到来,数据可视化作为一个新兴的领域,受到了学术界和工业界的重视。从可视分析、数据新闻到商业报表,各个领域都在越来越多的使用它。既然是数据可视化,说明数据是主体,可视化只是将数据以可视的形式表达的手段。接下来小编就与大家一起揭开可视化中数据的面纱,一探究竟。” tags: [可视化, 教程] image: feature: post/2017-03-15-echarts-dataAbstraction-tutorial-dataset.png

当下随着大数据热潮的到来,数据可视化作为一个新兴的领域,受到了学术界和工业界的重视。从可视分析、数据新闻到商业报表,各个领域都在越来越多的使用它。既然是数据可视化,说明数据是主体,可视化只是将数据以可视的形式表达的手段。接下来小编就与大家一起揭开可视化中数据的面纱,一探究竟。

可视化什么:数据抽象

既然是数据可视化,无可非议,可视化的元素肯定是数据,这里所指的数据是广义上的数据,包括文本、图片、声音等超媒体数据。ECharts在可视化过程中所涉及的四种基本数据集类型分别是表格数据、网状数据、场数据和几何空间(spatial)数据,像集合、列表等也是常用的数据集类型。这些基本数据集类型又是由不同的数据类组合构成的,这里的数据类是指可视化中所涉及的数据种类,主要包括四种数据类,分别是数据项、数据项的属性、链接(links)、位置。数据项的属性又可分为类别型和有序型两种,其中有序型又进一步细分为序数型和数值型,下面将分别介绍数据类,数据集类型,以及属性类型。

数据类

本文主要讨论ECharts中所涉及的四种基本数据类,分别是数据项、数据项的属性、链接、位置。数据项是指一个独立的实体,如关系数据表中的一行,或网络中的一个节点;属性是数据项的某个可被观测的特性,如年龄,性别等;链接是指数据项之间的关系,该数据类型在网状关系型数据集中用的比较多;位置是地理空间数据类型,指代二维或三维空间中的某个具体位置;下图展示了四种不同的数据集类型所包含的数据类。

![data]({{ site.url }}/images/post/2017-03-15-echarts-dataAbstraction-tutorial-datatypes.png)

数据集类型

数据集是指为了分析而收集的任何信息,数据集包括数据表,网状数据,场数据(本文主要关注信息可视化,而场数据主要应用于科学可视化,因而在此不作介绍)以及几何空间数据这四种基本类型,而现实世界中的数据集一般是由这四个基本类型中的一个或多个组合而成的。下图展示了四种不同数据集类型具体的内部结构。

![data]({{ site.url }}/images/post/2017-03-15-echarts-dataAbstraction-tutorial-dataset.png)

数据表

数据表是常用的数据集形式,由行和列组成。对于简单的扁平表格来说,每一行代表一个数据项,每一列代表一个属性,表格中的每一个单元格是由行号和列号索引的,保存着某个数据项的某个属性值;多维数据表在数据仓库中用的比较多,具有复杂的结构以及复杂的索引机制,一般来说,简单扁平表格至多具有一个键属性(key attribute),而多维表格具有多个键属性。

网状数据

网状数据主要用来表明数据项之间具有某种关系,在网状数据中数据项通常被称为节点,两个节点之间的关系被称为链接,也就是网络中的边,并且节点和链接都可以拥有与之相关联的属性。树是一种具有层次结构的特殊类型网络数据,与一般网络数据相比,树没有回路,每一个子节点都对应唯一的一个父节点。

几何空间(spatial)数据

几何空间结构数据通过明确的几何空间位置指定数据项的形状信息,这些数据项可以是空间中的点、一维的直线或曲线、二维的平面或区域,以及三维的立方体。空间数据在不同的度量尺度上具有层级结构。这种层级结构要么是原始数据集固有的,要么是从原始数据集派生出来的。 可视化中的数据主要以两种形式存在,一种是静态的数据文件,一种是动态的数据流。静态的数据文件是指可以同时获得完整的数据文件,而动态的数据流是指数据在不断的更新和变化。

属性类型

属性类型主要分为类别型和有序型两种,有序型又可进一步分为序数型和数值型。有序型数据的排列方向有三种,分别是单向型,有公共零点的双向型,以及环状周期型,如下图所示,除此之外,属性也可能有层级结构。 类别型属性是指名称上的不同,属性的值之间没有明确的排序,例如喜欢的球类运动包括足球、篮球、排球等。虽然类别型属性内部没有明确的排序,但任意外部的排序机制可以被应用在类别型属性上,如将球类运动的名字按字母顺序排列。 有序型属性包括序数型属性和数值型属性,所有有序型属性都有隐含的排列顺序。对于序数型属性,如小中大,虽然我们不能对它进行完全的算术运算,但在属性的内部有明确定义的顺序,如大减去中并不是有意义的概念,但我们知道中介于大和小之间。数值属性与序数属性不同,它具有大小和量级的明确度量,并且支持算术比较,一般以整数和实数形式存在,如76米减去34米是个有意义的数值,并且它们之间的差是可以被度量的,像温度、高度、长度等都是数值属性。 有序型数据可以是单向的有序序列,比如人的年龄,只能往一个方向递增,也可以是有公共零点的对向序列,如温度。有序型数据也可以是环状周期的,如时间相关的属性。 在单个属性内部或者多个属性之间可能具有层级结构,如北京一年的交通事故数量,这是一个时间序列数据,具有时间属性,可以分层级聚合,可以分别按周、月、年聚合,在不同的时间聚合尺度下可能会发现数据集中有趣的模式。除了时间属性之外,地理空间数据也具有层级结构,如可以细分到省、市、县等。

![]({{ site.url }}/images/post/2017-03-15-echarts-dataAbstraction-tutorial-attribute.png)

总结

本文简要讨论了可视化中的数据,从数据的种类、数据集的类型以及属性的类型这三个角度阐述了可视化中需要可视表达的数据信息。

参考文献

[1] Tamara Munzner.Visualization Analysis and Design. CRC Press, 2014.