基礎篇
第一章 數據可視化簡介
1.1 可視化釋義
在計算機學科的分類中:利用人眼的感知能力對數據進行交互的可視表達以增強認知的技術,稱為可視化。
它將不可見或難以直接顯示的 數據轉化為可感知的圖形、符號、顏色、紋理等,增強數據識別效率,傳遞有效信息。
可視化是認知的過程,即形成某個問題的感知圖像,強化認知理解。
可視化的終極目的是對事物規律的洞悉,而非所繪制的可視化結果本身。這包含多重含義:發現、決策、解釋、分析、探索和學習。因此,可視化可簡明地定義為“通過可視表達增強人們完成某些任務的效率”。
從宏觀的角度看,可視化包括三個功能:
- 信息記錄
- 支持對信息的推理和分析
- 信息傳播和協同
1.2 可視化簡史
可視化發展史與測量、繪畫、人類現代文明的啟蒙和科技的發展一脈相承。
- 17 世紀之前:圖表萌芽
- 1600 - 1699 年:物理測量
- 1700 - 1799 年:圖形符號
- 1800 - 1900 年:數據圖形
- 1900 - 1949 年:現代啟蒙
- 1950 - 1974 年:多維信息的可視編碼
- 1975 - 1987 年:多維統計圖形
- 1987 - 2004 年:交互可視化
- 2004 年至今:可視分析學
1.3 數據可視化詳解
1.3.1 數據科學的發展
數據科學的基本模型:數據 -> 信息 -> 知識 -> 智慧
1.3.2 數據可視化的意義
數據可視化的作用在于視物致知,即從看見物體到獲取知識。
需要達到真、善、美的均衡:
- 真:真實性,正確反映數據的本質,以及對所反映的事物和規律正確的感受和認識;
- 善:傾向性,可視化所表達的意象對于社會和生活的意義和影響;
- 美:藝術完美性,形式與內容和諧統一,有藝術個性,有創新和發展。
1.3.3 數據可視化的分類
處理對象是數據。
- 科學可視化:如何有效呈現數據中幾何、拓撲和形狀特征。
- 標量場可視化
- 向量場可視化
- 張量場可視化
- 信息可視化:如何針對大尺度高維數據減少視覺混淆對有用信息的干擾。
- 時空數據可視化
- 層次與網絡結構數據可視化
- 文本和跨媒體數據可視化
- 多變量數據可視化
- 可視分析學:將人的感知和認知能力以可視的方式融入數據處理過程。
1.3.4 數據可視化與其他學科領域的關系
- 圖形學、人機交互
- 數據庫與數據倉庫
- 數據分析與數據挖掘
- 面向領域的可視化方法與技術
- 信息視覺設計
1.4 數據可視化研究挑戰
三方面約束:
- 計算能力的可擴展性
- 感知和認知能力的局限性
- 顯示能力的局限性
兩方面挑戰:
- 大數據可視化
- 以人為中心的探索式可視分析
第二章 視覺感知與認知
2.1 視覺感知和認知
用戶是所有行為的主體:通過視覺感知器官獲取可視信息、編碼并形成認知,在交互分析過程中獲取解決問題的方法。在這個過程中,感知和認知能力直接影響著信息的獲取和處理進程,進而影響對外在世界環境所做出的反應。
人類處理數據的能力遠遠落后于獲取數據的能力,人類視覺對于形象視覺符號的理解能力更強。
2.1.1 視覺感知和認知的定義
感知指客觀事物通過感覺器官在人腦中的直接反映。
認知指在認識活動的過程中,個體對感覺信號接收、檢測、轉換、簡約、合成、編碼、儲存、提取、重建、概念形成、判斷和問題解決的信息加工處理過程。
2.1.2 視覺感知處理過程
人類感知系統由負責語言方面和其他非語言事物的兩個子系統組成。
大腦對于視覺信息的記憶效果和記憶速度好于對語言的記憶效果和記憶速度。
視覺分為低階視覺和高階視覺。
2.1.3 格式塔理論
強調經驗和行為的整體性,最基本的法則是簡單精煉法則,認為人們在進行觀察時,傾向于將視覺感知內容理解為常規的、簡單的、相連的、對稱的或有序的結構。同時,人們在獲取視覺感知的時候,會傾向于將事物理解為一個整體,而不是組成該事物所有部分的集合。
- 貼近原則:當視覺元素在空間距離上相距較近時,人們通常傾向于將它們歸為一組。
- 相似原則:人們在觀察事物的時候,會自然地根據事物的相似性進行感知分組,雖然實際上事物本身并不存在分組的意圖。
- 閉合原則:只要物體的形狀足以表征物體本身,人們就會很容易地感知整個物體而忽視未閉合的特征。
- 共勢原則:如果一組物體沿著相似的光滑路徑運動趨勢或具有相似的排列模式,人眼會將它們識別為同一類物體。
- 好圖原則:人眼通常會自動將一組物體按照簡單、規則、有序的元素排列方式識別。
- 對稱性原則:人的意識傾向于將物體識別為沿某點或某軸對稱的形狀。
- 經驗原則:在某些情形下視覺感知與過去的經驗有關。
可以看出,格式塔(完形理論)的基本思想是:視覺形象首先是作為統一的整體被認知的,而后才以部分的形式被認知。
2.2 顏色
顏色與形狀和布局構成了最基本的數據編碼手段。
2.2.1 顏色刺激理論
- 人眼與可見光:人眼結構,暗視覺(桿細胞),明視覺(錐細胞)。
- 顏色與視覺:三色視覺理論與補色過程理論。
- 顏色視覺障礙:在正常光照條件下,人眼無法辨認不同的顏色或者對于顏色辨認存在不同程度的障礙。
2.2.2 色彩空間
色彩空間是描述使用一組值表示顏色的方法的抽象數學模型。
- CIE XYZ/CIE L*a*b*
- RGB/CMYK
- HSV/HSL
- 絕對色彩空間與相對色彩空間
2.3 視覺編碼原則
可視化將數據以一定的變換和視覺編碼原則映射為可視化視圖。
2.3.1 相對判斷和視覺假象
人類感知系統的工作原理決定于對所觀察事物的相對判斷。(參照物)
視覺假象指人們通過眼睛所獲得的信息被大腦處理后形成的關于事物的感知,與事物在客觀世界中的物理現實并不一致的現象。
可視化設計時要考慮到人類感知系統的這種現象,排除誤導用戶的可視化元素。
2.3.2 標記和視覺通道
可視化編碼由兩部分組成:
- (圖形元素)標記:數據屬性到可視化元素的映射,代表數據的性質分類
- 用于控制標記的視覺特征的視覺通道:數據的值到標記的視覺表現屬性的映射,展現數據屬性的定量信息。
標記
- 通常是一些幾何圖形元素,如點、線、面、體等。
- 可以根據空間自由度進行分類,如零自由度(點)、一維(線)、二維(面)、三維(體)。
- 標記的選擇通常基于人們對事物理解的直覺感知
視覺通道
- 位置、大小、形狀、色調、飽和度、亮度等,具有分類性質(形狀)和定量性質(長度)。
- 不同的視覺通道在表達信息的作用和能力上特性不同
2.3.3 視覺通道的概念
將數據信息以可視化視圖進行呈現,其關鍵步驟是對數據信息進行編碼,即將數據屬性以標記呈現后,通過視覺通道控制標記的呈現方式。
視覺通道的類型
- 定性性質或分類性質:形狀、顏色等,適合編碼分類的數據信息
- 定量性質或定序性質:長度、亮度等,適合編碼有序的或數值型的數據信息
- 分組性質:位置等,適合表現數據的內在關聯性
視覺通道的表現力和有效性
- 表現力:視覺通道在編碼數據信息時,需要表達且僅表達數據的完整屬性。
- 視覺通道的有效性要求高表現力的視覺通道用于重要的數據屬性編碼。
- 視覺通道的表現力排序:
- 定性或分類:位置、色調、形狀、圖案
- 定量或定序:坐標軸位置、長度、角度、面積、亮度/飽和度、圖案亮度
- 分組:包含、連接、相似、接近
表現力判斷標準
- 精確性
- 人類感知系統對于可視化的判斷結果和原始數據的吻合程度
- 史蒂文斯冪次法則,長度是線性的(精確性高,柱狀圖)
- 可辨認性
- 調整取值使得人們能夠區分該視覺通道的多種取值狀態的能力
- 弱的如直線寬度,只能編碼三四種
- 可分離性
- 抗其他視覺通道干擾的能力
- 視覺突出
- 在很短的時間內,人們可以僅僅依賴感知的前向注意力直接發現某一不同對象
2.3.4 視覺通道的特性
不同的視覺通道,被用戶的感知與認知系統處理并獲取的信息不同
平面位置
- 既可編碼分類,又可編碼定序或定量
- 水平位置和垂直位置是兩個可以分離的視覺通道,垂直位置優先級更高(重力效應)
- 用坐標軸來組織顯示空間
顏色
- 最復雜,可以編碼大量信息
- 亮度:有序數據、可辨性小、精確性低
- 飽和度:有序數據、可辨性小、精確性低
- 色調:分類數據、分組數據、
- 配色方案:信息表達和美觀性
尺寸
- 定量/定序通道,有序數據
- 人們對于一維尺寸的判斷是線性的,維度越高越不精確
斜度和角度
- 斜度
- 二維坐標軸平面中,方向和 0 度坐標軸的夾角
- 具有所屬象限及角度值等性質
- 角度
形狀
- 通過前向注意力就能識別的低階視覺特征
- 定性通道,分類數據
紋理
- 多種視覺變量的組合
- 三維中可以作為幾何物體的屬性,二維中可以表示不同的數據范圍或分布
動畫
- 動畫形式的視覺通道包括:運動的方向(定性)、運動的速度(定量)、閃爍的頻率(定量)等
- 與其他視覺通道天然的分離性,容易讓用戶忽略非動畫視覺通道
第三章 數據
3.1 數據釋義
- 數據是符號的集合,是表達客觀事物的未經加工的原始素材
- 數據模型是用來描述數據表達的底層描述模型,包含數據的定義和類型,以及不同類型數據的操作功能
- 數據可以看成是數據對象和其屬性的集合,其中屬性可被看成是變量、值域、特征或特性
3.1.1 數據基礎
數據分類
- 從關系模型的角度,數據可被分為實體和關系。
- 實體是被可視化的對象
- 關系定義了實體與其他實體之間的結構和模式
- 實體關系模型能描述數據之間的結構,但不考慮基于實體、關系和屬性的操作
- 數據屬性可分為離散屬性和連續屬性
數據集
- 數據集是數據的實例。表達形式有:
- 數據記錄集:由一組包含固定屬性值的數據元素組成。數據對象可視為高維空間的點集,數據集可表達為一個 m * n 的矩陣。(OLAP 技術)
- 圖數據集:非機構化的數據結構,由一組節點和一組連接兩個節點之間的加權邊組成。(航線圖、分子式等)
- 有序數據集:具有某種順序的數據集。(空間數據、時間數據)
- 數據集的另一種分離是根據數據模型的結構:
- 結構化數據:可以用二維表結構邏輯表表達的(數據庫)
- 非結構化數據:難以用數據庫二維邏輯表表達的(圖數據、圖像、文本)
- 半結構化數據:介于上面兩者之間(XML)
數據相似度與密度
- 衡量多個數據對象之間的相似程度。
- 度量值:相似度系數
- 測度:距離
3.1.2 數據科學及過程
- 以數據為研究對象的電子科學、信息科學、語義網絡、數據組織與管理、數據分析、數據挖掘和數據可視化等手段,可以有效地提取隱藏在數據中有價值的信息,并且將數據利用率提高到傳統方法所不能及的高度,是提煉科學原理、驗證科學假設、服務科學探索的新思路。研究這種綜合性方法的學科被稱為數據科學。
- 數據可視化作為人機交互手段,貫穿于整個數據科學過程。
3.2 數據獲取和預處理
3.2.1 數據獲取
- 數據獲取協議,以文件為基礎,提供數據格式、位置和數據組織的透明度
3.2.2 數據預處理
- 合并:多個屬性或對象 -> 一個
- 采樣
- 降維:高維空間 -> 低維空間
- 特征子集選擇:從數據集中選擇部分屬性值
- 特征生成:在原始數據集上構建新的能反應數據重要信息的屬性
- 離散化與二值化:離散化,將數據集根據其分布劃分為若干個子類,形成數據集的離散表達;二值化,將數據值映射為二值區間
- 屬性變換:將某個屬性的所有可能值一一映射到另一個空間(如指數變化,取絕對值)。標準化,將數據區間變化到某個統一的區間范圍;歸一化,將數據區間映射到 [0, 1]
3.3 數據組織與管理
數據管理包括對數據進行有效的收集、存儲、處理和應用的過程。
數據組織的層次體系:位、字符、數據元、記錄、文件、數據庫
- 記錄是邏輯上相關的數據元的組合
- 文件是邏輯上相關的記錄的集合
- 數據庫是一種計算機系統資源共享的數據集合
與數據可視化有關的常用數據組織和管理形式:
- 文件存儲:靈活、冗余、不一致、難以約束、安全性低
- 結構化文件格式:采用標記語言格式將數據進行結構化組織
- 數據庫:數據組織的高級形式,存儲在計算機設備內、有組織的、共享的、統一管理的數據集合
3.3.1 數據清洗和精簡
解決以下這些數據質量問題的方法稱為數據清洗:
- 噪聲與離群值:噪聲指對真實數據的修改;離群值指與大多數數據偏離值較大的數據
- 數據缺失
- 數據重
數據精簡
- 在數據存儲、分析層面降低數據復雜度(高維、多尺度特征)
- 在可視化層面替身視覺有效性、特征保留度
3.3.2 數據整合和集成
數據整合指將不同數據源的數據進行采集、清洗、精簡和轉化后統一融合在一個數據集中,并提供統一數據視圖的數據集成方式
- 物化式:物理集中
- 虛擬式:虛擬層,提供統一的數據訪問接口
數據集成指數據庫應用中結合不同資源的數據并提供數據集合的統一訪問
3.3.3 數據庫
- 數據庫是數據的集合,同時包含對數據的相關組織的操作。
- 數據庫結構的基礎是數據模型,它是數據描述、數據聯系、數據域以及一致性的約束的集合。數據模型有
- E-R 模型,是一種基于對象的邏輯模型,根據現實中的實體及實體見的關系對數據進行抽象構建
- 關系模型,基于記錄的邏輯模型,由關系數據結構、關系操作集合、關系完整性約束三部分組成
- 關系型數據庫在數據可視化應用方面的缺陷:
- 數據量較大時難以滿足高性能
- 存儲導向而不是語義導向
- 事件通知通過觸發器機制實現,難以滿足實時性
- 非結構化數據是主流
- NoSQL
3.3.4 數據倉庫
- 數據倉庫指面向主題的、集成的、與時間相關的、主要用于存儲的數據集合,支持管理部門的決策過程,其目的是構建面向分析的集成化數據環境,為分析人員提供決策支持。
- 基本架構是數據流入/流出的過程,分為三層:源數據、數據倉庫、數據應用
- 流水線成為 ETL
- 抽取 Extract:從一個或多個數據源抽取原始數據
- 轉化 Transform:數據變換,包括清理、重構、標準化等
- 裝載 Load:將轉化過的數據存儲
- 數據倉庫的特點:
- 圍繞某個應用目標、應用領域或使用者感興趣的內容
- 可以不斷更新和增長
- 查詢優化
- 能處理非結構化或結構化數據
3.4 數據分析與挖掘
- 數據分析指組織有目的地采集數據、詳細研究和概括總結數據,從中提取有用信息并形成結論的過程。
3.4.1 探索式數據分析
- 關注數據本身,包括結構、離群值、異常值和數據導出的模型
- 流程:問題,數據,分析,模型,結論
3.4.2 聯機分析處理
- 聯機分析處理(OLAP)是一種交互式探索大規模多維數據集的方法。
- 核心是表達多維數據模型(多維數組)
3.4.3 數據挖掘
- 數據挖掘指設計特定算法,從大量數據集中取探索發現知識或者模式的理論和方法
- 數據挖掘與信息可視化的流程對比
- 數據挖掘:數據 -> 計算模型 -> 假設
- 信息可視化:數據 -> 視覺模型 -> 假設
- 數據挖掘的主要方法:
- 分類(預測性方法)
- 聚類(描述性方法)
- 概念描述(描述性方法)
- 關聯規則挖掘(描述性方法)
- 序列模式挖掘(描述性方法)
- 回歸(預測性方法)
- 偏差檢測(預測性方法)
- 可視化數據挖掘
- 知識發現的五個基本步驟
- 選擇
- 預處理
- 變換
- 數據挖掘
- 解釋與評估
3.5 數據工作流
- 數據工作流指為數據處理和分析流程定義的自動過程,本質是計算業務過程的部分或整體在計算機應用環境下的自動化
3.6 數據科學的挑戰
- 如何高效地數據存儲和訪問,構建結構化數據與非結構化數據的關聯,存儲異構、多元數據
- 如何從大數據中獲取跟家有效的信息和知識
- 高維數據可視化,復雜、異構數據可視化,海量數據實時交互設計,大數據可視分析流程等
第四章 數據可視化基礎
4.1 數據可視化基本框架
數據可視化的基本流程和可視化設計的多層次模型。
4.1.1 數據可視化流程
- 科學可視化早期流水線:原始數據 - 數據分析 - 預處理數據 - 過濾 - 關注數據 - 映射 - 幾何數據 - 繪制 - 圖像數據
- 信息可視化模型:將流水線改進成賄賂且用戶的交互可以出現在流程任何階段
- 可是分析學流程:通過人機交互將自動和可視分析方法結合,從輸入的數據到知識有兩條途徑(交互的可視化方法和自動的數據挖掘方法)
- 在任意一種可視化或可是分析流水線中,人是核心要素
- 數據可視化流程中的核心要素:
- 數據表示與變換
- 數據的可視化呈現:選擇最合適的視覺編碼形式
- 用戶交互
4.1.2 數據可視化設計
數據可視化設計的四個級聯的層次:
- 概括現實生活中用戶遇到的問題
- 抽象相應數據類型的操作
- 設計編碼和交互方法
- 實現算法和交互
4.2 可視化中的數據
為了提高可視表達的準確性,需要研究數據的分類及其對應的可視化編碼方法
4.2.1 數據認知
對數據的認知從數據模型到概念模型
- 數據模型:浮點數、分類
- 概念模型:溫度、性別
4.2.2 數據類型
- 根據測量標度:基本操作/用途,集合操作,允許的統計計算
- 類別型數據:判斷是否相等,允許互換元素間位置,類別、模式、列聯相關
- 有序型數據:判斷大小,計算單調關系,終止、百分位數
- 區間型數據:判斷差別,允許元素間線性加減操作,平均值、標準方差、等級相關、積差相關
- 比值型數據:判斷比例,能判斷元素見的相似度,變異系數
- 在可視化中精簡為三種:
- 類別型數據
- 有序型數據
- 數值型數據(包括區間型和比值型)
4.3 可視化的基本圖表
按照所呈現的信息和視覺復雜程度分為三類:原始數據繪圖、簡單統計值標繪、多視圖協調關聯
4.3.1 原始數據繪圖
可視化原始數據的屬性值,直接呈現數據特征
數據軌跡
- 單變量數據:x 軸自變量,y 軸因變量
- 直觀地呈現數據分布、離群值、均值的偏移等
柱狀圖
- 長方形的形狀和顏色編碼數據的屬性
直方圖
- 對數據集的某個數據屬性的頻率統計,各個部分之和等于單位整體
- 直觀地呈現數據的分布、離群值、數據分布的模態
餅圖
- 環狀方式呈現各分量在整體中的比例
等值線圖
- 用相等數值的數據點連線表示數據的連續分布和變化規律
走勢圖
- 通常以折線圖為基礎,使用高密度集的折線圖表達方式展示數據隨某一變量的變化趨勢
散點圖和散點圖矩陣
- 散點圖是表示二維數據的標準方法,數據以點的形式出現在笛卡爾坐標系中
- 散點圖矩陣是散點圖的高維擴展
維恩圖
- 使用平面上的封閉圖形來表述數據的集合關系
熱力圖
- 使用顏色表達位置相關的二維數值數據大小
4.3.2 簡單統計值標繪
- 盒須圖
- 最大值
- 75%
- 均值
- 25%
- 最小值
- 二維盒須圖
4.3.3 多視圖協調關聯
- 將不同種類的繪圖組合起來,每個繪圖單元可以展現數據某個方面的屬性
- 圖 - 基本的統計圖表可視化方法和適用規則
4.4 可視化設計原則
設計制作可視化圖表三個主要步驟:
- 確定數據到圖形元素(標記)和視覺通道的映射
- 視圖的選擇與用戶交互控制的設計
- 數據的篩選,即確定在有限的可視化視圖空間中選擇適當容量的信息進行編碼
4.4.1 數據到可視化的直觀映射
- 考慮數據的語義和可視化用戶的個性特征(用戶期望)
- 利用已有的先驗知識,降低對信息的感知和認知成本
- 基于不同視覺編碼通道的組合
- 使用正確的視覺通道去編碼數據信息
4.4.2 視圖選擇與交互設計
- 首先考慮被廣泛認可并熟悉的視圖設計
- 提供交互手段
- 滾動與縮放
- 顏色映射的控制
- 數據映射方式的控制
- 數據縮放和裁剪工具
- LOD 控制(細節層次)
4.4.3 信息密度——數據的篩選
- 展示合適的信息(非過多、過少)
- 提供數據篩選的操作,讓用戶選擇展示的部分
4.4.4 美學因素
- 標注、網格、顏色選取等
- 三種提高美學性方法:
- 聚焦:吸引注意力到重要元素
- 平衡:有效利用空間、平衡分布
- 簡單:避免過多元素造成混亂
4.4.5 動畫與過渡
- 信息可視化結果的兩種形式:
- 可視化視圖
- 可視化系統(可交互數據環境)
- 動畫與過渡效果的功能:
- 用時間換取空間,在優先的屏幕空間中展示更多的數據
- 輔助不同可視化視圖之間的轉換與跟蹤,或者輔助不同可視化視覺通道的變換
- 增加用戶在可視化系統中交互的反饋效果
- 引起觀察者注意
4.4.6 可視化隱喻
- 隱喻:隱喻本體、隱喻喻體、可視化變量
- 時間隱喻、空間隱喻
4.4.7 顏色與透明度
- α 通道
- 顏色混合的計算公式
4.5 可視化理論發展
- 作為一門學科,還處于發展階段
4.5.1 圖形符號學
- 信息的可視化編碼原則,定義了二維圖形及其對信息的表達過程:
- 圖形(可視化)由傳輸不同信息的圖形符號組成
- 圖形符號(點、線、面)用視覺變量(位置變量、視網膜變量)描述
- 位置變量:圖形在二維平面上的位置;視網膜變量:包括尺寸、數值、紋理、顏色、方向和形狀
- 視網膜變量可以表達不同層次的組織,且變量之間存在關聯性、選擇性、有序型、定量性
4.5.2 關系數據的圖形表示
- 用圖形語言描述和定義可視化的表達
- 一個圖形句子有一系列的元組組成
- 圖形語言和組合算子
4.5.3 圖形語法
- 一種底層統計圖形生成語言,用于構造不同類型的統計圖形
- 圖形的構造過程:規范定義、組裝、顯示
- 兩個重要的可視化概念:
- 數據和它們的視覺表達應該被區分
- 可應用不同的算子構造數據變量的可視化
4.5.4 基于數據類型的研究
- 數據分為 7 類:
- 一維
- 二維
- 三維
- 時間
- 多維
- 樹
- 網絡
4.5.5 基于數據狀態模型的研究
- 可視化劉粗鞥分解為四個數據轉換階段和三種數據轉換操作
- 數據階段:
- 數值:原始數據
- 分析抽象表達:關于數據(信息)的數據,及元數據
- 可視化抽象表達:使用可視化技術,在屏幕上顯示的可視信息
- 視圖:可視化映射的最終產品
- 轉換操作:
- 數據轉換:從值中生成一些分析抽象表達
- 可視化轉換:從分析抽象表達中獲取可視化抽象形式,即可視化內容
- 視覺映射轉換:將信息轉化為可視化形式,顯示為圖形視圖
- 數據階段:
4.5.6 多維關系數據庫可視化分析系統
- Polaris 系統,可支持大規模多維關系型數據庫的查詢、分析和可視化,完成關系型數據庫中的主要挑戰:發現結構和模式,發現因果關系