具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意,可视化效果是指可在屏幕上显示的各种图像效果,并且可视化效果包括但是不限于飞线特效。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1示出根据本发明的示例性实施例的数据处理方法的流程图。
参照图1,在步骤S110,根据本发明的示例性实施例的数据处理方法获取与预定时间段内的各个预定时间间隔相应的关联数据,其中,在关联数据中包含地图中的具有关联关系的两个对象的坐标位置。根据示例性实施例,地图可以是中国行政区域地图,而对象可以是包含在中国行政区域地图中的城市。
在本实施例中,可从外部或内部存储器中的数据提取出关联数据。例如,当人群在两个地点之间移动、两个地点之间存在物流快递、分别位于两个城市里的朋友之间存在社交关联(例如,红包分享、即时通讯))时,产生的数据是关联数据。可通过关联数据获得相互之间存在关联关系的对象的数量(即,与其它对象相互关联的对象的数量)以及与其它对象相互关联的关联数量(下文中,简称关联数量)。例如,如果关联数据中包含用户从对象A移动到对象B的信息,则可得出:关联对象为对象A和对象B,并且关联数量为1,因此,可从关联数据中提取出与对象相关的信息,以飞线特效为例,可从关联数据中提取出包括发出飞线的城市及其发出飞线的数量的信息,这将用于计算下文中将描述的筛选参数。
此外,根据示例性实施例,预定时间段内的各个预定时间间隔可以是等间隔的时间间隔或者不等间隔的时间间隔。
在步骤S120,根据关联数据中的对象在地图上呈现的分布特征,确定与各个预定时间间隔相应的关联数据的筛选值。可选地,通过关联数据中的对象在地图上呈现的分布特征来确定关联数据的筛选参数,基于所述筛选参数,计算与每个所述预定时间间隔相应的关联数据的筛选值。
根据示例性实施例,所述筛选参数与关联数据中包含的每个对象的坐标位置以及每个对象与其它对象相互关联的关联数量相关。可选地,所述筛选参数可通过覆盖度、信息熵和覆盖面积比中的任意一个或任意两个以上相乘而获得。优选地,所述筛选参数可通过覆盖度、信息熵和覆盖面积比三者相乘而获得。
具体来说,覆盖度用来衡量关联数据中包含的对象的数量,在预定时间间隔上的覆盖度如下面的等式(1)所示:
C=Ni/N (1)
其中,N表示所有对象的数量,Ni表示在每个预定时间间隔上的关联数据中包含的对象的数量。此外,可通过与各个预定时间间隔相应的关联数据获得在各个预定时间间隔上的Ni,从而获得在各个预定时间间隔上的覆盖度C。以飞线特效作为可视化效果为例,N表示所有城市的数量,Ni表示在预定时间间隔上的关联数据中包含的城市的数量(即,发出飞线的城市的数量)。
如附图3所示,可按照以上等式(1)计算得出,左图中的覆盖度为1,而右图中的覆盖度为0.14。覆盖度越高,飞线效果越好,因此,左图的飞线效果会优于右图的飞线效果。
信息熵表示数据的分散程度或者说集中程度,信息熵越大,说明关联数据中包含的各个对象的分布越均匀,可视化效果越理想,可通过以下等式(2)和(3)来计算在预定时间间隔上的信息熵:
其中,N表示所有对象的数量,Si表示在每个预定时间间隔上的每个对象的关联数量,Pi表示在每个预定时间间隔上的每个对象的关联数量占所有对象的关联数量的百分比。H表示在预定时间间隔上的信息熵。此外,通过与各个预定时间间隔相应的关联数据获得在各个预定时间间隔上的Si和Pi,从而获得在各个预定时间间隔上的信息熵H。以飞线特效作为可视化效果为例,在预定时间间隔上,N表示所有城市的数量,Si表示每个城市发出的飞线数量,Pi表示每个城市发出的飞线数量占所有城市发出的飞线数量的百分比。
可选地,为了减少计算量,可基于关联数据中包含的对象而非所有对象来计算信息熵H。
图4示出了不同飞线特效的信息熵的示意图,图4中的左图和右图均包括100条飞线,按照以上等式(2)和(3)计算得出,左图的信息熵大于右边的信息熵。从视觉上可以看出,相较于信息熵小的右图,信息熵大的左图的飞线在各个城市的分布更均匀,飞线效果也更理想。
覆盖面积比可衡量所有对象所围成的区域的面积,面积越大,则可视化效果越理想。可通过以下等式(4)来计算在预定时间间隔上的覆盖面积比:
其中,ai表示在预定时间间隔上的由关联数据中包含的对象所围成的区域的最大面积,a表示所有对象所围成的区域的面积,以飞线特效作为可视化效果为例,ai表示在预定时间间隔上的由发出飞线的城市所围成的区域的最大面积,a表示所有城市所围成的区域的最大面积,通常基于发出飞线的城市的经纬度或坐标位置来计算,例如,覆盖面积按照不规则多边形来计算:把由对象所围成的多边形转化为多个三角形,由于每个对象的坐标位置已知,则每个三角形的坐标位置已知,因此可通过计算每个三角形的面积来得到多边形的面积。此外,通过与各个预定时间间隔相应的关联数据获得在各个预定时间间隔上的ai,从而获得在各个预定时间间隔上的覆盖面积比R。
优选地,基于以上获得的覆盖度、信息熵和覆盖面积比,通过以下等式(5)来计算筛选参数:
F=C×H×R (5)
继续参照图1,在步骤S130,基于所述筛选值,对与各个预定时间间隔相应的关联数据进行筛选以确定在所述预定时间段内用于呈现在地图上的关联数据。
例如,基于确定的筛选值,利用以下等式(6)来获得在预定时间段内的最大筛选值:
其中,N表示在预定时间段内包括N个预定时间间隔,Fi表示在第i个预定时间间隔上获得的筛选值,F*表示筛选出的在预定时间段内的筛选值。
可选地,使用与最大筛选值相应的关联数据在地图上显示可视化效果。
可选地,使用与最大筛选值相应的关联数据在地图上显示飞线特效。
由此可以看出,根据本发明的示例性实施例的数据处理方法通过利用关联数据中包含的对象的分布特征来对关联数据进行合理筛选,避免了通过简单的阈值限定或随机采样造成的数据损失,从而能够更加均衡、有效地呈现可视化效果。此外,以上处理方式均可以通过计算机软件或硬件来实现,避免了由于个人主观差异而造成的呈现结果不同,从而在提高处理速度的同时增强稳定性,并节省了大量的人力和物力。
图2示出根据本发明的另一示例性实施例的数据处理方法的流程图。
参照图2,步骤S210至步骤S230与已描述的图1中的步骤110至步骤130相应,因此为了简明和清楚将省略对重复部分的描述。
参照图2,在步骤S240,对在步骤S230中确定的关联数据进行进一步处理,具体来说,基于活跃度,对确定的关联数据中包含的关联数量进行调整,使得总关联数量随着活跃度不同而不同。根据示例性实施例,可通过参与活动的用户的数量来表示活跃度。
具体来说,利用以下等式(7)来获得在预定时间段内的总关联数量:
其中,PV表示当前的活跃度,PVmax和PVmin分别表示活跃度PV的上限值和下限值,Pmax和Pmin分别是关联数据中包含的关联数量的上限值和下限值,PVmax、PVmin、Pmax和Pmin可被预先存储在存储器中。P’可表示在预定时间段内的确定的关联数据中的总关联数量。以飞线特效作为可视化效果为例,Pmax和Pmin分别表示预定的飞线数量的上限值和下限值,根据公式(7),可以计算得到当前时间段呈现的总飞线数量P’。
由此可以看出,通过等式(7),总关联数量可与活跃度成正比,从而能够从视觉上更明显地体现出用户的活跃度。
根据示例性实施例,基于处理后的数据,产生可视化效果。
可选地,使用处理后的数据在地图上显示飞线特效。
本申请实施例提供还提供一种设备,可以实现上述的方法步骤,且该设备可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为逻辑意义上的设备,是通过服务器的CPU(Central Process Unit,中央处理器)将相应的计算机程序指令读取到内存中运行形成的。
图5示出根据本发明的示例性实施例的数据处理设备500的框图。
图5中的数据处理设备500仅示出了与本示例性实施例相关的组件。因此,本领域普通技术人员将理解:在数据处理装备500中还包括除了图5中示出的组件之外的通用组件。
参照图5,根据本发明的示例性实施例的数据处理设备500包括获取单元510、确定单元520和筛选单元530。
具体来说,获取单元510获取与在预定时间段内的各个预定时间间隔相应的关联数据,其中,在所述关联数据中包含地图中的具有关联关系的两个对象的坐标位置。
确定单元520根据关联数据中的对象在地图上呈现的分布特征来确定与各个预定时间间隔相应的关联数据的筛选值。
筛选单元530基于所述筛选值,对与各个预定时间间隔相应的关联数据进行筛选以确定在所述预定时间段内用于呈现在地图上的关联数据。
虽然并未示出,但是根据本发明的示例性实施例的数据处理设备500还可包括显示单元,显示单元可显示可视化效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。