国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于地圖的海量數(shù)據(jù)聚合顯示方法與流程

      文檔序號:11230680閱讀:1903來源:國知局
      一種基于地圖的海量數(shù)據(jù)聚合顯示方法與流程

      本發(fā)明涉及一種基于地圖的海量數(shù)據(jù)聚合顯示方法,屬于地圖的海量數(shù)據(jù)聚合顯示技術(shù)領(lǐng)域。



      背景技術(shù):

      互聯(lián)網(wǎng)技術(shù)飛速發(fā)展帶來的各類信息化產(chǎn)品越來越多,特別近兩年大數(shù)據(jù)技術(shù)的慢慢成熟為大型政企的管理提供了更精細化的數(shù)據(jù)支持,如基于海量數(shù)據(jù)地圖展示的指揮管理及調(diào)度系統(tǒng)應(yīng)用也越來越多。

      海量數(shù)據(jù)的前端顯示與傳統(tǒng)的顯示技術(shù)最大的區(qū)別就是數(shù)據(jù)量變的很大,由于傳統(tǒng)的地圖引擎大多是基于關(guān)系型數(shù)據(jù)庫的,其數(shù)據(jù)量到百萬級查詢速度就已經(jīng)很慢了,在地圖上展現(xiàn)效率更是低下,而基于大數(shù)據(jù)的系統(tǒng)往往數(shù)據(jù)量都在數(shù)十億條以上,相應(yīng)需要展示的數(shù)據(jù)量也隨之很大,所以急需一種為海量數(shù)據(jù)提供基于地圖的展示方法。

      當(dāng)前一些類似應(yīng)用中,為了解決該問題,大多采用將數(shù)據(jù)結(jié)合進地圖后將地圖進行切片,再由前端展現(xiàn),該方法雖然可以解決顯示效率問題,但無法展現(xiàn)實時變化的數(shù)據(jù)。而在實際應(yīng)用中經(jīng)常會碰到例如地圖上車輛位置展示、天氣實況展示、設(shè)備地域分布展示等等情況,該方法則無法滿足需求。



      技術(shù)實現(xiàn)要素:

      針對上述現(xiàn)有技術(shù)存在的問題,本發(fā)明提供一種基于地圖的海量數(shù)據(jù)聚合顯示方法,可解決現(xiàn)有技術(shù)中海量數(shù)據(jù)在地圖上展示的性能問題。

      為了實現(xiàn)上述目的,本發(fā)明采用的一種基于地圖的海量數(shù)據(jù)聚合顯示方法,其具體步驟如下:

      步驟1、調(diào)用任一地圖作為底圖;

      步驟2、在調(diào)用的地圖上添加網(wǎng)格覆蓋物層,網(wǎng)格覆蓋物層中的網(wǎng)格數(shù)為當(dāng)前要顯示的數(shù)據(jù)數(shù);

      步驟3、從服務(wù)端獲取需要展示的數(shù)據(jù),遍歷數(shù)據(jù)與每個網(wǎng)格所包含的經(jīng)緯度范圍進行比較,將落入同一網(wǎng)格內(nèi)的數(shù)據(jù)進行聚合,聚合方式可根據(jù)需求而定;

      步驟4、通過前三步得到當(dāng)前屏幕要展示的聚合后數(shù)據(jù),將所有數(shù)據(jù)定位到其對應(yīng)的網(wǎng)格經(jīng)緯度并渲染到地圖中,即達到數(shù)據(jù)聚合展示的目的。

      當(dāng)?shù)貓D層級變化時,即地圖放大或縮小時,只需重復(fù)執(zhí)行步驟2至步驟4即可。

      上述步驟1中調(diào)用的地圖是百度在線地圖、高德在線地圖或各種離線地圖。

      上述步驟3中的聚合方式取同一網(wǎng)格內(nèi)數(shù)據(jù)的平均值,或者取同一網(wǎng)格內(nèi)數(shù)據(jù)的數(shù)量。

      本發(fā)明使用聚合顯示方法,通過地圖顯示級別,將地理位置相近的數(shù)據(jù)聚合為一個數(shù)據(jù)點,以按當(dāng)前屏幕經(jīng)緯度范圍來獲取數(shù)據(jù)展示,以達到地圖標(biāo)注數(shù)據(jù)高速顯示的目的,解決了現(xiàn)有技術(shù)中海量數(shù)據(jù)在地圖上展示的性能問題。

      附圖說明

      圖1為本發(fā)明的流程示意圖;

      圖2為本發(fā)明在底圖上添加網(wǎng)格覆蓋物層后的示意圖;

      圖3為本發(fā)明經(jīng)過前四個步驟后的數(shù)據(jù)渲染示意圖;

      圖4為本發(fā)明地圖放大后的數(shù)據(jù)渲染示意圖。

      具體實施方式

      下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明。該實施例用于舉例說明,并不用于限制本發(fā)明,如聚合的方式可靈活修改。

      以基于web地圖的氣象格點圖為例,具體按以下步驟實施:

      步驟1、調(diào)用百度在線地圖做為底圖。

      步驟2、在地圖上添加網(wǎng)格覆蓋物層,覆蓋物層以當(dāng)前間隔尺度(interval)為柵格格點單位均勻的分布在地圖上,間隔尺度是地圖上每個網(wǎng)格的長寬,即取當(dāng)前屏幕長(像素)和寬(像素)除以需要顯示的網(wǎng)格數(shù),該網(wǎng)格數(shù)即為當(dāng)前要顯示的氣象要素數(shù)。如圖2所示,在底圖上添加網(wǎng)格,網(wǎng)格的長寬根據(jù)當(dāng)前需要顯示的聚合后的數(shù)據(jù)數(shù)量而定。

      步驟3、通過當(dāng)前屏幕的地圖最大經(jīng)緯度和最小經(jīng)緯度從服務(wù)端獲取需要展示的數(shù)據(jù),遍歷數(shù)據(jù),將數(shù)據(jù)的經(jīng)緯度屬性與網(wǎng)格覆蓋物層中每個網(wǎng)格所包含的經(jīng)緯度范圍進行比較,將落入同一網(wǎng)格內(nèi)的數(shù)據(jù)進行聚合,并記錄下對應(yīng)網(wǎng)格中心點的經(jīng)緯度,聚合的方式可根據(jù)需求而定,在這里采用求平均值的方式,即將落入同一網(wǎng)格內(nèi)的要素值求和后除以同一網(wǎng)格內(nèi)的要素數(shù)量得到平均值。

      步驟4、通過前三步得到當(dāng)前屏幕要展示的聚合后要素值,將所有要素定位到其對應(yīng)的網(wǎng)格經(jīng)緯度并渲染到web地圖中,即達到數(shù)據(jù)聚合展示的目的。

      如圖3為渲染后的地圖數(shù)據(jù)格點展示效果,該圖展示的是采用平均值方式聚合后的要素值渲染效果。

      而當(dāng)?shù)貓D層級變化時,即地圖放大或縮小時,只要重復(fù)執(zhí)行步驟2至步驟4即可。如圖4為地圖放大后格點渲染的效果,屏幕中顯示的格點數(shù)沒有改變,但展示的數(shù)據(jù)粒度更細。

      上述步驟1中調(diào)用的地圖也可以是高德在線地圖或各種離線地圖。

      上述步驟3中的聚合方式是取同一網(wǎng)格內(nèi)數(shù)據(jù)的平均值。此外,也可取同一網(wǎng)格內(nèi)數(shù)據(jù)的數(shù)量。

      實施例一:

      以氣象精細化預(yù)報格點數(shù)據(jù)為例,以高德地圖為底圖,先通過當(dāng)前屏幕顯示范圍的坐標(biāo)取最小坐標(biāo)與最大坐標(biāo),定義間隔尺度,生成方格,將預(yù)報格點數(shù)值依次判斷其坐標(biāo)落點,將落入同一方格的數(shù)據(jù)進行平均值計算得出一系列代表點,同時記下屏幕范圍內(nèi)代表點的最大值與最小值并取整,根據(jù)預(yù)先定義好的圖例色階計算每個顏色所對應(yīng)的數(shù)值范圍。

      調(diào)用高德地圖polygon類循環(huán)畫出覆蓋物,根計算據(jù)代表點的經(jīng)度long、緯度lat計算生成輪廓線的節(jié)點坐標(biāo)數(shù)組:[newamap.lnglat((long,lat)),newamap.lnglat((long+interval/1000,lat)),newamap.lnglat((ong+interval/1000,lat-interval/1000)),newamap.lnglat((long,lat-interval/1000))],該格點的顏色由當(dāng)前的值去映射關(guān)系中獲取,循環(huán)結(jié)束,畫出格點層;在格點上展示平均值時,可以調(diào)用marker類循環(huán)添加marker層,marker的顯示位置為代表點的經(jīng)度long、緯度lat,marker的內(nèi)容是代表點的平均值。

      最后通過調(diào)用地圖api和預(yù)先計算好圖例數(shù)值將圖例畫出。

      綜上所述,通過本發(fā)明算法可將幾十甚至上百萬預(yù)報格點數(shù)據(jù)快速的展示到地圖上,從而達到讓預(yù)報員更加直觀的了解天氣情況。

      實施例二:

      以車輛監(jiān)控系統(tǒng)為例,以高德地圖為底圖,取當(dāng)前屏幕坐標(biāo)最小與最大值,定義間隔尺度,生成方格,取出所有要顯示的車輛信息,循環(huán)取出車輛當(dāng)前坐標(biāo),將落入同一方格的車輛數(shù)據(jù)累加,得出同一區(qū)域內(nèi)聚合了多少輛車,并將方格坐標(biāo)做為代表點。

      調(diào)用高德地圖的marker類循環(huán)添加marker層的圖標(biāo),marker的顯示位置為代表點的坐標(biāo)位置,marker的顯示內(nèi)容為代表點的車輛數(shù)量總和。

      綜上所述,通過聚合算法實現(xiàn)大量的車輛數(shù)據(jù)高速高效的同時在地圖上展示,用戶可一目了然的查看車輛數(shù)量和位置。



      技術(shù)特征:

      技術(shù)總結(jié)
      本發(fā)明公開一種基于地圖的海量數(shù)據(jù)聚合顯示方法,具體步驟如下:先調(diào)用任一地圖作為底圖;然后,在調(diào)用的地圖上添加網(wǎng)格覆蓋物層,網(wǎng)格覆蓋物層中的網(wǎng)格數(shù)為當(dāng)前要顯示的數(shù)據(jù)數(shù);接著,從服務(wù)端獲取需要展示的數(shù)據(jù),遍歷數(shù)據(jù)與每個網(wǎng)格所包含的經(jīng)緯度范圍進行比較,將落入同一網(wǎng)格內(nèi)的數(shù)據(jù)進行聚合,聚合方式可根據(jù)需求而定;最后,通過前三步得到當(dāng)前屏幕要展示的聚合后數(shù)據(jù),將所有數(shù)據(jù)定位到其對應(yīng)的網(wǎng)格經(jīng)緯度并渲染到地圖中,即達到數(shù)據(jù)聚合展示的目的。本發(fā)明使用聚合顯示方法,通過地圖顯示級別,將地理位置相近的數(shù)據(jù)聚合為一個數(shù)據(jù)點,以按當(dāng)前屏幕經(jīng)緯度范圍來獲取數(shù)據(jù)展示,以達到地圖標(biāo)注數(shù)據(jù)高速顯示的目的。

      技術(shù)研發(fā)人員:夏霆;喻宇
      受保護的技術(shù)使用者:南京英斯特網(wǎng)絡(luò)科技有限公司
      技術(shù)研發(fā)日:2017.05.27
      技術(shù)公布日:2017.09.08
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1