数据可视化基础 | 青训营笔记

71 阅读6分钟

数据可视化基础 | 青训营笔记

这是我参与「第四届青训营 」笔记创作活动的第7天

什么是数据可视化

任何把数据转化为视觉展示的行为都可以被称位是数据可视化,例如图表、地图等。

image.png

根据功能的不同,数据可视化可以被分为三种:

  • 科学可视化:科学实验数据的直观展示
  • 信息可视化:对抽象数据的直观展示
  • 可视分析: 对分析结果的直观展现,及交互式反馈,是一个跨领域的方向

信息可视化可以帮助人们记录信息、分析推理、证实假设、交流思想

可视化的重要性——安斯库姆四重奏

安斯库姆四重奏是四组基本统计特性一致的数据,但是它们绘制出的图表完全不同,这说明了数据分析之前绘制图表的作用性。

image.png

可视化设计原则和方法

原则——能够正确地表达数据中的信息而不产生偏差和歧义

常见的错误可视化

透视失真

image.png

在这张图片中,虽然苹果手机的份额为19.5%,小于其他手机的21.2%的份额,但是由于这张图表的角度的问题,让人产生了苹果手机份额更大错觉。

图形设计&数据尺度误差

图形的每一部分都会让人产生对其的视觉预期(visual expectation)

  • 这些预期往往决定了眼睛实际看到的东西
  • 错误的数据洞察,产生于在图形的某个地方发生的不正确的视觉预期推断

一个典型的例子:轴刻度,在六十的刻度之前,每两个大刻度之间的间距是二十,在这之后的间距是四十,这会造成误判。

image.png

数据上下文问题

如果截取掉了数据的上下文,这会让人们对于数据有不同的看法

image.png

控制图形中的谎言因子(Lie Factor, LF)

谎言因子:衡量可视化中表达的数据量雨数据之间的夸张程度的度量方法。当LF等于1时,我们认为图表没有对数据实时进行扭曲,实际当中应当确保各部分图形元素LF在[0.95,1.05]之间,否则认为图表丧失了基本可信度。

可视化设计原则

  • 准确展示数据
  • 节省笔墨
  • 节省空间
  • 消除不必要的“无价值”图形
  • 在最短时间传达最多的信息

最大化数据墨水占比(Data-Ink Ratio)

  • 可视化图形由墨水和空白区域构成
  • 数据墨水:可视化图形当中不可擦除的核心部分被称为“数据墨水”
  • 擦除数据墨水会减少图形所传达的信息量
  • 数据墨水占比:可视化图形中用于展示核心数据的“墨水”在整体可视化所使用的墨水中的比例

image.png

绝大多数墨水是数据墨水

两个擦除原则:擦除非非数据墨水、擦除冗余的数据墨水

视觉感知

可视化致力于外部认知,也就是说,怎样利用大脑以外的资源来增强大脑本身的认知能力。

image.png

下图找出所有的3就更加方便

格式塔理论

格式塔理论的核心就是整体决定部分的性质,部分依从于整体结构比元素更重要,视觉形象首先作为统一的整体被认知。

image.png

就近远哲

当视觉元素在空间距离相近时,人们倾向于将其归为一组,所以可以将数据元素放在考近的微指,突出其间的关联性。

image.png

相似原则

形状、大小、颜色、强度等属性相似时容易被看作一个整体。

image.png

连续性原则

人们在观察事物的时候会很自然地沿着物体的边界,将不连续的物体视为连续的整体。

image.png

闭合原则

有些图形可能本身是不完整或者不闭合的,但主体有一种使其闭合的倾向,人们就会很容易地感知整个物体而忽略未闭合的特征。

image.png

共势原则

如果一个对象中的一部分都向共同的方向去运动,那这些共同移动的部分就易被感矢为一个整体。

image.png

对称原则

对称的元素被视为同一组的一部分。

image.png

图形与背景关系原则

大脑通常认为构图中最小的物体是图形,而更大的物体则是背景。跟凹面元素相比,凸面元素与图形相关联更多些。

image.png

视觉编码

视觉编码是一种将数据信息映射成可视化元素的技术

可视化符号(Mark) :

用于在可视化当中表现数据元素或元素之间的关联。

视觉通道(Channel) :

基于数据属性,控制可视化的符号展现样式,例如,点根据其所代表的数据属性的不同可有不同的形状与颜色。

视觉通道有两种类型

数量通道(Magnitude Channel)用于显示数据的数值属性(定量/定序) 包括:位置、长度、角度、面积、深度、色温、饱和度、曲率、体积。

标识通道(ldentity Channel) 用于显示数据的分类属性(是什么/在哪里)包括:空间区域、色向、动向、形状

基础统计图表

常见的统计图表有:柱状图、饼图、散点图、折线图。

面向前端的可视化工具介绍

D3

D3.js是用于数据可视化的开源的JavaScript函数库,被认为是最好的JavaScript可视化框架之一。

Vega

Vega是一种可视化语法。通过其声明式语言,可以用JSON格式描述可视化的视觉外观和交互行为,并使用 Canvas或SVG生成视图。

G2

一套面向常规统计图表,以数据驱动的高交互可视化图形语法,具有高度的易用性和扩展性。使用G2,你可以无需关注图表各种繁琐的实现细节,一条语句即可使用Canvas或SVG构建出各种各样的可交互的统计图表。

Echarts

ECharts,一个使用JavaScript 实现的开源可视化库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE9/10/11,Chrome,Firefox,Safari等),底层依赖矢量图形库ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表

总结

数据可视化可以帮助人们更好地分析数据,有助于提升信息展示的质量,在前端开发中,数据可视化也起到了十分重要的作用,数据可视化让信息变得更及时、更直观、更简单。