一种适用于多级网格化管理系统的海量数据聚合方法技术方案

技术编号:27772214 阅读:16 留言:0更新日期:2021-03-23 12:52
本申请公开了一种适用于多级网格化管理系统的海量数据聚合方法,包括:初始化地图;初始化多级行政区域规划单元;获取点要素数据;获取当前地图层级下显示的所有行政区域规划单元集合及所有行政区域规划单元的总数量;遍历行政区域规划单元集合和点要素数据,并利用行政区域规划单元的总数量对行政区域规划单元集合和点要素数据进行处理,获取所有的聚合集合;将所有的聚合集合定位至对应的网格经纬度并渲染至地图中进行展示。本申请能够解决海量数据点聚合时的线性显示问题和聚合点不固定的问题。

【技术实现步骤摘要】
一种适用于多级网格化管理系统的海量数据聚合方法
本申请涉及电子地图
,尤其涉及一种适用于多级网格化管理系统的海量数据聚合方法。
技术介绍
随着GIS(地理信息系统,GeographicInformationSystem)在各类网格化管理(网格化管理,就是根据属地管理、地理布局、现状管理等原则,将管辖地域按照一定的标准划分成若干网格状的单元,并对每一网格实施动态、全方位管理)系统的广泛应用,地图中表达空间信息(如坐标位置)的点要素成为了GIS中重要的组成部分,比如环境监控点资源、执法人员实时位置等空间点要素。但是大量的点要素在浏览器端展示会造成如下问题:(1)如果将所有的点位直接显示出来,这些点位会覆盖掉电子地图底图,造成电子地图杂乱无章。(2)大量的资源在整个地图中全部分散显示,将占用大量的电脑内存,最终导致浏览器卡死及系统无法使用的严重问题。通常通过在地图上进行聚合显示解决上述问题。点聚合是地图综合的一种方法,主要解决点要素很多时候表示困难的问题。点聚合可以用少量的点或图标来表示地图中的所有点,让地图更清晰明朗。现有技术已实现的对地图资源点聚合的算法有如下类型:(1)基于网格的点聚合算法,该算法的原理是将地图划分成指定尺寸的正方形,然后将落在对应格子中的点聚合到该正方形中,最终将一个聚合后的点显示在正方形中心,并且该中心点上显示该聚合点(即中心点)所包含的原始资源的数量。(2)基于距离的点聚合算法,该算法的原理是根据点与点之间的距离进行聚合,对每个点进行迭代,若被迭代的点在某个已有聚合点的指定阈值的距离范围之内,那么这个点就聚合,否则新建一个聚合点,如此循环,单聚合后的点的坐标依然是该聚合点创建时的第一个点的坐标位置。对于方式(1),当点位数据时海量数据时,聚合出的点是呈线性分布的,在电子地图上的显示出的就是有规律的小格子。对于方式(2),地图可视区域变化时,会重新划分聚簇,由于划分时的初始点位是随机的,使得聚簇在局部范围内与原聚簇一致,导致聚合点不固定,在电子地图上显示出的效果就是拖动时,显示的点位会随机跳动。由上述分析可知,在网格化管理系统中,当电子地图存在行政区域单元(网格)划分时,以上方式都存在不同程度的缺陷:一个行政区域单元的点要素会聚合到相邻行政区域单元的聚合点中,聚合出来的点要素不能较精确反映网格化管理所需要的汇总信息。因此,现有技术下,急需一种能够方便、规范的基于不同类型业务网格的点要素聚合展示的方案。
技术实现思路
本申请的目的在于提供一种适用于多级网格化管理系统的海量数据聚合方法,能够解决海量数据点聚合时的线性显示问题和聚合点不固定的问题。为达到上述目的,本申请提供一种适用于多级网格化管理系统的海量数据聚合方法,包括:初始化地图;初始化多级行政区域规划单元;获取点要素数据;获取当前地图层级下显示的所有行政区域规划单元集合及所有行政区域规划单元的总数量;遍历行政区域规划单元集合和点要素数据,并利用行政区域规划单元的总数量对行政区域规划单元集合和点要素数据进行处理,获取所有的聚合集合;将所有的聚合集合定位至对应的网格经纬度并渲染至地图中进行展示。如上的,其中,获取当前地图层级下显示的所有行政区域规划单元集合及行政区域规划单元的总数量的子步骤如下:R1:获取当前地图层级;R2:对当前地图层级进行第一次判断,若当前地图层级小于第一层级阈值,则获取区县级行政区域规划单元集合;若当前地图层级大于或等于第一层级阈值,则对当前地图层级进行第二次判断;R3:对当前地图层级进行第二次判断,若当前地图层级小于第二层级阈值,则获取街道/镇级行政区域规划单元集合;若当前地图层级大于或等于第二层级阈值,则获取网格行政区域规划单元集合;其中,第二层级阈值大于第一层级阈值;R4:根据R2或R3获取的行政区域规划单元集合,计算行政区域规划单元的总数量。如上的,其中,第一层级阈值等于8。如上的,其中,第二层级阈值等于15。如上的,其中,行政区域规划单元为三级,包括:区县级行政区域规划单元、街道/镇级行政区域规划单元和网格行政区域规划单元。如上的,其中,遍历行政区域规划单元集合和点要素数据,并利用行政区域规划单元的总数量对行政区域规划单元集合和点要素数据进行处理,获取所有的聚合集合的子步骤如下:P1:遍历行政区域规划单元集合,并根据行政区域规划单元的总数量对当前遍历的行政区域规划单元的遍历标号进行判断,当遍历标号小于总数量时,执行P2;当遍历标号大于或等于总数量时,则表示获得了所有的聚合集合;P2:以当前遍历的行政区域规划单元的质心为聚合点创建一个聚合集合;P3:遍历点要素数据,并判断当前遍历的点要素数据是否落入当前遍历的行政区域规划单元内,若是,则将当前遍历的点要素数据加入至聚合集合中,执行P4;若否,则直接执行P4;P4:判断所有的点要素数据是否遍历完成,若是,则当前遍历的行政区域规划单元的遍历标号加一作为新的当前遍历的行政区域规划单元的遍历标号,执行P1;若否,则执行P3。本申请实现的有益效果如下:(1)本申请根据点要素经纬度和行政区域规划单元的空间范围,获取最终的聚合点,对点位数据进行聚合显示。(2)本专利技术使用聚合显示方式,通过地图显示级别及管理网格,将地理位置相近的点要素聚合为一个点要素来展示,以达到地图点要素数据高速显示的目的,解决了现有技术中海量数据在地图上展示的性能问题、海量数据点聚合时的线性显示问题以及聚合点不固定的问题。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1为适用于多级网格化管理系统的海量数据聚合方法一种实施例的流程图;图2为地图层级一种实施例的示意图。具体实施方式下面结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,本申请提供一种适用于多级网格化管理系统的海量数据聚合方法,包括如下步骤:S210:初始化地图。具体的,显示地图。S220:初始化多级行政区域规划单元。具体的,获取多级行政区域规划单元,使得多个行政区域规划单元显示于地图上。其中,按照实际情况对地图层级的范围进行划分,不同的地图层级的范围显示不同的行政区域规划单元,例如:三级行政区域规划单元显示的行政区域规划单元包括:区县级行政区域规划单元、街道/镇级行政区域规划单元和网格行政区域规划单元。S230:获取点要素数据。具体的,通过显示器的浏览器请求服务器的服务接口获取点要素数据集合。其中,点要素数据表本文档来自技高网
...

