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

67 阅读2分钟

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

数据可视化的概念和基本原则

生活中的可视化

比如在pc端或移动端APP浏览器上呈现的数据以饼状图、折线图可视化展现,又如地图上各种比例尺、地名图标等。 数据可视化可分为科学可视化、信息可视化、可视分析等。

为什么要可视化

  • 记录数据
  • 分析推理
  • 证实假设
  • 交流思想

可视化基本原则

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

常见的错误可视化

  • 透视失真
  • 图形设计和数据尺度
  • 数据上下文

如何实现可视化

在技术上,数据可视化最简单的理解,就是数据空间到图形空间的映射。一个经典的可视化实现流程,是先对数据进行加工过滤,转变成视觉可表达的形式(Visual Form),然后再渲染成用户可见的视图(View)。

可视化技术栈

具备专业素养的数据可视化工程师一般来说需要掌握以下技术栈:

  • 基础数学:三角函数、线性代数、几何算法
  • 图形相关:canvas、svg、webgl、计算图形学、图论
  • 工程算法:基础算法、统计算法、常用的布局算法
  • 数据分析:数据清洗、统计学、数据建模
  • 设计美学:设计原则、美学评判、颜色、交互、认知
  • 可视化基础:可视化编码、可视分析、图形交互
  • 可视化解决方案:图表的正确使用、常见的业务的可视化场景

基于web的可视化技术

底层技术规范

  • SVG:可缩放矢量图形(Scalable Vector Graphics),是基于可扩展标记语言(标准通用标记语言的子集)用于描述二维矢量图形的一种图形格式。
  • Canvas 2D:Canvas 通过 JavaScript 来绘制 2D 图形,通过逐像素来进行渲染。
  • Canvas 3D WebGL:WebGL(Web Graphic Library)是一个 JavaScript API,用于在任何兼容的 Web 浏览器中渲染 3D 图形。WebGL 程序由用 JavaScript 编写的控制代码和用 OpenGL 着色语言(GLSL)编写的着色器代码构成,这种语言类似于 C 或 C++,可在 GPU 上执行。