第 9 章
視覺化改變 II:密集時間序列、動態與互動圖形
上一章的圖示,是為時點數不多的追蹤型資料而造的。密集縱貫資料會把它們壓垮。當一個人貢獻數十到數百次測量,這些測量在日之內有結構、跨週有結構,帶著自我相關與延宕依賴,而且好幾個人、或一對伴侶同時被測量時,軌跡圖必須重新設想,一套新的圖示詞彙也就成為必要。本章提供這套詞彙,而且身兼兩職:它是第六部動態模型的視覺直覺幫浦。每一個後來會帶著方程式登場的概念,自我相關與慣性、交叉延宕耦合、定態性與體制轉換、吸引子與早期預警訊號、網絡與它們的不穩定性,都先在這裡拿到自己的圖,於是等模型出現時,讀者已經知道它想捕捉的是什麼。本章結束於資料蒐集現場的圖形:監控儀表板,以及動畫的審慎使用。
學習目標
讀完本章之後,你應該能夠:(1) 設計尊重日內結構與真實時戳的時間序列圖示,在夜間間隔 (night gap) 處把線斷開而不是內插過去;(2) 把配合度 (compliance) 與遺漏 (missingness) 當成與其他結果同等重要的結果來視覺化,並從資料中讀出帶有訊息的遺漏 (informative missingness);(3) 讀延宕散布圖 (lag scatterplot) 與自我相關函數 (autocorrelation function, ACF),並把它們連到慣性 (inertia);(4) 用交叉相關 (cross-correlation) 與領先落後圖 (lead-lag plot) 呈現個體內的雙變量耦合與雙人耦合 (dyadic coupling);(5) 繪製狀態空間 (state space)、相位 (phase)、移動窗統計量 (rolling statistics) 與遞迴圖 (recurrence plot),並以適當的謹慎解讀它們表面上的結構;(6) 建立並讀懂時間網絡 (temporal network) 與同時性網絡 (contemporaneous network),包括它們的連結不確定性 (edge uncertainty);(7) 判斷動畫與互動在什麼時候能增添推論價值,並為一項進行中的研究設計一個最小可用的監控儀表板 (monitoring dashboard)。
9.1 密集資料的時間序列圖示
密集序列最基礎的圖示是日帶圖 (banded-day plot),它也是本書經驗取樣資料的標準圖示。圖 9.1 顯示一個人在兩週、每日六次提示的取樣中,當下負向情緒的變化。真實時間沿著橫軸走,交替的底色標出日界,而關鍵在於:連接線在跨夜的缺口處斷開,不跨越它,因為一條由某日最後一次提示畫到隔日第一次提示的線,會主張一種橫跨睡眠的經驗連續性,而那是設計並未測量到的。這一項紀律,橫軸放真實時間、真正的缺口留成缺口,把一份誠實的密集資料圖示與一份製造平滑的圖示區分開來,也把第 5 章引入的夜間間隔 (night gap) 決定操作化。表 9.1 把本章視覺化的各種動態特徵對應到它們的經典圖示,與第 8 章的選圖指南相互呼應。
註:一個人在十四天、每日六次提示的取樣中的當下負向情緒。橫軸是真實時間,交替底色標出日界,連接線在夜間斷開,不跨越跨夜的缺口 (overnight gap) 而內插。錯過的提示呈現為缺口,不是被補上的點。
表 9.1 動態特徵與它的經典圖示。
| 關注的特徵是…… | 經典的圖示是…… |
|---|---|
| 日內結構與日節律 | 日帶圖 (banded-day plot);依一天中的時刻畫的日內剖面 |
| 對事件的反應 | 圍繞事件的事件鎖定平均 (event-locked averaging) |
| 深入看一個人 | 單一個案展示 (N-of-1 exhibit):序列加上移動窗統計量與 ACF |
| 配合度與遺漏 | 「人 \(\times\) 提示」矩陣;配合度衰減曲線 |
| 慣性(自我相關) | 延宕一期散布圖;自我相關函數 |
| 兩個序列的耦合 | 交叉相關函數 (cross-correlation function, CCF);領先落後圖 |
| 狀態空間與體制轉換 | 相位圖與狀態空間圖;移動窗統計量;遞迴圖 |
| 多變量動態 | 時間網絡圖與同時性網絡圖 |
註:一如第 8 章,圖示要跟著問題走。右欄的各項在本章中逐一開展,並成為第六部動態模型的視覺搭檔。
以尊重時間的方式跨樣本聚合,得到的是日內剖面 (diurnal profile),也就是一個構念的平均水準作為一天中時刻的函數。圖 9.2 把當下負向情緒對時鐘時間畫出來,各個體以淡線襯在組平均數與它的標準誤後面,於是這個圖示同時回答第 8 章那兩個問題,典型的每日形狀與它周圍的變異,而不把第二個藏進第一個裡面。以事件為錨的變體,把序列重新對齊到一個有意義的事件而不是時鐘時間,再把事件鎖定的曲線平均起來,就像電生理學家把試次對齊到刺激再平均一樣。圖 9.3 把這個做法用在壓力事件上:把許多高壓力時刻對齊到共同的原點,再把它們周圍的負向情緒軌跡平均起來,顯出一段攀升到壓力高峰、其後又回復的過程,而這個訊號埋在任何單一的原始序列裡、由平均把它抽取出來。事件鎖定平均威力強大,在心理學中卻用得太少,它是第六部個體內脈衝反應 (impulse response) 想法的描述性前身。
註:依一天中的時刻畫的當下負向情緒。灰色細線是各個體;藍線與色帶是組平均數與它的標準誤 (standard error)。這個圖示一次顯示典型的每日形狀與它周圍的分散程度。
註:以高壓力時刻(提示編號零)為中心的一個提示窗內的負向情緒,跨許多事件與許多人平均,做法一如事件相關電位 (event-related potential, ERP)。攀升到高峰與其後的回復是由平均浮現出來的;它們在任何單一的原始序列中都看不見。
聚合的反面是單一個案展示 (N-of-1 exhibit),也就是把單一個人的序列完整呈現,把個體當成分析單位。圖 9.4 是本書單一受試者心情資料的展示,這份資料在產生時被安排了一次隱藏的體制轉換 (regime shift),大約落在第一百天。上方子圖是原始的每日效價加一條移動平均,下方兩個子圖是移動窗統計量 (rolling-window statistics),也就是移動標準差與移動延宕一期自我相關,各自在一個滑動的窗內計算。體制轉換在原始序列中幾乎看不出來,但移動窗統計量把它暴露出來:隨著轉換逼近,變異數膨脹、自我相關上升,這正是動力系統理論稱為臨界減速 (critical slowing down) 的特徵,並被當成即將到來的轉換的早期預警訊號 (Scheffer et al., 2009; Wichers et al., 2016)。這個帶有移動窗統計量子圖的單一個案展示,是第 32 章所形式化的時變動態與早期預警方法的視覺種子,放在這裡是為了讓直覺先於模型。
註:單一個人兩百天的每日效價(上,附移動平均)、移動標準差(中)與移動延宕一期自我相關(下);底色區塊是真正的轉換期間。平均數由約六十七降到約三十四,而且在逼近轉換時,變異數膨脹、自我相關由約 \(0.34\) 升到約 \(0.84\),也就是臨界減速 (critical slowing down) 的早期預警型態。移動窗統計量揭露了原始序列所隱藏的東西。
9.2 看見遺漏與配合度
在密集設計中,遺漏與配合度不是可以用單一個百分比打發掉的註腳,而是應該被展示的結果,因為它們的型態帶有關於資料品質、以及第 6 章遺漏機制的訊息。圖 9.5 顯示兩個必備的圖示。左子圖是一個「人 \(\times\) 提示」矩陣,每一格依那次排定的提示是否被作答而著色,個體依整體配合度排序,它一眼就揭露平均數揭露不了的事:低配合度集中在特定的人身上,而且作答會隨研究進行而變得稀疏。右子圖把時間上的衰減講明白,把配合度對研究天數畫出來,顯示由第一天的百分之七十八降到最後一天的百分之六十五,那是幾乎每一個密集研究方案都逃不掉的疲乏。這些圖示是通往第 6 章遺漏資料推理的視覺入口。