【技术保护点】
1.一种适用于多级网格化管理系统的海量数据聚合方法,其特征在于,包括:/n初始化地图;/n初始化多级行政区域规划单元;/n获取点要素数据;/n获取当前地图层级下显示的所有行政区域规划单元集合及所有行政区域规划单元的总数量;/n遍历行政区域规划单元集合和点要素数据,并利用行政区域规划单元的总数量对行政区域规划单元集合和点要素数据进行处理,获取所有的聚合集合;/n将所有的聚合集合定位至对应的网格经纬度并渲染至地图中进行展示。/n

【技术特征摘要】
1.一种适用于多级网格化管理系统的海量数据聚合方法,其特征在于,包括:
初始化地图;
初始化多级行政区域规划单元;
获取点要素数据;
获取当前地图层级下显示的所有行政区域规划单元集合及所有行政区域规划单元的总数量;
遍历行政区域规划单元集合和点要素数据,并利用行政区域规划单元的总数量对行政区域规划单元集合和点要素数据进行处理,获取所有的聚合集合;
将所有的聚合集合定位至对应的网格经纬度并渲染至地图中进行展示。


2.根据权利要求1所述的适用于多级网格化管理系统的海量数据聚合方法,其特征在于,获取当前地图层级下显示的所有行政区域规划单元集合及行政区域规划单元的总数量的子步骤如下:
R1:获取当前地图层级;
R2:对当前地图层级进行第一次判断,若当前地图层级小于第一层级阈值,则获取区县级行政区域规划单元集合;若当前地图层级大于或等于第一层级阈值,则对当前地图层级进行第二次判断;
R3:对当前地图层级进行第二次判断,若当前地图层级小于第二层级阈值,则获取街道/镇级行政区域规划单元集合;若当前地图层级大于或等于第二层级阈值,则获取网格行政区域规划单元集合;其中,第二层级阈值大于第一层级阈值;
R4:根据R2或R3获取的行政区域规划单元集合,计算行政区域规划单元的总数量。


3.根据权利要求2所述适用于多级网格化管理系统的海量数据聚合方...

【专利技术属性】
技术研发人员:薛守宁张号林琦
申请(专利权)人:河北志晟信息技术股份有限公司
类型:发明
国别省市:河北;13

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1