一種針對(duì)非連續(xù)層次數(shù)據(jù)的可視化方法和應(yīng)用
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于信息可視化領(lǐng)域,具體涉及一種基于ThemeRiver模型的非連續(xù)層次 數(shù)據(jù)的可視化方法和應(yīng)用。
【背景技術(shù)】
[0002] 隨著社會(huì)的飛速發(fā)展,各種社會(huì)生活問題也隨之暴露出來。大數(shù)據(jù)時(shí)代,現(xiàn)代化的 手段如數(shù)據(jù)挖掘,機(jī)器學(xué)習(xí)等,將數(shù)據(jù)分析技術(shù)與先進(jìn)的信息可視化技術(shù)相結(jié)合,可幫助人 們掌握并分析領(lǐng)域內(nèi)相關(guān)數(shù)據(jù)。
[0003] 大規(guī)模層次數(shù)據(jù)可視化是現(xiàn)今的一大熱點(diǎn),通常情況下,此類數(shù)據(jù)同時(shí)還具有時(shí) 間屬性。如何在保持層次結(jié)構(gòu)清晰展現(xiàn)的基礎(chǔ)上,將時(shí)變特征表現(xiàn)出來是現(xiàn)今的一大挑戰(zhàn)。 展示層次數(shù)據(jù)的可視化方法主要有結(jié)點(diǎn)-鏈接法和空間填充法。其中,結(jié)點(diǎn)-鏈接法主要 通過線段和結(jié)點(diǎn)連接的方式展現(xiàn)層次結(jié)構(gòu)特性,優(yōu)點(diǎn)是展現(xiàn)層次關(guān)系清晰明了,但是空間 浪費(fèi)嚴(yán)重。此外,當(dāng)數(shù)量太大時(shí),由于屏幕空間不足,十分容易出現(xiàn)結(jié)點(diǎn)重疊的現(xiàn)象??臻g 填充法的典型代表是Treemap方法,Treemap能夠最大限度的利用空間,同時(shí)能夠通過面積 顯示數(shù)據(jù)的屬性值,但是在展現(xiàn)層次結(jié)構(gòu)方面不如結(jié)點(diǎn)鏈接法直觀。無論是結(jié)點(diǎn)鏈接法還 是空間填充法,都很難在時(shí)間序列上合理的布局展示。
[0004] ThemeRiver模型是一種典型的處理時(shí)序數(shù)據(jù)的可視化的結(jié)構(gòu)樣式,它能夠?qū)⒌?到的大量時(shí)序數(shù)據(jù)集合在一起,按時(shí)間順序構(gòu)造一個(gè)類似"河流"的可視化顯示方式,通過 河流的流動(dòng)趨勢(shì)和涌流(current)的坡度可以反映主題強(qiáng)度信息隨時(shí)間的變化情況,這種 方式能夠解決大規(guī)模數(shù)據(jù)的時(shí)序特性,且無論主題如何變化,其走向總是清晰可見,一目了 然。但主題河流能夠展示的信息過于單一,通常無法展現(xiàn)數(shù)據(jù)的層次特性,難以展示具體細(xì) 節(jié)信息。因此,針對(duì)具有時(shí)間屬性的大規(guī)模層次數(shù)據(jù),現(xiàn)有可視化方法難以實(shí)現(xiàn)同時(shí)表示數(shù) 據(jù)的層次結(jié)構(gòu)和時(shí)序特征。
【發(fā)明內(nèi)容】
[0005] 為了克服上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種基于ThemeRiver模型的非連續(xù) 層次數(shù)據(jù)的可視化方法,基于ThemeRiver模型和Treemap結(jié)點(diǎn)布局的方法,通過形成可利 用用戶交互方法來展示數(shù)據(jù)的層次特性和時(shí)序特征的主題河流圖對(duì)具有時(shí)變特性的大規(guī) 模非連續(xù)層次數(shù)據(jù)進(jìn)行可視化,實(shí)現(xiàn)同時(shí)表示數(shù)據(jù)的層次結(jié)構(gòu)和時(shí)序特征。
[0006] 本發(fā)明提供的技術(shù)方案是:
[0007] -種非連續(xù)層次數(shù)據(jù)的可視化方法,針對(duì)具有時(shí)變特性的非連續(xù)層次數(shù)據(jù),基于 ThemeRiver模型和Treemap結(jié)點(diǎn)布局的方法,通過形成可利用用戶交互方法來展示數(shù)據(jù)的 層次特性和時(shí)序特征的主題河流圖進(jìn)行可視化,包括如下步驟:
[0008] 1)針對(duì)η個(gè)具有層次屬性和時(shí)間特性的大規(guī)模數(shù)據(jù)集,進(jìn)行預(yù)處理,執(zhí)行如下操 作:
[0009] 11)對(duì)每個(gè)數(shù)據(jù)集按時(shí)間跨度進(jìn)行劃分處理,設(shè)總布局時(shí)間跨度為Τ ;時(shí)間粒度為 6;時(shí)間點(diǎn)為^,1£(〇,2),其中2 = 1/6,為時(shí)間段的數(shù)目;
[0010] 12)針對(duì)每個(gè)數(shù)據(jù)集,設(shè)定數(shù)據(jù)點(diǎn)個(gè)數(shù)門限值為K ;針對(duì)每個(gè)時(shí)間段中的數(shù)據(jù)點(diǎn)的 數(shù)目Μ,判斷Μ是否大于等于Κ ;若Μ小于Κ,則通過對(duì)不同年份的相同時(shí)間段的數(shù)據(jù)進(jìn)行取 平均操作得到新數(shù)據(jù),為該時(shí)間段添加新的數(shù)據(jù)點(diǎn),直到Μ = Κ ;
[0011] 13)針對(duì)每個(gè)數(shù)據(jù)集,得到ζ個(gè)時(shí)間段的數(shù)據(jù),分別記為V Α2、Α3……ΑΖ;Β ρ Β2、 Β3......Βζ;......;
[0012] 2)針對(duì)η個(gè)數(shù)據(jù)集,利用Themeriver主題河流的中心搖擺法,執(zhí)行如下操作:
[0013] 21)首先生成第一層次數(shù)據(jù),作為河流的涌流數(shù)據(jù)線的縱坐標(biāo);包括如下步驟:
[0014] 211)計(jì)算得到η個(gè)數(shù)據(jù)集z個(gè)時(shí)間段的數(shù)據(jù)值ηι~η z,數(shù)據(jù)值ηι~η 2分別等于 每個(gè)數(shù)據(jù)集在相應(yīng)時(shí)間段數(shù)據(jù)的加和;
[0015] 212)計(jì)算得到每一個(gè)時(shí)間段的初始點(diǎn)縱坐標(biāo),構(gòu)成Themeriver主題河流的初始 線,具體地:
[0016] 計(jì)算第一個(gè)時(shí)間段的初始點(diǎn)縱坐標(biāo)的公式為8?!?g+n 1;其中,g+g αι= 0 ;貝1J
[0017] 計(jì)算第二個(gè)時(shí)間段的初始點(diǎn)縱坐標(biāo)為
[0018] 以此類推;
[0019] 對(duì)計(jì)算得到的所有時(shí)間段的初始點(diǎn)縱坐標(biāo)數(shù)據(jù)進(jìn)行圖像擬合,得到Themeriver 主題河流的初始線;
[0020] 213)針對(duì)每一個(gè)數(shù)據(jù)集,計(jì)算得到該數(shù)據(jù)集在每一個(gè)時(shí)間段的縱坐標(biāo),構(gòu)成 Themeriver主題河流的一條涌流線;具體地,針對(duì)數(shù)據(jù)集A,利用步驟13)中得到的z個(gè)時(shí) 間段的數(shù)據(jù)ΑρΑ^??;^......Αζ;ζ個(gè)時(shí)間段的縱坐標(biāo)值分別為gQ,2+A 2;& 此類推;
[0021] 對(duì)計(jì)算得到的所有時(shí)間段的縱坐標(biāo)值數(shù)據(jù)進(jìn)行圖像擬合,得到該數(shù)據(jù)集相對(duì)應(yīng)的 一條涌流線的數(shù)據(jù);
[0022] 針對(duì)所有數(shù)據(jù)集,按照上述步驟計(jì)算得到所有數(shù)據(jù)集在每一個(gè)時(shí)間段的縱坐標(biāo), 構(gòu)成Themeriver主題河流的η條涌流線;
[0023] 22)針對(duì)上述非連續(xù)層次數(shù)據(jù)集的第一層次數(shù)據(jù)之下層的第二層次數(shù)據(jù),通過與 步驟21)相同的方法對(duì)數(shù)據(jù)進(jìn)行處理和計(jì)算,得到所有層次數(shù)據(jù)集的第一層次數(shù)據(jù)所屬的 第二層次數(shù)據(jù)的數(shù)據(jù)線,構(gòu)成第一層次數(shù)據(jù)相應(yīng)的涌流下屬的子涌流線;
[0024] 23)逐層數(shù)據(jù)進(jìn)行步驟21)相同的處理,直至得到所有層次的數(shù)據(jù)線;
[0025] 3)繪制主題河流圖,包括:
[0026] 31)將得到的初始線和η條涌流線繪制到屏幕上,構(gòu)成第一層次的主題河流圖;
[0027] 繪制出的主題河流圖中,初始線到第一條涌流線之間的區(qū)域代表該涌流線相對(duì)應(yīng) 的數(shù)據(jù)集;第一條涌流線到第二條涌流線之間的區(qū)域代表第二條涌流線相對(duì)應(yīng)的數(shù)據(jù)集; 以此類推;每個(gè)區(qū)域用不同顏色區(qū)分;
[0028] 32)在第一層次的主題河流圖上,在每一個(gè)數(shù)據(jù)集相對(duì)應(yīng)的區(qū)域,采用與步驟31) 相同方法,繪制該數(shù)據(jù)集對(duì)應(yīng)的下一層次數(shù)據(jù)的初始線和子涌流線;構(gòu)成具有多層次的主 題河流圖。
[0029] 針對(duì)上述針對(duì)非連續(xù)層次數(shù)據(jù)的可視化方法,進(jìn)一步地,步驟3)所述繪制主題河 流圖,采用顏色差異較大的不同色系顯示不同涌流;涌流內(nèi)部的子涌流采用相同色系不同 飽和度的顏色進(jìn)行展示。
[0030] 針對(duì)上述針對(duì)非連續(xù)層次數(shù)據(jù)的可視化方法,進(jìn)一步地,步驟32)所述子涌流通 過標(biāo)簽進(jìn)行展示,展示子涌流的標(biāo)簽布局按照以下方法進(jìn)行:
[0031] El. 1標(biāo)簽顯示不能夠遮擋其他涌流;
[0032] E1. 2能夠明確表示顯示的標(biāo)簽與該標(biāo)簽展示子涌流所屬的涌流的關(guān)系,具體地, 在涌流較小的情況下,標(biāo)簽可以直接分布在每個(gè)涌流層上面;當(dāng)涌流過多時(shí),通過交互操 作,通過鼠標(biāo)滑動(dòng)和點(diǎn)擊主題河流中的某一條涌流來彈出窗口顯示標(biāo)簽信息。
[0033] 針對(duì)上述針對(duì)非連續(xù)層次數(shù)據(jù)的可視化方法,進(jìn)一步地,通過交互操作方式繪制 主題河流圖,用戶點(diǎn)擊選取主題河流圖中的某個(gè)涌流,未點(diǎn)選的涌流顏色淡去,放大選取的 涌流進(jìn)一步顯示該涌流內(nèi)部的子涌流。
[0034] 針對(duì)上述針對(duì)非連續(xù)層次數(shù)據(jù)的可視化方法,進(jìn)一步地,步驟進(jìn)行圖像擬合包括 高斯模型圖像擬合和傅里葉模型圖像擬合。
[0035] 本發(fā)明同時(shí)提供一種應(yīng)用,將上述針對(duì)非連續(xù)層次數(shù)據(jù)的可視化方法應(yīng)用于農(nóng)藥 殘留數(shù)據(jù)的展示,其特征是,把某區(qū)域內(nèi)的多個(gè)地區(qū)各個(gè)省份的農(nóng)藥檢測(cè)結(jié)果數(shù)據(jù)作為非 連續(xù)層次數(shù)據(jù)集,第一層次為地區(qū),第二層次為地區(qū)包括的省份;根據(jù)時(shí)間跨度對(duì)非連續(xù)層 次數(shù)據(jù)集的數(shù)據(jù)點(diǎn)進(jìn)行時(shí)間段劃分,記錄每個(gè)時(shí)間段中的數(shù)據(jù)點(diǎn)的個(gè)數(shù);通過設(shè)置數(shù)據(jù)點(diǎn) 數(shù)目閾值對(duì)時(shí)間段內(nèi)數(shù)據(jù)點(diǎn)個(gè)數(shù)小于所設(shè)置閾值補(bǔ)加