結合三維矩陣體的動態網絡數據可視化
動態網絡(Dynamic networks)數據與動態圖(Dynamic Graph)數據一直以為都比較復雜,隨著數據量的不斷增大,為動態網絡的分析與可視化帶來了極大的挑戰。另一方面,動態網絡數據常常帶有時間信息,而現有的時空高維數據可視化方法都有各種缺點,尤其是當圖中節點密集時,現有的方法幾乎都會遇到遮擋問題。
二維模型探索動態圖數據已有很多種方法,如點邊圖 (Node-Link Diagram),鄰接矩陣 (Adjacency Matrices) 等,這些方法可以很好地展現圖中的節點自身的隨時間變化的信息,但是節點以及節點之間關系的演化,在這些方法中比較難展現,尤其是節點個數多時,以及限制于一個視圖中。用三維模型將時空高維數據可視化,增加一個維度可以展現更豐富的信息,但是也會帶來更加嚴重的問題,例如相互遮擋,目標物體選擇困難,交互不方便等問題。
本文[1]提出了一個新的交互探索模型,Matrix Cubes,該模型使用3D cube作為視圖中樞協調者 (pivot visualization),管理多個不同角度的切片視圖,這些切片視圖全是從3D cube中導出的。系統還提供了一系列的交互,例如,刷選 (brushing),鏈接 (linking),和過濾 (filtering),為深入探索動態圖數據提供了有效的方法。
具體而言,本文提出的3D cube是由二維的時序鄰接矩陣從時間軸的角度串聯起來形成的 (如圖1b所示的matrix cube是由圖1a中的鄰接矩陣合并形成的),而每個鄰接矩陣可以很好的展現每個時間步的點邊圖信息。得到3D cube之后,我們還可以沿著另外兩個節點軸中任意一個軸對3D cube進行切割,得到一系列的節點切片 (vertex slices),如圖1c所示。值得注意的是,本文主要針對的動態圖都是無向圖,因此,不管是沿著哪個節點軸進行切割,得到的結果都是一樣的,因為鄰接矩陣是對稱的。從功能上來說,3D cube只是顯示動態圖的整體信息 (overview),而實際的探索與交互幾乎都是在多個2D視圖上進行的。在中間的3D cube上,用戶可以刷選所有標簽來過濾數據項或時間步,從而只顯示用戶感興趣的信息。
圖1. 3D cube與兩個不同角度的切片序列
圖2所示的是本系統的UI界面,左下角標識為a處有一個小cubelet,在這個cubelet上用戶可以進行一些基本的交互。如果用戶點擊cubelet的右面 (紅色線段圍成的表面),3D cube將變成時間切片序列,時間切片序列對應于圖1中的a圖;如果用戶點擊cubelet的左側,3D cube將變成節點切片序列,對應于圖1中的c圖。右邊的面板為參數調節區域,用戶可以選擇不同的encoding方法,例如可以將基元元素的顏色 (cell color)表示權重信息,時間序列信息或其他信息,例如后面例子中的論文合作的頻度信息。用戶還可以選擇將基元元素的大小 (cell size) 映射成權重或頻度信息等。為了更好地發現節點之間的模式,用戶可以使用不同的節點排序方法進行reranking。此外,還可以對數據進行過濾,例如,時間片上的過濾,權重上的過濾,以及可以允許用戶調節視圖切換時的過渡動畫的速度。
圖2. 系統的UI界面
為了減少用戶的交互時間開銷,該系統設計了四種預定制的視圖,3D視圖 (3D cube view),投影視圖 (projection view),小卡片視圖 (small multiples view)和切片旋轉視圖 (slice rotation view)。
首先在3D視圖中,用戶僅僅可以看到一些overview的信息,例如一些趨勢或總體的分布等等。大部分的細節信息以及數據的模式都需要在后面三個2D視圖中進行探索,在第二種視圖,投影視圖中,分為時間切片投影視圖與節點切片視圖。時間切片視圖即切片排列成圖1a中的形式,節點切片視圖即圖1b的形式。第三種視圖即小卡片視圖,所有的切片可以展開到一個2D平面上,方便用戶進行對比并發現一些數據的規律。***一個視圖是切片旋轉視圖,用戶可以選擇3D cube中的任意一張切片,點擊,旋轉即可以看到切片的詳細信息。總之,***個3D視圖與后面三個2D視圖形成Overview和detail的關系,overview只能提供一些大致的context信息,而詳細的信息還需要在后面三個2D視圖進行探索。不管是3D視圖還是2D視圖,用戶都可以將基元元素的顏色與大小映射成不同的信息。
圖3. 四種預定制的視圖
***,本文還使用了兩個具體的數據進行測試,***個是稱為ALMA的天線通信數據,該數據由一系列的觀測太空的天線收集而成,每兩個天線之間都會進行通信,因此這些通信就會有延遲信息,通信振幅信息,以及振幅均方值,和信息的信噪比,用本文的方法對這個AMLA數據進行測試,在小卡片視圖中,發現很多異常的信息以及一些行為類似的信息。另一個數據是神經學研究中用到大腦刺激數據,神經學家對人體大腦的不同區域使用不同的刺激,收集這些不同的區域之間信號的傳輸情況。如圖4所示,在這個數據中,用戶通過小卡片視圖與時間切片視圖發現了有些區域明顯比其他區域更活躍 (發送與接收信號都非常頻繁),在時間切片視圖中還發現了一些周期性的信息,***,在節點切片視圖中,用戶可以很明顯發現一些區域發送信號比接收信號明顯更多 (紅色表示發送信號的區域,藍色表示接收信號的區域)。