可视化编码是可视化中的核心内容,本文会对其进行详细的讲解,尤其是视觉编码与视觉通道两个概念,如果其中遇到晦涩之处,不要心急,可囫囵吞枣直接往下看。
很多人可能看到题目的时候就有这个疑问,到底什么是视觉编码。其实视觉编码很简单,用一句话就能概括:
视觉编码描述的是将数据映射到最终可视化结果上的过程。
这里的可视化结果可能是图片,也可能是一张网页等等。
编码二字,如果说编是指设计、映射的过程,那么码呢?码其实指的是一些图形符号。
在介绍各类图形符号之前,我们先谈谈:图形能告诉我们什么。
仔细观察上方这个简单的图片,你能得得到什么信息?
得益于我们视觉系统的强大,这些信息不假思索就能得出。如果把上图想象成一个二维坐标系,则我们可能得出更多的结论。
“Resemblance, order and proportion are the three signfields in graphics.” - Bertin [1]
图形符号和信息间的映射关系使我们能迅速获取信息。所以我们可以把图片看成一组图形符号的组合,这些图形符号中携带了一些信息,我们称作它编码了一些信息。而当人们从这些符号中读取信息时,我们称作我们解码了一些信息。
我们人类解码信息靠的是我们的眼睛、我们的视觉系统。如果说图形符号是编码信息的工具或通道、那么我们的视觉就是解码信息的通道。因此,我们通常把这种图形符号<——>信息<——>视觉系统的对应称作视觉通道。
至此算是把视觉通道、视觉编码这两个概念讲清楚了。如果一个人说他想用四个通道来编码四个维度的数据,即可以翻译成他想用四种图形符号来对应这份数据表的四个列的信息。
这里举个例子(例子来自于 [2]陈为 沈则潜 陶煜波. 数据可视化[M]. 电子工业出版社, 2013.):
例子来自于陈为 沈则潜 陶煜波《数据可视化》
1967 年,Jacques Bertin 初版的《Semiology of Graphics》一书提出了图形符号与信息的对应关系(就是本文上一节的内容),奠定了可视化编码的理论基础。
Bertin J. Semiology of graphics: diagrams[C]// Conference on Computer Networks. 1983.
如上图所示,书中把图形符号分为两种:
以上基本的图形符号共有 7 种。将其映射到点、线、面之后,就相当于有 21 种编码可用的视觉通道。后来人们还又补充了几种其他的视觉通道:长度、面积、体积、透明度、模糊/聚焦、动画等,所以可用的视觉通道其实太多了。
而一般一份可视化作品可用到的视觉通道要尽可能得少,因为太多了反而会造成我们视觉系统的混乱,使我们获取信息更难。于是这就涉及到了视觉通道的设计原则。
这一节其实可以单独再分一篇文章写,因为可视化编码设计实在是复杂:假设我们有 k 个视觉通道,有 n 个数据维度,则一共有 (n+1)^k
种编码方案……从中选出一种最佳方案难度可见一斑。
不过既然本文是讲解视觉编码相关,所以这个章节是逃不掉的,在此提纲挈领讲一下。如果想深入了解,可以阅读参考文献中提到的书籍。
上一篇数据模型讲解了可视化中数据分为三类:类别型、有序型、数值型。
总结一下视觉通道与数据类型的对应关系,如下图所示:
视觉通道与数据类型的对应
Mackinlay[4] 和 Tversky[5] 分别提出了两套可视化设计的原则,Mackinlay 强调表达性和有效性,Tversky 强调一致性和理解性。两者可以糅合起来:
下面这张图总结了视觉编码面对不同数据类型的优先级:
视觉编码面对不同数据类型的优先级
如果要具体展开每项视觉通道来说,未免有点太繁琐,而且设计可视化编码除了视觉通道还需要考虑:
以上每一项都很重要,之后有机会再写吧。这个可视化基础系列总算是完结了,文字虽然不多,但是搜索资料、读论文、总结等还是挺累的,希望你能有所收获。