一種海量位置簽到數(shù)據(jù)的可視化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及地理信息可視化處理領(lǐng)域,特別涉及一種海量位置簽到數(shù)據(jù)的可視化 方法。 技術(shù)背景
[0002] 數(shù)據(jù)可視化起源于1960年計(jì)算機(jī)圖形學(xué),采用計(jì)算機(jī)創(chuàng)建圖形圖表,通過可視 化,將數(shù)據(jù)的各種屬性和變量呈現(xiàn)出來。隨著數(shù)據(jù)采集設(shè)備和數(shù)據(jù)保存設(shè)備等計(jì)算機(jī)硬件 的發(fā)展,以及創(chuàng)建更復(fù)雜規(guī)模更大的數(shù)字模型的需求,于是乎發(fā)展了數(shù)據(jù)采集設(shè)備和數(shù)據(jù) 保存設(shè)備,需要更高級(jí)的計(jì)算機(jī)圖形學(xué)技術(shù)及方法來創(chuàng)建這些規(guī)模龐大的數(shù)據(jù)集。隨著數(shù) 據(jù)可視化平臺(tái)的拓展,應(yīng)用領(lǐng)域的增加,表現(xiàn)形式的不斷變化,以及增加了諸如實(shí)時(shí)動(dòng)態(tài)效 果、用戶交互使用等功能,數(shù)據(jù)可視化像所有新興概念一樣邊界在不斷擴(kuò)大。
[0003] 針對大規(guī)模數(shù)據(jù)可視化的關(guān)鍵在于精簡的概括性及自然的交互性,通過對映射 (mapping)、交互(interaction)這兩個(gè)基本環(huán)節(jié)的設(shè)計(jì)來實(shí)現(xiàn)。映射是指將抽象數(shù)據(jù)轉(zhuǎn)換 為可視化表示的過程,例如通過顏色映射數(shù)值關(guān)系。通過設(shè)計(jì)準(zhǔn)確巧妙的映射,可以將復(fù)雜 抽象的數(shù)據(jù)形象直觀地概括到一張或多張形象的圖中,有利于有效地理解數(shù)據(jù);交互,是指 計(jì)算機(jī)對人所作出某種特定行為的反應(yīng)。通過設(shè)計(jì)便捷有效的交互有利于人類自由地對復(fù) 雜數(shù)據(jù)進(jìn)行探索。對于傳統(tǒng)數(shù)據(jù)而言,良好的映射與交互效果都可以很好地實(shí)現(xiàn)。但是,對 于海量異構(gòu)數(shù)據(jù),想要實(shí)現(xiàn)良好的映射與交互效果,無論是對算法設(shè)計(jì)還是硬件設(shè)施都提 出了更高的要求。
[0004] 地圖是一種簡便、直觀,也是目前非常流行的展現(xiàn)地理信息的可視化方式。它主要 根據(jù)地理位置的不同,將不同地區(qū)的數(shù)據(jù)展示在地圖上。當(dāng)前,隨著移動(dòng)互聯(lián)網(wǎng)的爆炸性發(fā) 展,我們可以越來越方便地獲取到更加精確的地理位置信息。在這大量地理數(shù)據(jù)的背后,還 有很多有意思的東西正等待著人們?nèi)ネ诰虬l(fā)現(xiàn)。
[0005] 借助對地理信息大數(shù)據(jù)的可視化可以直觀地發(fā)現(xiàn)人類的空間行為特征。通過對不 同城市位置簽到數(shù)據(jù)的可視化可以清楚地看出人口空間分布和軌跡特征,這是傳統(tǒng)的人口 調(diào)查統(tǒng)計(jì)無法做到的??梢杂脕硌绣橙后w活動(dòng)的地理空間分布、聚落規(guī)模、區(qū)位、空間結(jié)構(gòu) 及功能區(qū)分布。但是在現(xiàn)有技術(shù)中還沒有方法可以高效的將海量的簽到數(shù)據(jù)可視化。
【發(fā)明內(nèi)容】
[0006] 發(fā)明目的:本發(fā)明的目的在于針對現(xiàn)有技術(shù)的不足,提出了一種能夠高效的、更加 直觀的反應(yīng)數(shù)據(jù)規(guī)律分布的海量的簽到數(shù)據(jù)可視化方法。
[0007] 技術(shù)方案:本發(fā)明提供了一種海量位置簽到數(shù)據(jù)的可視化方法,包括以下步驟:
[0008] 步驟1 :從數(shù)據(jù)采集終端抓取位置簽到數(shù)據(jù),將采集到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫中;
[0009] 步驟2:對步驟1中采集到的位置簽到數(shù)據(jù)進(jìn)行管理;
[0010] 步驟3 :根據(jù)需要采集地理范圍確定圖幅范圍;
[0011] 步驟4 :采用NodeCanvas技術(shù)繪制地理底圖;NodeCanvas是一種使用NodeJS實(shí)現(xiàn) 的Canvas后端繪圖技術(shù)。
[0012] 步驟5 :在步驟4中獲得地理地圖上繪制采集到的位置簽到數(shù)據(jù)并輸出結(jié)果圖 片;
[0013] 步驟6:輸出結(jié)果圖片。
[0014] 進(jìn)一步,所述步驟2中的數(shù)據(jù)管理包括以下步驟:
[0015] 步驟201 :數(shù)據(jù)預(yù)處理;去除數(shù)據(jù)中重復(fù)的和無效的位置數(shù)據(jù);
[0016] 步驟202 :根據(jù)位置數(shù)據(jù)的唯一標(biāo)識(shí)符建立唯一值索引;
[0017] 步驟203 :建立空間索引。
[0018] 進(jìn)一步,所述步驟3中確定圖幅范圍的方法,包括以下步驟:
[0019] 步驟301 :確定繪制地理范圍的最小包圍矩形;
[0020] 步驟302 :確定繪制圖幅的大?。?br>[0021] 步驟303 :確定圖幅左上角的坐標(biāo)作為基準(zhǔn)坐標(biāo)。
[0022] 進(jìn)一步,所述步驟4中的繪制地理底圖的方法,包括以下步驟:
[0023] 步驟401 :設(shè)置地理地圖邊線顏色、背景色和標(biāo)注顏色;
[0024] 步驟402 :循環(huán)讀取地理底圖數(shù)據(jù),其中地理數(shù)據(jù)中每個(gè)地理要素的經(jīng)煒度信息 繪制地理底圖。
[0025] 進(jìn)一步,所述步驟5中繪制采集到的位置簽到數(shù)據(jù)的方法包括以下步驟:
[0026] 步驟501 :從數(shù)據(jù)庫中讀取需要繪制的位置簽到數(shù)據(jù);
[0027] 步驟502 :將位置簽到數(shù)據(jù)的經(jīng)煒度坐標(biāo)轉(zhuǎn)成圖幅像素坐標(biāo),在將轉(zhuǎn)換后的圖幅 像素坐標(biāo)進(jìn)行像素的海量的數(shù)據(jù)抽稀聚合;
[0028] 步驟503 :將位于同一像素位置數(shù)據(jù)的簽到次數(shù)求和;
[0029] 步驟504 :統(tǒng)計(jì)每一像素簽到次數(shù)的分布;
[0030]步驟505 :根據(jù)統(tǒng)計(jì)結(jié)果確定簽到次數(shù)到顏色映射;
[0031] 步驟506 :繪制位置簽到數(shù)據(jù)。
[0032] 進(jìn)一步,所述簽到數(shù)據(jù)為興趣點(diǎn)(下文簡稱POI)數(shù)據(jù)。
[0033] 進(jìn)一步,所述步驟2中采用MongoDB進(jìn)行數(shù)據(jù)的存儲(chǔ)和管理。其中,MongoDB是一種 非關(guān)系數(shù)據(jù)庫芒果數(shù)據(jù)庫。采用MongoDB存儲(chǔ)管理海量的P0I簽到數(shù)據(jù),利用MongoDBNoSQL 設(shè)計(jì)方式,可以更加靈活的操作數(shù)據(jù),對于大數(shù)據(jù)處理MongoDB選擇最大程度的利用內(nèi)存 資源作為緩存提高性能,解決大數(shù)據(jù)可視化中數(shù)據(jù)讀取的問題。
[0034] 有益效果:與現(xiàn)有技術(shù)相比,本發(fā)明可以根據(jù)不同的比例尺進(jìn)行可視化,可視化效 果美觀,直觀體現(xiàn)數(shù)據(jù)的分布規(guī)律。同時(shí),本發(fā)明能夠更加靈活的操作數(shù)據(jù),有效解決了大 數(shù)據(jù)可視化中數(shù)據(jù)讀取的問題。使用本方法進(jìn)行海量數(shù)據(jù)的可視化方法更加簡單,繪圖效 率高,易于實(shí)現(xiàn),效果好,能夠繪制復(fù)雜圖形。再者,本發(fā)明對于海量數(shù)的繪制采用了一種基 于像素的數(shù)據(jù)抽稀聚合算法,該算法可以大大減少數(shù)據(jù)量而且不影響數(shù)據(jù)的可視化效果。
【附圖說明】
[0035] 圖1為本發(fā)明的流程示意圖;
[0036] 圖2為實(shí)施例的圖幅范圍示意圖;
[0037] 圖3為實(shí)施例的繪制地理底圖結(jié)果;
[0038] 圖4為實(shí)施例的可視化結(jié)果圖。
【具體實(shí)施方式】
[0039] 以下結(jié)合附圖和實(shí)例對本發(fā)明的實(shí)施作進(jìn)一步說明,但本發(fā)明的實(shí)施和包含不限 于此。
[0040] 如圖1所示,本發(fā)明提供的一種海量位置數(shù)據(jù)的可視化方法,包括以下步驟:其 中,本發(fā)明利用新浪微博興趣點(diǎn)(下文簡稱POI)簽到數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)。
[0041] 步驟1:數(shù)據(jù)獲取;該步驟包括以下步驟:
[0042] 步驟101 :抓取新浪微博POI簽到數(shù)據(jù),具體實(shí)施時(shí),根據(jù)新浪微博編寫爬蟲程 序,其中,API為應(yīng)用程序編程接口,抓取全國范圍的內(nèi)的所有POI數(shù)據(jù);
[0043] 步驟102:將數(shù)據(jù)存儲(chǔ)到MongoDB數(shù)據(jù)庫中。選擇具有空間數(shù)據(jù)引擎功能的任意 一種數(shù)據(jù)庫存儲(chǔ)抓取的P0I數(shù)據(jù)。
[0044] 步驟2 :數(shù)據(jù)的管理;主要包括以下步驟:
[0045] 步驟201 :數(shù)據(jù)預(yù)處理,預(yù)處理主要去除數(shù)據(jù)中重復(fù)的和無效的位置數(shù)據(jù);
[0046] 步驟202 :根據(jù)數(shù)據(jù)的興趣點(diǎn)序號(hào)(簡稱為POI ID)建立唯一索引,抓取的微博數(shù) 據(jù)具有P0IID字段,P0IID字段是P0I的唯一標(biāo)識(shí)符,在MongoDB數(shù)據(jù)庫中,以P0IID建立 唯一索引的命令為:
[0047] db. weibo. ensurelndex ({POIid:1}, {unique:true});
[0048] 其含義為:使用數(shù)據(jù)庫命令工具以POIID建立唯一值索引
[0049] 步驟203 :建立空間索弓丨;在MongoDB中空間數(shù)據(jù)以GeoJSON格式的地理要素 格式存儲(chǔ),其中,GeoJSON是一種對各種地理數(shù)據(jù)結(jié)構(gòu)進(jìn)行編碼的格式。根據(jù)位置(簡稱 location)字段建立空間索引的命令如下:
[0050] db. weibo. ensurelndex({〈location field>:〃2dsphere〃});
[0051] 其含義為:根據(jù)location字段建立空間索引命令行代碼。
[0052] 步驟3 :確定圖幅范圍;主要包括以下步驟:
[0053] 步驟301:確定繪制地理范圍的最小包圍矩形;計(jì)算需要繪制地理邊界 的范圍,本實(shí)例以江蘇省為例,起始經(jīng)煒度為(116. 3672,30. 7562)終止經(jīng)煒度為 (122. 0032, 35. 1233)
[0054] 步驟302 :確定繪制圖幅的大??;首先確定圖幅的縮放等級(jí),縮放等級(jí)為繪制比例 尺的一種計(jì)算方法,一個(gè)縮放等級(jí)對應(yīng)一個(gè)比例尺,取值為在〇?20之間進(jìn)行圖像繪制。本 實(shí)例采用Google地圖切片方案作為標(biāo)準(zhǔn),根據(jù)地圖的縮放等級(jí)和地圖范圍確定所繪
[0055] 制區(qū)域包含的瓦片行列號(hào)。其中與經(jīng)煒度坐標(biāo)轉(zhuǎn)成Google瓦片坐標(biāo)系的公式為:
【主權(quán)項(xiàng)】
1. 一種海量位置簽到數(shù)據(jù)的可視化方法,其特征在于:包括w下步驟: 步驟1;從數(shù)據(jù)采集終端抓取位置簽到數(shù)據(jù),將采集到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫中; 步驟2 ;對步驟1中采集到的位置簽到數(shù)據(jù)進(jìn)行管理; 步驟3 ;根據(jù)需要采集地理范圍確定圖幅范圍; 步驟4 ;采用NodeCanvas技術(shù)繪制地理底圖; 步驟5 ;在步驟4中獲得地理地圖上繪制采集到的位置簽到數(shù)據(jù); 步驟6;輸出結(jié)果圖片。
2. 根據(jù)權(quán)利要求1所述的海量位置簽到數(shù)據(jù)的可視化方法,其特征在于:所述步驟2 中的數(shù)據(jù)管理包括W下步驟: 步驟201 ;數(shù)據(jù)預(yù)處理;去除數(shù)據(jù)中重復(fù)的和無效的位置數(shù)據(jù); 步驟202 ;根據(jù)位置數(shù)據(jù)的唯一標(biāo)識(shí)符建立唯一值索引; 步驟203 ;建立空間索引。
3. 根據(jù)權(quán)利要求1所述海量位置簽到數(shù)據(jù)的可視化方法,其特征在于:所述步驟3中 確定圖幅范圍的方法,包括W下步驟: 步驟301 ;確定繪制地理范圍的最小包圍矩形; 步驟302 ;確定繪制圖幅的大?。? 步驟303 ;確定圖幅左上角的坐標(biāo)作為基準(zhǔn)坐標(biāo)。
4. 根據(jù)權(quán)利要求1所述海量位置簽到數(shù)據(jù)的可視化方法,其特征在于:所述步驟4中 的繪制地理底圖的方法,包括W下步驟: 步驟401 ;設(shè)置地理地圖邊線顏色、背景色和標(biāo)注顏色; 步驟402 ;循環(huán)讀取地理底圖數(shù)據(jù)中的每個(gè)地理要素的經(jīng)紳度信息繪制地理底圖。
5. 根據(jù)權(quán)利要求1所述海量位置簽到數(shù)據(jù)的可視化方法,其特征在于:所述步驟5中 繪制采集到的位置簽到數(shù)據(jù)的方法包括W下步驟: 步驟501 ;從數(shù)據(jù)庫中讀取需要繪制的位置簽到數(shù)據(jù); 步驟502 ;將位置簽到數(shù)據(jù)的經(jīng)紳度坐標(biāo)轉(zhuǎn)成圖幅像素坐標(biāo),在將轉(zhuǎn)換后的圖幅像 素坐標(biāo)進(jìn)行像素的海量的數(shù)據(jù)抽稀聚合. 步驟503 ;將位于同一像素位置數(shù)據(jù)的簽到次數(shù)求和; 步驟504 ;統(tǒng)計(jì)每一像素簽到次數(shù)的分布; 步驟505 ;根據(jù)統(tǒng)計(jì)結(jié)果確定簽到次數(shù)到顏色映射; 步驟506 ;繪制位置簽到數(shù)據(jù)。
6. 根據(jù)權(quán)利要求1所述海量位置簽到數(shù)據(jù)的可視化方法,其特征在于;所述簽到數(shù)據(jù) 為興趣點(diǎn)數(shù)據(jù)。
7. 根據(jù)權(quán)利要求1所述海量位置簽到數(shù)據(jù)的可視化方法,其特征在于:所述步驟2中 采用MongoDB進(jìn)行數(shù)據(jù)的存儲(chǔ)和管理。
【專利摘要】本發(fā)明公布了一種海量位置簽到數(shù)據(jù)的可視化方法,包括以下步驟:步驟1:從數(shù)據(jù)采集終端抓取位置簽到數(shù)據(jù),將采集到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫中;步驟2:對步驟1中采集到的位置簽到數(shù)據(jù)進(jìn)行管理;步驟3:根據(jù)需要采集地理范圍確定圖幅范圍;步驟4:采用NodeCanvas技術(shù)繪制地理底圖;步驟5:在步驟4中獲得地理地圖上繪制采集到的位置簽到數(shù)據(jù);步驟6:輸出結(jié)果圖片。本發(fā)明可以根據(jù)不同的比例尺進(jìn)行可視化,可視化效果美觀,直觀體現(xiàn)數(shù)據(jù)的分布規(guī)律。同時(shí),本發(fā)明能夠更加靈活的操作數(shù)據(jù),有效解決了大數(shù)據(jù)可視化中數(shù)據(jù)讀取的問題。使用本方法進(jìn)行海量數(shù)據(jù)的可視化方法更加簡單,繪圖效率高,易于實(shí)現(xiàn),效果好,能夠繪制復(fù)雜圖形。
【IPC分類】G06F17-30
【公開號(hào)】CN104537024
【申請?zhí)枴緾N201410799227
【發(fā)明人】李正學(xué), 許捍衛(wèi), 徐靜波, 金文韜, 王海君
【申請人】河海大學(xué)
【公開日】2015年4月22日
【申請日】2014年12月19日