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

74 阅读5分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 15 天

本堂课课程大纲

  • 数据可视化的基本概念
  • 可视化设计的基本原则
  • 面向前端的可视化工具

什么是数据可视化

Anything that converts data into a visual representation(like charts, graphs, maps, sometimes even just tables)

翻译:将数据转换为可视表示的任何东西(如图表、图表、地图,有时甚至只是表格)

可视化分类

  1. 科学可视化 科学实验数据的直观展示

  2. 信息可视化 对抽象数据的直观展示

  3. 可视分析

    对分析结果的直观展现,及交互式反馈,是一个跨领域的方向

为什么要数据可视化

  1. 记录信息
  2. 分析推理
  3. 正是假设
  4. 交流思想

可视化设计原则和方法

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

常见的错误可视化

  1. 透视失真 如果数字是由视觉元素表示的,那么它们应该与视觉元素的感知程度成正比。

    使用清晰、详细和彻底的标签,以避免图形失真和含糊不清。

    比如下面的3D饼图,视觉上近大远小,看上去绿色块比紫色大

image.png

  1. 图形设计&数据尺度

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

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

    一个典型的例子:轴刻度,我们期望它从始至终能够保持连贯且一致。

image.png

  1. 数据上下文

image.png

可视化设计原则

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

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

可视化图形由墨水和空白区域构成

数据墨水:可视化图形当中不可擦除的核心部分被称之为“数据墨水”

擦除数据墨水将减少图形所传达的信息量

数据墨水占比:可视化图形中用于展示核心数据的“墨水”在整体可视化所使用的墨水中的比例

案例:

image.png

视觉感知

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

感知就是客观事物通过人的视觉在人脑中形成的直接反映

认知心理学将认知过程看成由信息的获取、分析、归纳、解码、储存、概念形成、提取和使用等一系列阶段组成的按一定程序进行的信息加工系统。

科学领域中,认知是包含注意力、记忆、产生和理解语言、解决问题,以及进行决策的心理过程的组合。

相对判断和视觉假象

3的个数:

通过视觉方式加快认知过程

image.png

image.png 结论:

  • 人类视觉系统观察的是变化,而不是绝对值,并且容易被边界吸引。
  • 在可视化设计中,设计者需要充分考虑到人类感知系统的这些现象,以使得设计的可视化结果不会存在阻碍或误导用户的可视化元素。

格式塔理论

image.png

image.png

  1. 就近原则( Proximity )

    • 当视觉元素在空间距离上相距较近时,人们通常倾向于将他们归为一组。
    • 将数据元素放在靠近的位置可以突出它们之间的关联性。
image.png
  1. 相似原则( Similarity )

    形状、大小、颜色、强度等属性方面比较相似时,这些物体就容易被看作一个整体。

image.png
  1. 连续性原则( Continuation)

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

image.png
  1. 闭合原则(Closure )

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

image.png
  1. 共势原则( Common movement )

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

image.png
  1. 对称性原则( Symmetry ) 对称的元素被视为同一组的一部分
image.png
  1. 图形与背景关系原则(Figure-ground)

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

视觉编码

image.png

可视化元素:

image.png

可视化符号

image.png

视觉通道

image.png

视觉编码的优先级

image.png

面向前端的可视化工具

  1. D3
    D3.js是用于数据可视化的开源的JavaScript函数库,被认为是最好的JavaScript可视化框架之一。
  2. Vega
    Vega是一种可视化语法。通过其声明式语言,可以用JSON格式描述可视化的视觉外观和交互行为,并使用Canvas或SVG生成视图。
  3. G2
    一套面向常规统计图表,以数据驱动高交互可视化图形语法,具有高度的用性和扩展性。使用G2,你可以无需关注图表各种繁琐的实现细节,一条语句即可使用Canvas或SVG构建出各种各样的可交互的统计图表。
  4. ECharts
    ECharts,一个使用JavaScript实现的开源可视化库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE9/10/11, Chrome, Firefox,Safari等)底层依赖矢量图形库ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表。