数据可视化(pyecharts 1.7.1)学习笔记——系列笔记(2)

二、数据可视化基础

1、视觉感知

1)视觉感知和视觉认知

  1. 视觉感知和视觉认知
    • 视觉感知
      • 人类大脑的最主要功能之一
      • 人眼对客观事物的第一映象
      • 在我们的生活中起着至关重要的作用
    • 视觉感知是指客观事物通过人的视觉器官在人脑中形成的直接反映
      • 视觉低级
        • 与物体性质相关:深度、形状、边界、表面材质等
      • 视觉高级
        • 对物体的识别和分类
        • 一种基本的认知能力
      • 对所观察到的客观事物更深入的理解和解释
      • 会受到记忆、理解、判断、推理等因素的影响
  2. 格式塔原则(完图法则)
    • 基本准则
      • 描述了人在视觉上如何感知对象,是图形和用户界面你设计的基本准则
    • 视觉感知
      • 将视觉感知内容理解为常规的、简单的、相连的、对称的或有序的结构
    • 简单提炼法则
      • 是格式塔原则最基本的呢法则
    • 整体
      • 将事务理解为一个整体,而不是将事务理解为组成该事务所有部分的集合
    • 接近原则
      • 通常,人在进行视觉感知时会把距离上相互靠近的元素视作一个整体
      • 元素之间的距离越近,被视作组合的概率越大
    • 相似原则
      • 相似原则关注的是元素内部特征的差异性,比如:纹理、颜色、形状、大小等特征
      • 人们的视觉感知常常会把具有明显共同特征的元素当成一个整体或归为一类
    • 闭合原则
      • 是指人们常常会尽可能地在心理上把一个不连贯的图形补充完整,使之连贯,或者说倾向于从视觉上封闭那些开放或未完成的轮廓
    • 连续原则
    • 基本思想
      • 视觉形象是作为一个统一的整体最先被认知的,而后才是从各个部分开始认知
    • 数据可视化时将数据映射为图形元素,生成包含原始信息的视觉图像的过程

2)颜色理论

  1. 三基色

    数据可视化(pyecharts 1.7.1)学习笔记——系列笔记(2)

    • 三基色
    • 相加混色
    • 相加二次色
    • 补色
    • 中间色
  2. 色彩三要素

    数据可视化(pyecharts 1.7.1)学习笔记——系列笔记(2)

    • 色相
    • 明度
    • 饱和度
  3. 色彩与心理

    数据可视化(pyecharts 1.7.1)学习笔记——系列笔记(2)

    • 冷色
    • 暖色

3)可视化编码

  1. 数据可视化的制作过程实质上是数据到视觉元素的编码过程
  2. 可视化将数据以一定的编码原则映射为直观、易于理解和记忆的可视化元素
  3. 为了能有效、正确地引导用户对数据的理解和分析,设计者在数据的可视化过程中必须遵循科学的可视化编码原则
  4. 设计者要研究人的视觉感知、不同的可视化元素的展示效果,以及如何合理使用不同的视觉通道表达数据所传达的重要信息,避免给用户造成视觉错觉,以达到良好的数据可视化效果。
  • 可视化编码

    描述数据与可视化结果的映射关系,把可视化看做成一组符号的组合,这些图形符号中携带了被编码的信息,从这些符号中读取相应的信息时,就称之为解码

    • 标记
      • 是一组几何图形元素:如点、线、面、体等
    • 视觉通道
      • 用于控制标记的视觉特征,常用的视觉通道有标记的颜色、位置、尺寸、形状、方向、色相、明度、饱和度、纹理等

2、大数据技术

数据采集与预处理
大数据存储与管理
大数据分析与挖掘
大数据可视化

1)数据采集与预处理

  1. 数据来源

    • 人所产生的数据
    • 机器、设备和物体的数据
    • 行业、科研实验数据
  2. 数据采集方法

    • 系统日志
      • 网站点击率、网页浏览痕迹等
    • 网页数据
      • 推文、评论、新闻信息等
    • 其他数据
      • 隐私数据、医疗、科学等
  3. 数据预处理

    初始数据的获取
    数据清理
    数据集成与融合
    数据变换
    数据归约