註:左:一個「人 \(\times\) 提示」矩陣 (person-by-prompt matrix),依每次排定的提示是否被作答而著色,個體依配合度排序;低配合度集中在特定的人身上,而作答隨時間變得稀疏。右:依研究天數畫的配合度,由約百分之七十八降到約百分之六十五,是密集研究方案典型的疲乏。
除了描述遺漏了多少,圖示還可以顯示這些遺漏是不是帶有訊息的 (informative),也就是與那些沒被觀察到的數值本身有關。圖 9.6 把這件事在本書的經驗取樣資料上畫出來,這份資料的產生歷程被設計成:當下負向情緒會提高略過下一次提示的機率。這個圖示把「緊接在被略過的提示之前」與「緊接在被作答的提示之前」兩種情況下觀察到的負向情緒拿來比較,而前者可靠地較高,\(2.05\) 對 \(1.99\),於是被略過的提示不是一個隨機的子樣本,而是系統性地發生在較差的情緒之後。這是第 6 章非隨機遺漏 (missing not at random, MNAR) 的推理以圖形呈現,也是每一項密集研究都應該產出的圖示,因為一個看得見的缺口前抬升,就是「這些遺漏不能不加思索地忽略」的直接證據。
註:緊接在被略過的提示之前,與緊接在被作答的提示之前,觀察到的負向情緒,附 \(95\%\) 信賴區間 (confidence interval)。缺口之前的抬升(\(2.05\) 對 \(1.99\))是「遺漏取決於當下狀態」的可見特徵,也就是第 6 章的機制推理在資料中被直接看見。
9.3 依賴性的圖示
密集資料的定義性特徵是時間上的依賴,而它最基礎的圖示是延宕一期散布圖 (lag-1 scatterplot),把每一筆觀察對緊接在它之前的那一筆畫出來。那個散布的斜率就是這個人的慣性,也就是狀態往前帶的傾向,而圖 9.7 呈現十二個人的畫廊 (gallery),他們的延宕一期斜率差距很大,從把負向情緒由一次提示強烈帶到下一次的,到幾乎不帶的都有。這個異質性就是第 25 章的隨機自我迴歸效果 (random autoregressive effects) 將要建模的那個描述性事實,而把它看成一組散開的斜率,讓讀者為一個「慣性本身跨人而變」的模型做好準備。自我相關函數 (autocorrelation function) 把延宕一期的斜率推廣到所有延宕,而圖 9.8 顯示同樣十二個人的這個函數:長條是各個相繼延宕上的相關,灰帶標出「一個相關可被視為可忽略」的區域,而跨人不同的衰減型態,在每一個延宕上重演了延宕一期畫廊在單一延宕上所顯示的異質性。本章對自我相關函數只作淺讀,到第 24 章才形式化。
註:十二個人各自的當下負向情緒對前一次提示的值,附該人的配適斜率 (fitted slope)。斜率就是那個人的慣性;它由強烈的延續一路到幾乎沒有。這個異質性正是第 25 章隨機自我迴歸效果的動機。
註:十二個人在延宕一到八上,負向情緒的自我相關 (autocorrelation);落在灰帶之外的長條不可忽略。衰減型態因人而異,顯示時間上的依賴本身就是一種個體差異。
兩個序列之間的依賴由交叉相關函數 (cross-correlation function) 呈現,它把一個序列與另一個序列的各個領先與落後相關起來,於是不只揭露兩個構念是否一起變動,還揭露其中一個是否先於另一個。圖 9.9 顯示壓力與負向情緒的平均個體內交叉相關:這個函數在延宕零與其後一格達到高峰,表示兩者同時一起變動,而壓力略為先於負向情緒,這個時間上的次序是一個單純的同時相關看不到的。同一套做法用在兩個人而不是兩個構念上,就得到雙人耦合 (dyadic coupling) 的圖示。圖 9.10 顯示本書每日日誌雙人資料中的四對伴侶,把每位伴侶的負向情緒畫在一起,旁邊是跨全部伴侶組、兩位伴侶序列的平均交叉相關。這個交叉相關是不對稱的,當伴侶 A 領先伴侶 B 時比反過來時更大,還原了內建於資料中的領先落後傳遞,而且它把單一個相關會混為一談的兩種雙人耦合區分開來:讓兩位伴侶一起移動的當日共享成分,呈現為延宕零處的高峰;以及一位伴侶的狀態預測另一位隔日狀態的延宕傳遞。
註:壓力與負向情緒在各個領先與落後上的平均個體內交叉相關 (cross-correlation)。延宕零與其後一格的高峰顯示兩者一起變動,而壓力略為領先負向情緒,這是一個同時相關看不見的時間次序。
註:左:四對伴侶成對的負向情緒序列(伴侶 A 與 B)。右:兩位伴侶的平均交叉相關,當 A 領先 B 時比反過來時更大,還原了內建於資料中的不對稱傳遞。延宕零處的高峰是當日的共享成分 (shared component);非零延宕上的不對稱則是延宕傳遞 (lagged transmission)。
9.4 狀態空間與動力系統的圖示
本節的圖示讓動力系統的想法變得可見,同時在知識論上保持謙抑:它們提示結構,它們不檢定結構。狀態空間圖 (state-space plot) 描出兩個耦合變項的聯合軌跡,此處是單一受試者序列的效價與激發 (arousal),時間以顏色編碼,於是穿過情感平面的那條路徑變得可見。圖 9.11 的左子圖顯示軌跡由序列早期的高效價區域漂移到晚期的低效價區域,體制轉換呈現為雲團穿過狀態空間的一次遷移,而不是單一變項上的一個階梯。它的搭檔,右子圖的遞迴圖 (recurrence plot),標出系統回到相似狀態的每一對時點,而兩個體制呈現為兩個明顯的遞迴區塊,那是「一個系統先佔據某一鄰域的狀態、然後移到另一個」的視覺指紋。遞迴圖在此只是初探,到第 32 章才量化;誠實的框架是:這些圖示是提示性的描述,而它們所引來的吸引子 (attractor) 與轉換的語言,絕不可被誤認為一個已配適的動力模型。單一個案展示中的移動窗統計量子圖(圖 9.4)屬於同一個家族,它們合起來就是第 27 與 32 章時變與非線性動態的描述性起點。
註:左:單一受試者效價與激發的狀態空間軌跡 (state-space trajectory),依時間著色,由高效價區域(早期)漂移到低效價區域(晚期)。右:遞迴圖,標出處於相似狀態的日子配對;兩個狀態呈現為兩個遞迴區塊。這些圖示描述並提示;它們不檢定動力結構。
9.5 網絡視覺化
當好幾個構念被密集測量時,它們的動態可以顯示為一個網絡 (network),變項是節點 (node)、它們之間的關聯是連結 (edge),而且需要兩個網絡,因為有兩種關聯並存。時間網絡 (temporal network) 編碼的是延宕關係,也就是每一個變項預測另一個變項在下一個時點的程度,它的連結是有向的。同時性網絡 (contemporaneous network) 編碼的是同一時點所測變項之間的偏相關,它的連結是無向的。圖 9.12 把情緒變項的兩者都畫出來,畫在完全相同的節點佈局 (layout) 上,好讓兩個子圖可以比較,連結的粗細編碼強度、顏色編碼正負。把兩者畫在同一個佈局上不是美觀上的選擇,而是方法上的要求,因為安置節點的彈簧佈局 (spring layout) 演算法在不同次估計與不同組別之間並不穩定,於是一個節點在兩個佈局各異的網絡之間看似移動了,那是演算法的假象,不是關於資料的發現。第三個子圖顯示已發表的網絡圖太常省略的連結不確定性 (edge uncertainty):一條時間連結的拔靴分布 (bootstrap distribution),顯示即使在大樣本中,這條連結的估計仍帶有可觀的不確定性。表 9.2 列出每一張網絡圖都必須交代的事項,而在此埋下的警告會由第 28 章完整展開:一張網絡圖顯示的是關聯的型態,不是因果結構,而它的連結與它的佈局都必須小心地讀。
註:上:負向情緒、正向情緒與壓力的時間網絡(延宕一期、有向)與同時性網絡(偏相關 (partial correlation)、無向),畫在完全相同的佈局上;連結粗細是強度、顏色是正負(藍為正、紅為負)。下:壓力到負向情緒那條時間連結的拔靴分布,顯示它的估計不確定性。網絡必須在固定的佈局上比較,因為彈簧佈局在不同次估計之間並不穩定。
表 9.2 每一張網絡圖都必須交代的事項。
| 元素 | 要報告什麼 |
|---|---|
| 連結的意義 | 是時間的(延宕、有向)還是同時性的(偏相關、無向);所用的估計式 (estimator) |
| 節點佈局 | 佈局演算法 (layout algorithm),以及在比較子圖或組別時是否使用了固定佈局 |
| 連結的編碼 | 粗細與顏色各代表什麼(大小與正負),以及是否套用了任何門檻 (threshold) |
| 自我迴圈 (self-loop) | 是否顯示自我迴歸(對角線)效果,還是省略 |
| 不確定性 | 連結權重的穩定度或信賴區間,由拔靴法或貝氏後驗 (Bayesian posterior) 得到 |
| 樣本與層次 | 這個網絡是個體內、個體間還是合併的,以及人數與時點數 |
註:一張沒有交代這些事項的網絡圖,既無法解讀也無法重製。佈局與門檻尤其能在不改動底層估計值的情況下,大幅改變視覺印象。
9.6 動畫、互動與監控儀表板
畫面的移動與互動要在一個圖示中贏得位置,靠的是增添推論價值,而不是奇觀。動畫在關注的對象本身就是一種展開時是正當的,例如一條穿過狀態空間的軌跡,或一個在時間中推進的發展歷程,因為此時靜態圖必須用顏色或小型多重圖編碼的那個時間維度,可以由真正的移動來承載;圖 9.11 的狀態空間路徑就是天然的候選,它以顏色編碼的時間會變成沿著軌跡的動畫。互動則在兩種情況下正當:一是序列密到無法一次全部顯示,而讀者能從縮放與游標懸停取得好處;二是連動的子圖讓一個視圖中的選取,同時在另一個視圖中標示出相同的案例。就發表而言,統管的原則是「靜態優先」:主要的圖形必須在印出的紙面上就能溝通,互動版本作為補充材料提供,因為一位沒有互動工具的讀者仍然必須能讀懂結果。最後一項應用是進行中研究的監控儀表板 (monitoring dashboard)。圖 9.13 是必備子圖的示意稿,包括當前配合度對照它的目標、新進作答的分配,以及一份被標記需要追蹤的低配合度參與者排序清單,而圖 9.14 勾勒產生它的架構,也就是一個排程工作,查詢進來的資料、計算摘要與警示規則,再把子圖繪出。儀表板不是發表用的圖形,而是資料蒐集的儀器,它的價值在於把第 9.2 節的配合度與遺漏圖示,從事後的驗屍變成即時的控制。
註:某一個選定研究日的即時監控檢視 (live monitoring view) 示意稿:配合度對照百分之七十的目標、新進作答的分配,以及一份被標記需要追蹤的低配合度參與者排序清單。儀表板把第 9.2 節的遺漏圖示,變成資料蒐集的即時儀器,而不是事後的摘要。
註:一個排程工作 (scheduled job) 查詢進來的經驗取樣資料,計算配合度、題目分配與警示規則,再把儀表板的各個子圖繪出。當某位參與者掉到目標之下時,警示就會觸發一次追蹤。完整的應用程式碼放在隨書儲存庫;本章只顯示架構。
9.7 在 R 中建立這些圖示
日帶圖的做法是把真實時間留在橫軸上、把日界加上底色,再把線依日分組,讓它在夜間斷開,而全書樣式一如第 8 章載入一次。
library(ggplot2); library(dplyr); library(tidyr)
source("Examples/R/theme_book_zh_V01.R"); theme_set(theme_book_zh())
ae <- readRDS("Examples/data/affect_ema.rds")
# --- 日帶圖:依日分組,線才會在夜間缺口處斷開 ---
one <- filter(ae, person == 7)
ggplot(one, aes(hours, na, group = day)) + # group=day => 不跨夜連線
geom_line(na.rm = TRUE) + geom_point(na.rm = TRUE) +
labs(x = "Study time (hours)", y = "Negative affect")
移動窗統計量、自我相關函數與交叉相關函數在 base R 中都有,因此這些動態圖示不需要專門的套件。一個移動統計量就是一個短短的滑動窗迴圈,而自我相關與交叉相關來自 acf 與 ccf,把繪圖關掉,數值就可以用全書樣式重畫。
# --- 單一個案展示的移動窗統計量(窗寬 21、靠右對齊)---
roll <- function(x, w, f) { n <- length(x); out <- rep(NA, n)
for (i in w:n) out[i] <- f(x[(i - w + 1):i]); out }
n1 <- readRDS("Examples/data/n1_mood.rds")
n1$rsd <- roll(n1$valence, 21, sd) # 移動 SD(變異數膨脹)
n1$rar <- roll(n1$valence, 21, function(z) # 移動延宕一期自我相關
cor(z[-length(z)], z[-1]))
# --- 不畫 base 圖形的自我相關與交叉相關 ---
a <- acf(na.omit(one$na), lag.max = 8, plot = FALSE)
cc <- ccf(one$stress, one$na, lag.max = 4, plot = FALSE, na.action = na.pass)
時間網絡與同時性網絡是直接算出來的:時間連結是逐人 (person-wise) 把每一個變項對整組延宕變項做延宕一期迴歸所得的係數,而同時性連結是由同時相關矩陣的反矩陣得到的偏相關;連結的穩定度則來自對「人」重抽樣。十三張圖完整的程式碼,包括網絡佈局與拔靴法,都在隨附的 ch09_figures_zh_V01.R(圖 9.14 的架構圖以 TikZ 直接寫在 .tex 內),而本章引入的兩個資料集由 gen_n1_mood_V01.R 與 gen_daily_couples_V01.R 產生。
# --- 由精確度矩陣得到同時性的偏相關網絡 ---
vars <- c("na", "pa", "stress")
aec <- ae |> group_by(person) |> # 個人平均數中心化
mutate(across(all_of(vars), ~ .x - mean(.x, na.rm = TRUE))) |> ungroup()
R <- cor(aec[, vars], use = "pairwise.complete.obs")
P <- solve(R); pcor <- -cov2cor(P); diag(pcor) <- 0 # 偏相關
軟體提示 • 密集資料圖形的選配基礎設施
本章沒有任何一件事需要 ggplot2 以外的套件,但隨著研究規模擴大,有三個生態系值得注意。tsibble 與 feasts 為以時間索引的資料及其特徵提供了一套整潔的文法,在許多序列必須被一致地摘要時很方便。網絡方面,qgraph 產出慣用的時間與同時性圖示 (Epskamp et al., 2012),bootnet 產出它們的穩定區間 (stability interval) (Epskamp et al., 2018);使用它們時,請以存下來的種子固定佈局,並把同一個佈局傳給每一個子圖與每一組,好讓節點位置可以互相比較。互動方面,plotly 把一個 ggplot 轉成互動圖形,而 shiny 把監控儀表板建成一個即時的應用程式 (Sievert, 2020);它們的可得性與介面會演變,請對照當前的文件確認。此處所示透明的 base R 計算,仍是這些便利工具底下可重製的基礎。
9.8 動態圖示的解讀與報告
讀這些圖示的人必須被明確告知每一張顯示的是什麼,因為它們表面上的結構很容易被過度解讀。一項密集研究的圖註應該說明時間計量與缺口的處理方式、摘要是在哪一個層次上計算的、是否套用了平滑或移動窗以及窗寬多少,而對網絡而言,還要說明表 9.2 的每一項。本章這項密集研究的示範文字可以這樣寫:「當下負向情緒以日帶序列呈現,跨夜的缺口予以保留。配合度由第一天的百分之七十八降到第十四天的百分之六十五,而緊接在被略過的提示之前,負向情緒相對於緊接在被作答的提示之前為高(\(2.05\) 對 \(1.99\)),顯示遺漏不可忽略(依第 6 章處理)。個體內的慣性以延宕一期散布圖與自我相關函數呈現,跨人差異相當大。時間網絡與同時性網絡畫在固定的佈局上,連結的穩定度以個體層次的拔靴法評估。」每一個子句都指名一項設計決定,並拒絕一條沒有標示的平滑曲線、或一個不穩定的佈局所會帶進來的虛假精確。
9.9 常見的迷思
關於動態圖形,有幾個信念會誤導。第一個是一張網絡圖顯示因果結構;它的連結是關聯,延宕的或偏的,而它的佈局是一個演算法的輸出,所以無論是一條連結的存在、還是一個節點的位置,都不允許因果的讀法,這項警告由第 28 章完整開展。第二個是一張看起來像吸引子的狀態空間圖就證明了一個動力系統;一條看似繞著某個區域運行的軌跡,是「這個序列去過哪裡」的描述,不是一個已配適吸引子的證據,而提示性的圖與被檢定過的模型之間的區分必須劃分清楚。第三個是互動越多溝通就越好;一種讀者必須動手操作才能理解結果的互動,對操作不了的讀者就是失敗,而靜態優先原則主張印出來的圖必須能獨立成立。一個反覆出現的實務問題,八十個人乘七十次提示要怎麼畫在一張圖裡,答案一如第 8 章:用小型多重圖式的畫廊、千層麵熱圖,以及標出幾個範例的聚合圖,絕不是八十條重疊的線。
常見陷阱 • 動態圖示騙人的三種方式
第一,跨夜內插:把某日最後一次提示連到隔日第一次,等於主張橫跨睡眠的連續性,並且會膨脹表面上的自我相關;請把線依日分組,讓它在缺口處斷開。第二,把網絡佈局當成位置有意義來比較:由於彈簧佈局並不穩定,一個節點在兩個網絡中位置不同,可能只反映演算法,所以比較子圖或組別之前要先固定佈局。第三,平滑之後把平滑曲線當成資料來解讀:一條移動平均或一條 loess 曲線,是強加在資料上的摘要,而它的特徵,尤其是在序列兩端、窗內資料不對稱之處,有一部分是平滑器 (smoother) 的假象;請把原始序列畫在平滑曲線後面,並寫出窗寬。
實務要點 • 可重製的互動補充材料要怎麼放
互動圖形是以補充材料的身分贏得位置的,而且應該以能存活下去的形式發表。請輸出一個自足的 HTML 檔,把它的資料與繪圖函式庫都嵌進去,而不是輸出一個會去呼叫線上伺服器的檔案,這樣多年以後、或在防火牆後面,這張圖仍然能用;把它存放在與資料和產生腳本相同的公開儲存庫中,並以持久連結引用。至於本質上就是一張截圖的圖形,例如儀表板,請同時封存發表解析度的影像與產生它的程式碼,讓靜態紀錄與可重製的來源兩者都留下來。作為正式紀錄的是產生它的腳本,不是繪製出來的成品。
本章摘要
密集縱貫資料所要求的圖示,是第 8 章為追蹤型資料的規模所設計的工具提供不了的。日帶圖把真實時間放在橫軸上、把夜間缺口留成缺口(圖 9.1);日內剖面與事件鎖定平均摘要日內結構與事件結構(圖 9.2、9.3);而帶有移動窗統計量的單一個案展示,透過臨界減速那種變異數與自我相關的上升,把原始序列所隱藏的體制轉換暴露出來(圖 9.4)。配合度與遺漏被當成結果來呈現,而帶有訊息的遺漏被畫成缺口之前的情緒抬升(圖 9.5、9.6)。依賴性透過延宕散布圖與自我相關函數呈現,它們跨人的異質性預告了隨機的動態效果;也透過交叉相關與雙人領先落後圖示呈現,把共享的耦合與傳遞的耦合分開(圖 9.7 至 9.10)。狀態空間、遞迴與移動窗統計量的圖示提示動力結構,但不檢定它(圖 9.11)。時間網絡與同時性網絡畫在固定佈局上並顯示連結不確定性,因為佈局不穩定,而連結是關聯不是原因(圖 9.12)。動畫與互動用在移動能承載推論之處,並遵守靜態優先 (static-first) 的規則,而監控儀表板把遺漏圖示變成即時的儀器(圖 9.13、9.14)。本章的每一個圖示,都是第六部某一個模型的描述性搭檔。
接下來讀哪裡
本章的圖示為第六部的模型預先授課,這個對應是刻意的。自我相關函數與延宕散布圖(圖 9.8、9.7)會變成第 24 章的單一受試者時間序列模型;它們跨人的異質性會變成第 25 章的多層次自我迴歸與向量自我迴歸模型;交叉相關與雙人圖示(圖 9.9、9.10)會變成同一批模型中的多變量耦合;狀態空間與移動窗統計量的圖示(圖 9.4、9.11)會變成第 27 章的連續時間模型與第 32 章的非線性動態與早期預警方法;而網絡圖(圖 9.12)會變成第 28 章的正式網絡模型。監控儀表板會在第 33 章的臨床應用中再度出現。本書往後貫徹的承諾是:每一個動態模型登場時,都會與此處定義的圖並列介紹,好讓讀者永遠先看見現象,再看見方程式。
習題
- 9.1 做一張日帶圖。就一份提供的、有錯過提示與跨夜缺口的雜亂密集序列,產出一張日帶圖,橫軸保持真實時間、線在夜間斷開,並說明一張天真的折線圖原本會暗示什麼。
- 9.2 事件鎖定的圖示。使用事件取樣的資料,把結果變項對齊到事件周圍,產出一張附不確定性帶的事件鎖定平均圖,並寫出它所支持的一句話解讀。
- 9.3 看見慣性。由一張延宕一期散布圖畫廊,用眼睛判斷哪些人的慣性強,再拿他們的自我相關函數核對你的判斷,並報告眼睛與統計量在哪裡一致、哪裡不一致。
- 9.4 誠實的網絡。把一組提供的時間網絡與同時性網絡在固定的共用佈局上重畫,加上由個體層次拔靴法得到的連結穩定度區間,並寫一段把表 9.2 每一項都交代清楚的圖註。
- 9.5 擴充儀表板。給定監控儀表板的示意稿,加上一條警示規則(例如標記任何在最近三天配合度掉到百分之五十以下的參與者),並描述這條規則會如何改變追蹤的工作流程。
本章重要名詞中英對照
| 中文 | English | 說明/首次出現處 |
|---|---|---|
| 日帶圖 | banded-day plot | 橫軸真實時間、日界加底色、夜間斷線;第 9.1 節 |
| 日內剖面 | diurnal profile | 構念的平均水準對一天中的時刻;第 9.1 節 |
| 事件鎖定平均 | event-locked averaging | 把序列對齊到事件再平均,仿 ERP;第 9.1 節 |
| 單一個案展示 | N-of-1 exhibit | 把單一個人的序列完整呈現;第 9.1 節 |
| 移動窗統計量 | rolling-window statistics | 在滑動窗內計算的統計量;第 9.1 節 |
| 體制轉換 | regime shift | 歷程由一種運作狀態換到另一種;第 9.1 節 |
| 臨界減速 | critical slowing down | 轉換前變異數與自我相關同時上升;第 9.1 節 |
| 帶有訊息的遺漏 | informative missingness | 遺漏與未觀察到的數值本身有關;第 9.2 節 |
| 延宕一期散布圖 | lag-1 scatterplot | 每筆觀察對前一筆;斜率即慣性;第 9.3 節 |
| 自我相關函數 | autocorrelation function (ACF) | 各延宕上的自我相關;第 9.3 節 |
| 交叉相關函數 | cross-correlation function (CCF) | 一序列對另一序列各領先落後的相關;第 9.3 節 |
| 雙人耦合 | dyadic coupling | 兩位伴侶序列之間的共享與傳遞;第 9.3 節 |
| 狀態空間圖 | state-space plot | 兩個耦合變項的聯合軌跡;第 9.4 節 |
| 遞迴圖 | recurrence plot | 標出系統回到相似狀態的時點配對;第 9.4 節 |
| 時間網絡 | temporal network | 延宕關係構成的有向網絡;第 9.5 節 |
| 同時性網絡 | contemporaneous network | 同一時點偏相關構成的無向網絡;第 9.5 節 |
| 連結不確定性 | edge uncertainty | 連結權重的拔靴或後驗區間;第 9.5 節 |
| 彈簧佈局 | spring layout | 依連結強度安置節點的演算法,不穩定;第 9.5 節 |
| 監控儀表板 | monitoring dashboard | 進行中研究的即時配合度與警示檢視;第 9.6 節 |
參考文獻
Bringmann, L. F., Ferrer, E., Hamaker, E. L., Borsboom, D., & Tuerlinckx, F. (2018). Modeling nonstationary emotion dynamics in dyads using a time-varying vector-autoregressive model. Multivariate Behavioral Research, 53(3), 293–314. https://doi.org/10.1080/00273171.2018.1439722
Bringmann, L. F., Vissers, N., Wichers, M., Geschwind, N., Kuppens, P., Peeters, F., Borsboom, D., & Tuerlinckx, F. (2013). A network approach to psychopathology: New insights into clinical longitudinal data. PLOS ONE, 8(4), e60188. https://doi.org/10.1371/journal.pone.0060188
Epskamp, S., Borsboom, D., & Fried, E. I. (2018). Estimating psychological networks and their accuracy: A tutorial paper. Behavior Research Methods, 50(1), 195–212. https://doi.org/10.3758/s13428-017-0862-1
Epskamp, S., Cramer, A. O. J., Waldorp, L. J., Schmittmann, V. D., & Borsboom, D. (2012). qgraph: Network visualizations of relationships in psychometric data. Journal of Statistical Software, 48(4), 1–18. https://doi.org/10.18637/jss.v048.i04
Kuppens, P., Oravecz, Z., & Tuerlinckx, F. (2010). Feelings change: Accounting for individual differences in the temporal dynamics of affect. Journal of Personality and Social Psychology, 99(6), 1042–1060. https://doi.org/10.1037/a0020962
Marwan, N., Romano, M. C., Thiel, M., & Kurths, J. (2007). Recurrence plots for the analysis of complex systems. Physics Reports, 438(5–6), 237–329. https://doi.org/10.1016/j.physrep.2006.11.001
Scheffer, M., Bascompte, J., Brock, W. A., Brovkin, V., Carpenter, S. R., Dakos, V., Held, H., van Nes, E. H., Rietkerk, M., & Sugihara, G. (2009). Early-warning signals for critical transitions. Nature, 461(7260), 53–59. https://doi.org/10.1038/nature08227
Sievert, C. (2020). Interactive web-based data visualization with R, plotly, and shiny. Chapman and Hall/CRC. https://doi.org/10.1201/9780429447273
Tierney, N., & Cook, D. (2023). Expanding tidy data principles to facilitate missing data exploration, visualization and assessment of imputations. Journal of Statistical Software, 105(7), 1–31. https://doi.org/10.18637/jss.v105.i07
Tufte, E. R. (1990). Envisioning information. Graphics Press.
Walls, T. A., & Schafer, J. L. (Eds.). (2006). Models for intensive longitudinal data. Oxford University Press. https://doi.org/10.1093/acprof:oso/9780195173444.001.0001
Wichers, M., Groot, P. C., Psychosystems, ESM Group, & EWS Group (2016). Critical slowing down as a personalized early warning signal for depression. Psychotherapy and Psychosomatics, 85(2), 114–116. https://doi.org/10.1159/000441458