实施例1
本申请实施例提供了一种数据关联关系的展示方法,用以提供一种对关联数据之间的关联关系进行展示的方案。
本申请实施例提供的数据关联关系的展示方法的执行主体可以但不限于为手机、平板电脑、个人电脑(Personal Computer,PC)以及智能电视等终端中的至少一种。此外,该方法的执行主体,也可以是终端设备上安装的应用程序本身,如浏览器等。
所述的执行主体并不构成对本申请的限定,为便于描述,下文以该方法的执行主体为网页浏览器为例,对该方法的实施方式进行介绍。可以理解,该方法的执行主体为网页浏览器只是一种示例性的说明,并不应理解为对该方法的限定。
该方法的具体实现流程示意图如图1所示,主要包括下述步骤:
步骤11,根据关联数据,生成用于展示关联数据的基本展示模型;
本申请实施例从用户需求出发,考虑到一方面,用户会希望对关联数据进行展示,以便获知具体的关联数据;另一方面,用户还会希望对关联数据的关联关系进行展示,以便获知具体是哪些关联数据之间存在关联。因此,本申请实施例中,可以根据关联数据,生成用于展示关联数据的基本展示模型,以满足用户希望对关联数据进行展示的需求。针对所述关联关系,本申请实施例中可以用下文所述的“关联特征”进行表示,“关联特征”的生成方式详见下文,此处不再赘述。
其中,所述基本展示模型,是用于对数据进行可视化展示的模型;可以是二维的模型(如,扇形图以及柱状图等等),也可以是三维的模型(如,三维球体模型等等)。
目前,随着全球化程度的不断加深,不同公司(或者个人)的业务、文化以及日常的交流也越来越的趋于国际化。在这种情况下,产生的关联数据往往可以通过三维立体(Three-Dimensional,3D)的地球模型进行展示。
因此,在一种实施方式中,用于对上述情况下产生的关联数据进行展示的基本展示模型可以为3D模型,且所述3D模型可以为地球的3D模型。相应的,所述关联数据可以为表示地理位置的数据。
需要说明的是,在一种实施方式中,步骤11的具体实现方式可以包括:根据关联数据的数据类型,确定基本展示模型的类型;根据确定的基本展示模型的类型,获取用于生成基本展示模型的所述模型参数;根据所述模型参数和所述关联数据,生成基本展示模型。例如,假设以关联数据分别为地球上两个城市的位置坐标为例,则根据所述关联数据的数据类型(位置坐标),可以确定用于关联数据的基本展示模型的类型可以为“地球模型”,进而可以获取生成地球模型所需的模型参数,从而可以根据所述两个城市的位置坐标数据、以及生成地球模型所需的模型参数,生成用于展示的所述关联数据的基本展示模型。其中,生成的基本展示模型包含对应于所述两个城市的位置坐标数据的模型特征,该模型特征比如可以是地球模型上的位置点。本申请实施例中,可以预先保存不同基本展示模型的类型与相应的模型参数的映射关系,从而在确定出基本展示模型的类型后,可以根据该映射关系,获取相应的模型参数。
针对地球模型而言,现有技术中,往往可以采用webGL技术,生成可展示在网页上的3D地球模型。采用webGL技术,浏览器可以直接通过HTML脚本实现网页三维立体模型的制作,而不需要任何其他浏览器插件支持。其中,所述WebGL技术已经是较成熟的相关技术,因而关于如何通过WebGL技术实现网页三维立体模型的绘制,此处不再赘述。
步骤12,从基本展示模型包含的模型特征中,确定与所述关联数据对应的模型特征;
需要说明的是,用于展示关联数据的基本展示模型是根据关联数据生成的,因而所述基本展示模型往往具有的与所述关联数据对应的模型特征,则关联数据可以通过基本展示模型上、与所述关联数据对应的模型特征来表示。
比如,以基本展示模型为柱状图为例,所述柱状图中与关联数据对应的模型特征为柱状图中柱体的高度;则可以通过在柱状图中展示不同高度的柱体,以达到展示不同关联数据的目的。还比如,以基本展示模型为球体模型为例,所述球体模型中与关联数据对应的模型特征为球面上的位置点。
假设,通过执行步骤11,生成的基本展示模型为地球的3D模型,则步骤12的具体实现方式,可以包括:从所述三维立体地球模型包含的位置点中,确定与所述关联数据对应的位置点,并确定确定的位置点在所述三维立体模型中的位置信息。
例如,以某航空公司飞行航线的出发地数据与目的地的数据为例,假设,该航空公司的某飞行航线为“北京——纽约”,出发地数据为“北京地理坐标”,目的地数据为“纽约地理坐标”,为了可以在3D地球模型上展示该航线的出发地以及目的地,可以根据所述出发地数据以及目的地数据,在所述3D地球模型上,确定“北京地理坐标”以及“纽约地理坐标”对应的位置点。
步骤13,根据确定的模型特征,生成用于表示所述关联数据之间关联关系的关联特征;
其中,所述关联特征可以是指,用于表示关联数据之间关联关系的特征。比如,用于连接关联数据的线段,为用于表示所述关联数据之间关联关系的特征。
在一种实施方式中,当通过步骤11生成的基本展示模型为3D地球模型,通过步骤12确定的所述3D地球模型包含的模型特征中,与所述关联数据对应的模型特征为3D地球球面上的位置点的位置信息时,根据确定的模型特征,生成用于表示所述关联数据之间关联关系的关联特征,具体可以包括:根据确定的位置点在所述3D地球模型中的位置信息,生成用于作为曲线绘制基准的各基准点的位置信息。
为了可以更明显的在所述3D地球模型上,展示出表示所述关联数据之间关联关系的关联特征,在一种实施方式中,本申请实施例生成的用于作为曲线绘制基准的各基准点的位置满足:位于所述三维立体地球模型外部。
例如,仍以某航空公司飞行航线的出发地数据与目的地数据为关联数据为例,假设,该航空公司的一条飞行航线为“北京——纽约”,出发地数据为“北京地理坐标”,目的地数据为“纽约地理坐标”,通过执行步骤13生成的关联特征,可以为表示所述出发地数据与目的地数据关联关系的曲线。
由于在现实世界中,飞机的飞行高度往往是有一定的限制,因而真实飞机的飞行的航线距离地球球面的距离往往是固定范围的。因此,在3D地球模型上生成的表示所述关联数据之间关联关系的关联特征,往往具有一定的限制条件,在一种实施方式中,本申请实施例可以通过设置最大距离,以生成的满足限制条件的、表示关联数据之间关联关系的关联特征,方法具体包括:设置最大距离;根据设置的最大距离,确定用于作为曲线绘制基准的基准点的位置信息。
考虑到连接球面上任一两点、且位于球体外部的曲线的长度,与连接所述连点的、该曲线的弦长有关,因此,在一种实施方式中,设置所述最大距离的具体方法可以包括:确定与所述关联数据对应的位置点之间的弦长;判断所述弦长是否小于所述3D地球模型的半径;当判断结果为是时,根据所述弦长和第一预设倍数,确定所述最大距离;当判断结果为否时,根据所述半径和第二预设倍数,确定所述最大距离。
比如,仍以上述航空公司航线的出发地数据与目的地数据为例,假设该航空公司的航线分别为:“北京——东京”、“北京——纽约”,通过执行步骤12,在3D地球模型上确定“北京”、“东京”以及“纽约”分别对应的位置点,并确定连接上述“北京”、“东京”以及“纽约”分别对应的位置点弦的长度(L)。
假设确定北京对应的位置点与东京对应的位置点的弦长L1小于3D地球模型的半径(R),此时可以设置第二预设倍数为:0.2;则可以设置连接北京与东京在所述3D地球模型上的位置点的连接曲线距离球面的最大距离为:0.2L。
假设确定北京对应的位置点与纽约对应的位置点的弦长L2大于3D地球模型的半径R,此时可以设置第一预设倍数为:0.5;则可以设置连接北京与纽约在所述3D地球模型上的位置点的连接曲线距离球面的最大距离为:0.5R。从而可以保证,连接3D地球模型上表示北京与东京的两点的曲线距离球面的高度不超过设置的高度限制范围。
目前,人们在使用计算机绘图时,往往是通过操作鼠标来绘制线条的路径,而通过鼠标进行绘制往往很难到达手绘的效果。为了可以弥补通过操作鼠标进行绘制出现的上述问题,人们发明了贝塞尔曲线,作为计算机绘图的基本工具。
所述贝塞尔曲线(Bézier curve),是应用于二维图形应用程序的数学曲线。现有绘图软件可以通过贝塞尔曲线,来精确的绘制出曲线。贝塞尔曲线是由线段以及节点组成的,可以通过控制曲线上的四个节点(起点、终点以及两个控制节点)来创造、编辑图形。如图2所示,其中起重要作用的是位于曲线中央的控制线。控制线是虚拟的,中间与贝塞尔曲线交叉(交叉点又称为中间点),两端是控制节点。移动两端的控制节点时贝塞尔曲线改变曲线的曲率(弯曲的程度);移动中间点(也就是移动虚拟的控制线)时,贝塞尔曲线在起始节点和终止节点锁定的情况下做均匀移动;而所述贝塞尔曲线可以通过贝塞尔曲线公式(包括线性贝塞尔曲线公式、二次贝塞尔曲线公式以及三次贝塞尔曲线公式),以稳定的数值求出。
其中,所述三次贝塞尔曲线公式,可以是通过如图3所示的四个点P0、P1、P2、P3在三维空间中定义了三次贝塞尔曲线。曲线起始于P0走向P1,并从P2的方向来到P3。三次贝塞尔曲线公式一般如下式[1]所示:
B(t)=P0(1-t)3+3P1t(1-t)2+3P2t2(1-t)+P3t3 [1]
其中,P0与P3表示该曲线的起点与终点,P1与P2表示该曲线的两个控制点,B(t)为用于作为所述曲线绘制基准的基准点距离球面的距离,t为所述三次贝塞尔曲线公式中的自变量,假设,所述基准点的个数为N,设定遍历过的基准点的个数为i,则t=i/N。
基于上述情况,在一种实施方式中,可以通过三次贝塞尔曲线公式,并根据设置的最大距离,确定用于作为曲线绘制基准的基准点的位置信息,具体包括:设置三次贝塞尔曲线公式中的起点与终点的值等于0;根据所述最大距离,分别设置三次贝塞尔曲线公式中的两个控制点的值;根据三次贝塞尔曲线公式,以及与所述关联数据对应的位置点在所述三维立体模型中的位置信息,计算所述基准点的位置信息。
需要说明的是,因为所述曲线是连接球面上、与关联数据对应的位置点的曲线,所以该曲线的起点与终点为3D地球表面上的点;因此,可以设置所述三次贝塞尔曲线公式中P0与P3的值等于0;还可以设置P1为所述最大距离(后称为MaxDesc)的二分之一,设置P2为所述最大距离MaxDesc;则可以将公式[1]转换为下述公式[2]:
B(t)=3*MaxDesc/2*i/N*(1-i/N)2+3*MaxDesc*(i/N)2*(1-i/N) [2]
并根据该公式,分别计算用于绘制所述曲线上的各基准点距离3D地球表面的距离,从而确定各基准点的位置信息。
还需要说明的是,关联数据之间很可能并不仅仅只有一种关联关系。比如,A国向B国出口货物,则A国与B国之间存在的关联关系包括:“A国——B国”的出口关联关系,以及“B国——A国”的进口关联关系;还比如,某航空公司在“北京”与“纽约”之间有两条航线,分别为“北京——纽约”以及“纽约——北京”,上述两条航线分别表示出发地为“北京”以及出发地为“纽约”。为了可以在所述3D地球模型上,将相同的关联数据之间不同的关联关系进行区别展示,在一种实施方式中,本申请实施例可以通过分别设置三次贝塞尔曲线公式中的两个控制点(P1与P2)的值,以改变表述所述关联数据之间不同关联关系的曲线的形状,具体可以包括以下两种情况:
情况1:设置靠近终点的控制点的值等于所述距离最大值,并设置靠近起点的控制点的值小于靠近终点的控制点的值;即可以设置P2=MaxDesc,P1=MaxDesc/2。
情况2:设置靠近起点的控制点的值等于所述距离最大值,并设置靠近终点的控制点的值小于靠近起点的控制点的值;即可以设置P1=MaxDesc,P2=MaxDesc/2。
例如,以航空公司在“北京”与“纽约”之间的两条航线为例,可以设置P1=MaxDesc,P2=MaxDesc/2,并根据三次贝塞尔曲线公式,计算出用于绘制表示“北京”与“纽约”之间关联关系(出发地:北京——目的地:纽约)的曲线的基准点的位置信息;并可以设置P1=MaxDesc/2,P2=MaxDesc,根据三次贝塞尔曲线公式,计算出用于绘制表示“北京”与“纽约”关联关系(出发地:纽约——目的地:北京)的曲线的基准点的位置信息。通过这样的方式,以使得在3D地球表面上绘制出的两条不同的曲线,如图4所示,虚线表示一条从北京至纽约的航线,实线表示一条从纽约至北京航线。
步骤14,将基本展示模型和所述关联特征进行关联展示。
其中,所述关联展示,可以是指将基本展示模型以及关联特征展示在同一界面中。以基本展示模型为3D地球模型为例,以表示关联数据之间关联关系的关联特征为连接关联数据在所述3D地球模型上的位置点的曲线为例,则将所述3D地球模型和所述关联特征进行关联展示的具体方式包括:在3D地球模型上,确定与曲线的两个端点所对应的位置点;按照曲线与所述位置点的相对位置关系,将所述3D地球模型和曲线展示到同一界面中,如图5所示。
或者,所述关联展示,也可以是指根据表示关联数据之间关联关系的关联特征,在基本展示模型上绘制所述关联特征,从而达到将基本展示模型以及关联特征展示在同一界面的目的。例如,仍以基本展示模型为3D地球模型,表示关联数据之间关联关系的关联特征为连接关联数据在所述3D地球模型上的位置点的曲线为例,将所述3D地球模型和所述关联特征进行关联展示展示的具体方式,可以通过指定的绘制工具在所述3D地球模型的球面绘制所述表示关联特征的曲线。例如假设所述3D地球模型是通过3D绘图软件生成的,则可以通过该软件上的曲线绘制工具(如,钢笔工具等),在所述3D地球模型的球面绘制所述表示关联特征的曲线。
需要说明的是,本申请实施例还可以通过不同终端,对基本展示模型和所述关联特征进行关联展示,具体可以包括一下两种:
方式1:将基本展示模型和所述关联特征在本地进行关联展示。
即可以在本地展示设备上进行展示,例如,以本申请实施例的执行主体网页浏览器为例,该浏览器可以生成所述基本展示模型和所述关联特征,并在该浏览器的网页上进行关联展示。
方式2:将基本展示模型和所述关联特征发送给终端设备进行关联展示。
可以将生成的基本展示模型以及所述关联特征发送给其他终端设备,以使得所述终端设备对接收到的基本展示模型和所述关联特征进行关联展示。
需要说明的是,本申请实施例的执行主体也可以是服务器,则服务器可以通过方式2提供的展示方式,将生成的基本展示模型和所述关联特征发送给终端设备进行关联展示。
采用本申请实施例1提供的数据关联关系的展示方法,可以通过关联数据生成用于展示所述关联数据的基本展示模型,从生成的基本展示模型的模型特征中,确定与关联数据对应的模型特征,进而根据确定的模型特征,生成用于表示所述关联数据之间关联关系的关联特征,并将基本展示模型与生成的关联特征进行关联展示,从而可以达到通过基本展示模型以及生成的关联特征,对数据的关联关系进行展示的目的。
实施例2
本申请实施提供了一种数据关联关系的展示装置,用以提供一种对关联数据之间的关联关系进行展示的方案。该装置的具体结构示意图如图6所示,包括基本展示模型生成单元21,模型特征确定单元22,关联特征生成单元23以及展示单元24。
其中,基本展示模型生成单元21,用于根据关联数据,生成用于展示关联数据的基本展示模型。
模型特征确定单元22,用于从所述基本展示模型包含的模型特征中,确定与所述关联数据对应的模型特征。
关联特征生成单元23,用于根据确定的模型特征,生成用于表示所述关联数据之间关联关系的关联特征。
展示单元24,用于将基本展示模型和所述关联特征进行关联展示。
在一种实施方式中,基本展示模型生成单元21,用于:当所述关联数据,为表示地理位置的数据时,根据关联数据,生成用于展示关联数据的三维立体模型。
在一种实施方式中,模型特征确定单元22,用于:当基本展示模型生成单元用于生成地球的三维立体模型时,从所述三维立体地球模型包含的位置点中,确定与所述关联数据对应的位置点,并确定确定的位置点在所述三维立体模型中的位置信息。
在一种实施方式中,关联特征生成单元23,用于:根据确定的位置点在所述三维立体模型中的位置信息,生成用于作为曲线绘制基准的各基准点的位置信息;其中,所述各基准点的位置满足:位于所述三维立体地球模型外部。
在一种实施方式中,关联特征生成单元23,用于:设置最大距离;根据设置的最大距离,确定用于作为曲线绘制基准的基准点的位置信息。
在一种实施方式中,关联特征生成单元23,用于:确定与所述关联数据对应的位置点之间的弦长;判断所述弦长是否小于所述三维立体地球模型的半径;当判断结果为是时,根据所述弦长和第一预设倍数,确定所述最大距离;当判断结果为否时,根据所述半径和第二预设倍数,确定所述最大距离。
在一种实施方式中,关联特征生成单元23,用于:设置三次贝塞尔曲线公式中的起点与终点的值等于0;根据所述最大距离,分别设置三次贝塞尔曲线公式中的两个控制点的值;根据三次贝塞尔曲线公式,以及与所述关联数据对应的位置点在所述三维立体模型中的位置信息,计算所述基准点的位置信息。
在一种实施方式中,关联特征生成单元23,用于:设置靠近终点的控制点的值等于所述距离最大值,并设置靠近起点的控制点的值小于靠近终点的控制点的值;或设置靠近起点的控制点的值等于所述距离最大值,并设置靠近终点的控制点的值小于靠近起点的控制点的值。
在一种实施方式中,展示单元24,用于:将基本展示模型和所述关联特征在本地进行关联展示;或将基本展示模型和所述关联特征发送给终端设备进行关联展示。
在一种实施方式中,所述关联数据,包括下述至少一种:货物调配数据;人员调动数据。
采用本申请实施例2提供的数据关联关系的展示装置,可以通过关联数据生成用于展示所述关联数据的基本展示模型,从生成的基本展示模型的模型特征中,确定与关联数据对应的模型特征,进而根据确定的模型特征,生成用于表示所述关联数据之间关联关系的关联特征,并将基本展示模型与生成的关联特征进行关联展示,从而可以达到通过基本展示模型以及生成的关联特征,对数据的关联关系进行展示的目的。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。