2)大数据存储与管理

  1. 数据类型

    结构化数据

    • 保存在数据库中
      • 关系型数据库、非关系型数据库

    非结构化数据

    • 文本、图片、音频、视频文件等
      • 分布式文件系统

    半结构化数据

    • xml文件、json文件、计算机日志信息等
      • 用自定义的结构来存储数据
  2. 数据存储方式
    分布式文件系统

    • 90%的大数据都是非结构化数据

    • 分布式文件系统把一个文件分割成很多小的数据块,分布地存储到多个计算机节点上

    • 为了保证系统的容错性和可靠性,分布式文件系统采用多副本方式对数据块进行冗余存储

      • 多副本容错技术

        数据可视化(pyecharts 1.7.1)学习笔记——系列笔记(2)

    关系型数据库

    • 保存小规模结构化数据

    非关系型数据库

    • 灵活的可扩展性
    • 分布式特性与云存储紧密融合
    • 保存大规模数据
    • 开源,成本低

    半结构化数据

    • 保存自定义结构的数据

    云存储

    • 海量存储,弹性伸缩,无缝扩展
      • 增加存储节点,数据自动重组
      • 减少存储节点,数据自动恢复
    • 高并发读写性能,摆脱单台设备能力束缚
    • 高可靠性,系统业务不中断
    • 同意访问入口,多用户并行访问
    • 高可用性,由及时维护变为定期维护

3)大数据分析与挖掘

大数据处理的数据类型

  1. 静态数据
  2. 动态数据

大数据计算框架

  1. 批处理
    • 静态数据
    • 高延迟
    • 历史数据
  2. 流式处理
    • 动态数据
    • 低延迟
    • 实时性要求高
  3. 交互式查询
    • 低延迟
    • 历史数据
  4. MapReduce
    • 对静态数据做批处理计算
  5. Spark
    • 对动态数据做流式处理
    • 交互式查询

数据挖掘

4)大数据可视化

  • 数据可视化(pyecharts 1.7.1)学习笔记——系列笔记(2)

3、数据可视化基本图表

  1. 柱状图
    • 柱状对比图
    • 堆叠柱形图
    • 瀑布图
  2. 条形图
    • 双向条形图
    • 多维度双向条形图
    • 子弹图
  3. 折线图
    • 折线对比图
    • 面积图
    • 堆叠面积图
  4. 饼图
    • 环形图
    • 嵌套环形图
    • 南丁格尔玫瑰图
  5. 直方图
  6. 散点图
  7. 气泡图
  8. 雷达图
  9. 地图
  10. 热力图
  11. 箱线图
  12. 矩形树图

4、数据可视化工具

数据可视化工具特性

  • 实时性

    • 数据可视化工具必须适应大数据时代数据量的爆炸式增长需求
    • 必须快速搜集和分析数据,并对数据信息进行实时更新
  • 更丰富的展现

    • 数据可视化工具需要具备更丰富的展现方式
    • 能充分满足数据展现的多维度要求
  • 简单操作

    • 数据可视化工具满足快速发展,易于操作的特性
    • 能满足互联网时代信息多变的特点
  • 多种数据集成支持方式

    • 数据的来源不仅仅局限于数据库
    • 数据可视化工具将支持团队协作数据、数据仓库、文本等多种方式、并能够通过互联网进行展现

大数据可视化工具

  • 入门级工具
    • Excel是日常数据分析工作中最常用的工具,简单易用,用户不需要复杂的学习就可以轻松使用Excel提供的各种图表功能,尤其是制作折线图、饼状图、柱状图、散点图等各种统计图表时,Excel是普通用户的首选工具
    • 信息图表是信息、数据知识等的视觉化表达,它利用了人们对于文字信息更容易理解的特点,更高效、直观、清晰地传递信息,在计算机科学、数学以及统计学领域有着广泛的应用
    • 地图工具在数据可视化中较为常见,他在展示数据基于空间或地理上有着很强的表现力,可以直观地展现各分析指标的分布、区域等特征
    • R、D3、Python
  • 信息图表工具
    • google chart API:谷歌图表API
    • Tableau:视觉创建和仪表板设计
    • Visual.ly:视觉内容
  • 地图工具
    • Google Fushion Tables:云计算的雏形
      • Google Fushion Tables让一般使用者也可以轻松制作出专业的统计地图,该工具可以让数据表呈现为图表、图形和地图,从而帮助发现一些隐藏在数据背后的模式和趋势
    • Modest Maps:交互地图库
      • Modest Maps是一个小型、可扩展、交互式的免费库,提供了一套查看卫星地图的API,只有10KB大小,是目前最小的可用地图库,特也是一个开源项目,有强大的社区支持,是在网站中整合地图应用的理想选择
    • Leaflet:互动地图
      • Leaflet是一个小型化的地图框架,通过小型化和轻量化来满足移动网页的需要
  • 高级分析工具
    • R是一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具,使用难度较高,通常用于大数据集的统计与分析
    • Python具有丰富和强大的绘图库
      • Seabron
      • Matplotlib
      • Pyecharts
      • Ggplot
    • D3是用来做web页面可视化的组件,比较难入门,需要有HTML和JavaScript基础才行,对JavaScript的DOM(文档对象模型)要求也有点高