一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于环约束和应力模型的图可视化方法及系统与流程

2021-10-24 07:33:00 来源:中国专利 TAG:可视化 应力 约束 模型 公开


1.本公开属于数据可视化技术领域,尤其涉及基于环约束和应力模型的图可视化方法及系统。


背景技术:

2.本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
3.在数据可视化技术中,个体中心网络可视化在近几年收到了广泛的关注。个体中心网络在社交网络的研究中具有重要意义,尤其是需要研究社交网络中的重要人物的关系时具有关键作用。当研究者不研究网络的整体,而是侧重于研究个体的社交性质,个体中心网络的作用就比较明显了。比如常见的用户关系拓扑图,就都是个体中心网络。通过观察节点的个体中心网络,可以着重研究特定节点的一些性质。
4.已有的个体中心网络可视化方法有很多,其中最主要的类型是径向布局。径向布局是指将中心节点放在布局中心,其它的邻居节点根据到中心距离远近分出层次,每一层像雷达一样分布在对应的圆形上的可视化方法。径向布局的种类有很多,下面选择一部分最有影响力的方法简单进行介绍:
5.最早的径向布局即是将中心节点放在布局中心,然后以中心节点为圆心画出若干同心圆,然后根据叶子节点均匀分布的原则从外到内将所有邻居节点均匀分布在其对应层次的同心圆上。这种方法应用广泛,易于实现,至今仍是具有很强影响力的图布局方法。
6.之后有一些学者提出了类似的径向布局方法,比如以父节点为中心的径向布局,不再将节点放在根据中心生成的同心圆上,而是以每个父亲节点重新生成一个圆,把对应的子节点均匀布局在新的圆上。还有与传统径向布局相反,从内到外进行均匀布局的方法。
7.最近几年,研究者们又尝试将其它图布局模型加入径向布局中,希望获得更好的布局效果。比如用力导向方法让径向布局中每一层的节点实现均匀排列;或者使用应力模型替代径向布局,并加强中心节点到每个点的权重以体现邻居节点到中心节点的层次。
8.这些已有的径向布局方法有一些只允许节点布局在指定的圆上,这就导致布局结果只能在一维空间呈现,节点之间的聚类结构难以表现。还有一些不限制节点必须在指定的圆上,但是没有严格规定到中心节点同样距离的同层节点必须在同一范围,这就容易让用户误解这些节点与中心节点的关系远近。目前还没有一种方法能够既保证同一层的节点在同一范围内,又能展示节点间的聚类结构。


技术实现要素:

9.为克服上述现有技术的不足,本公开提供了基于环约束和应力模型的图可视化方法,能够同时满足个体中心网络可视化的两个需求:保证到中心节点距离相同的邻居节点布局在同一范围内,不会让用户产生误解;同时尽量展示节点之间的连接关系,尤其是用户比较关心的聚类结构。
10.为实现上述目的,本公开的一个或多个实施例提供了如下技术方案:
11.第一方面,公开了基于环约束和应力模型的图可视化方法,包括:
12.接收图数据,获得所述图数据的初始布局;
13.接收针对所述图数据的初始布局所选择的感兴趣节点及设定的邻居范围,根据所述感兴趣节点选择感兴趣的子图;
14.针对所述子图基于带有环约束的应力模型进行布局优化;
15.识别优化结果中满足设定条件的边和端点、端点和端点,边交叉以及边长过长的边,通过调整相关参数对布局进行调整,获得可视化布局结果。
16.作为一种实施例子,所述图数据的初始布局可以为对可视化结果中点的位置进行调整得到的结果。
17.作为一种实施例子,所述选择感兴趣的子图时,点击,拉索或者输入节点id的形式选择一个感兴趣的节点作为中心节点。然后输入一个期望的邻居范围,得到一个感兴趣的区域作为感兴趣的子图。
18.作为一种实施例子,针对所述子图基于带有环约束的应力模型进行布局优化时,通过向量约束控制节点与中心的相对位置,并通过不等式条件约束将节点控制在指定的范围内。
19.作为一种实施例子,使用拉格朗日乘子法求解带有环约束的应力模型使得将同层节点放在同一个圆环内,既保证同层节点一定在对应的范围内,又能够保持节点间的距离关系。
20.作为一种实施例子,通过调整相关参数对布局进行调整,包括:
21.通过调整中心点到其它节点的向量方向使结果均匀;
22.通过增加聚类约束使节点聚集;
23.通过调整每一层的半径优化空间分配。
24.作为一种实施例子,通过调整中心点到其它节点的向量方向使结果均匀的过程中,通过检测布局结果中是否存在不利于用户理解的情况,进一步优化调整布局结果。
25.作为进一步的技术方案,在进一步优化调整布局结果时:
26.当检测出不同层节点之间的连接边过长,且内层节点到外层节点的向量与内层节点到中心的向量夹角为锐角时,通过调整中心到外层节点的向量方向消除长边;
27.当检测到边交叉时,通过从内到外对每一层节点进行均匀分布,来调整节点的均匀程度。
28.作为进一步的技术方案,通过调整每一层的半径优化空间分配时:通过调整不同层的层宽来优化每一层节点的空间分配。
29.第二方面,公开了基于环约束和应力模型的图可视化系统,包括:
30.初始布局模块,被配置为:接收图数据,获得所述图数据的初始布局;
31.感兴趣的子图选择模块,被配置为:接收针对所述图数据的初始布局所选择的感兴趣节点及设定的邻居范围,根据所述感兴趣节点选择感兴趣的子图,子图即个体中心网络;
32.个体中心网络优化布局模块,被配置为:针对所述子图基于带有环约束的应力模型进行布局优化;
33.可视化结果优化模块被配置为:识别优化结果中满足设定条件的边和端点、端点和端点,边交叉以及边长过长的边,通过调整相关参数对布局进行调整,获得可视化布局结果。
34.以上一个或多个技术方案存在以下有益效果:
35.1、本发明的方法既能准确表达个体中心网络中节点的层次信息,又能保持网络布局中的聚类结构,相比传统径向布局能够更好地展示个体中心网络的结构信息。
36.2、本发明相比传统径向布局算法,融合了更灵活的交互手段,可读性更高。
37.本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
38.构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
39.图1为本发明基于环约束和应力模型的图可视化方法流程图;
40.图2(a)和图2(b)为与本发明进行对比的图布局结果,图2(a)由于只能在圆上布局丢失了聚类结构,图2(b)由于没有限制层次产生了节点位置上的误解;
41.图2(c)为本发明所产生结果的示例;
42.图3为本发明借助传统径向布局结果对布局结果进行均匀化的示例;
43.图4(a)

图4(c)分别为本发明调整长边、夹角小于设定阈值的趋势相同的边,出现重叠的边和端点、边和边,以及对用户选定的节点进行聚集的示意图;
44.图5为本发明通过调整每层宽度来优化布局的示意图。
具体实施方式
45.应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
46.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
47.在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
48.实施例一
49.正如背景技术中所述,现有径向布局方法得到的可视化结果中,难以满足既严格规定到中心节点同样距离的同层节点必须在同一范围,不让用户误解这些节点与中心节点的关系,又能呈现节点之间聚类结构的需求。为了同时满足这两个用户需求,本实施例提供了一种基于环约束和应力模型的图可视化方法,针对用户选出的中心节点和相应的局部结构,得到一个既严格规定节点到中心节点的范围,又能展现节点之间聚类结构的布局结果。可视化时,可以用任意语言或框架进行渲染,比如js,qt等。一般用圆形表示点,用一条线表示边,也可以根据需要给节点添加标签,例如图2是使用标签表示的,图3是使用一个圆形表
示的。
50.需要说明的是,本发明中的图指节点连接图,节点表示一种实体,比如人、物、组织等,一般在屏幕空间中用一个圆形表示。如图1所示,所述方法包括以下步骤:
51.步骤1:接收图数据,获取所述图数据的一个初始图布局结果。
52.其中,初始图布局结果可以是基于任意图布局方法生成的,现有图布局方法包括力导向布局、应力布局和层次布局等等,在此不做限定,也可以是基于现有图布局方法生成后,经由用户自定义调整的得到的,例如,基于现有一种或多种图布局算法进行可视化后,用户对可视化结果中点的位置进行调整得到的结果。
53.步骤2:接收用户针对所述初始图布局可视化结果选择的一个感兴趣节点和用户规定的邻居范围,根据所述感兴趣节点选择出一个感兴趣的子图。
54.其中,用户可以通过各种交互方法,例如点击,拉索或者输入节点id的形式选择一个感兴趣的节点作为中心节点。然后用户输入一个期望的邻居范围,例如选择到中心节点最短拓扑距离小于n的节点,得到一个感兴趣的区域,作为本发明的布局方法的输入。为了简洁,称所有到中心节点最短拓扑距离相同的节点为同层节点;到中心节点最短路径距离为k的节点为第k层节点。
55.图2(a)和图2(b)为与本发明进行对比的图布局结果。分别使用传统的径向布局算法和基于应力模型的径向布局生成了图2(a)和图2(b)。可以看到,图2(a)由于只能在圆上布局丢失了聚类结构,图2(b)由于没有限制层次产生了节点位置上的误解。本公开的方法能兼顾层次保持和聚类保持,以下是本公开的具体布局方法。
56.步骤3:针对所述子图进行布局。
57.由于传统的径向布局不能同时满足准确表达层次和保持聚类结构的需求,因此需要通过新的算法在对节点准确分层的情况下保持网络布局的局部结构,对结果进行优化。
58.本发明使用如下优化方程求解带有环约束的应力模型:
[0059][0060]
s.t.||r
k
‑1||2≤||x
c

x
k,i
||2≤||r
k
||2,i∈ω
k
[0061]
其中,x代表最终的优化结果中每个点的坐标集合;k代表层数序号,r
k
‑1和r
k
代表第k

1和第k层的半径,r
k
默认大小为k,r
k
‑1和r
k
之间的差值决定了第k层节点可用的布局空间大小,用户可以根据需要自行调整;i,j代表节点的编号,x
i
和x
j
代表任意两点i和j的坐标;点x
k,i
代表第k层上点i的坐标;x
c
表示用户选中的中心点坐标;e
k,i
代表点x
c
到点x
k,i
的向量的方向;d
ij
代表点i和点j之间的最短路径距离,使用这一距离代表节点到中心的理想距离,可以使用多源最短路径算法根据图数据计算得出。和是用户可控制的参数,值默认为用户可以通过增大让节点到中心的距离更接近r
k
,增大让结果中的聚类结构更明显。ω表示所有点的集合,ω
k
表示所有第k层的点的集合,l表示用户输入的最大层数,一般是用户所选择的所有邻居点到中心点最短路径距离中的最大值。
[0062]
这个方法的原理是通过第一项的向量约束公式(1)控制节点与中心的相对位置,并通过不等式条件约束将节点控制在指定的范围内。具体来讲,若点i属于层次k,则点i到中心的距离则必须处在r
k
‑1到r
k
之间,从而保证节点层次的严格表达。同时,由于第二项的应力约束公式(2)要求节点间的距离尽量保持最短路距离,节点间的相对关系远近能够得以保持,也就保证了最终的布局结果能够展现出聚类效果。
[0063]
通过解以上带有条件约束的优化方程,可以既保证同层节点一定在对应的范围内,又能够尽量保持节点间的距离关系。使用拉格朗日乘子法求解这一带不等式条件的优化方程,得到的结果见图2(c)。可以看出,本发明的结果将同层节点放在同一个圆环内,保证了用户不会对节点的层次产生误解,同时还最大程度上保留了用户感兴趣的聚类结构。
[0064]
步骤4:识别优化结果中的边和节点、节点和节点之间的距离是否小于设定阈值,是否存在边交叉,以及边的长度是否过长,并通过调整相关参数对布局进行调整,增加布局结果的可读性。
[0065]
本发明可以通过改变公式中的相关参数,对最终布局结果中点的坐标进行调整,使得结果更易于理解,减少容易引发用户歧义的结构。具体分为三种情况:
[0066]
(1)通过调整中心点到其它节点的向量方向使结果均匀
[0067]
由于应力模型不能保证布局的均匀,而传统的径向布局考虑了均匀性,因此本发明通过参考径向布局的结果调整向量约束,来满足布局结果的均匀性需求。如图3所示,本发明可以通过调整中心到节点的向量方向调整布局结果中每个节点的位置,使布局结果变得更加均匀,增加可读性。图3左上角的结果是初始的结果,本发明首先将每个点沿中心点到每个点的向量方向将它们映射到对应层的外边缘上,如图3右上角所示。然后本发明通过调整中心点到每个点的向量方向,将它们排列到传统径向布局的布局结果对应的位置上从而使结果变得均匀,如图3左下角所示。按照这个向量方向进行优化求解,最终就能得到图3右下角这一更加均匀的结果。
[0068]
另外,本发明还可以通过检测布局结果中是否存在不利于用户理解的情况,进一步优化调整布局结果:
[0069]
当本发明检测出不同层节点之间的连接边过长,且内层节点到外层节点的向量与内层节点到中心的向量夹角为锐角时,可以通过调整中心到外层节点的向量方向消除长边。如图4中(a)所示,本发明通过调整中心点到p点的向量方向,将p点调整到沿p点到其连接的内层节点的向量延长线与该层外边缘的交点处,从而达到消除长边的目的。
[0070]
传统的径向布局有时仍然不能满足均匀性的需要,还需要本发明进行进一步的调整。例如,当检测到边交叉时,本发明可以通过从内到外对每一层节点进行均匀分布,来调整节点的均匀程度。如图4(b)所示,通过调整向量方向对第一层进行均匀后,边交叉和节点之间距离小于阈值的问题都得到了解决。
[0071]
(2)通过增加聚类约束使节点聚集
[0072]
当用户希望根据需求将不相连的节点聚集在一起时,可以加入如下约束项使节点聚集:
[0073]
[0074]
其中ω
c
是用户选择的需要聚集的节点的集合,是用户可调整的参数,其它的符号含义与之前公式中的含义相同。通过限制这些用户选择的节点间的距离,可以使这些节点的位置尽可能接近,从而达到节点聚集的作用。如图4(c)所示,图4(c)左边是调整前的布局结果,灰色的点是用户选择的需要聚集的点,图4(c)右边是调整后的结果。
[0075]
(3)通过调整每一层的半径优化空间分配
[0076]
可以通过调整不同层的层宽r
k
来优化每一层节点的空间分配。例如,本发明通过让每一层的面积与该层节点的数量成正比来调整空间分配,使得点多的层中有更多的面积用于展示聚类结构。另外,本发明还可以单独放大用户最关心的一层的层宽,帮助用户更好地理解最重要的一部分节点。如图5所示,图5左边是调整前的结果,图5中间是根据节点数量调整层宽后的结果,可以看出黄色的聚类结构更加清晰了。图5右边是在图5中间的基础上对第一层进行放大后的结果,由于有了更多的空间,用户可以选择显示一层节点的属性统计图,从而更好地了解这些重要的节点。
[0077]
本实施例的所述方法可以通过主流的可视化编程语言进行实现。由于解最优化方程速度较慢,可以使用cuda编写gpu并行程序进行加速。通过测试证明了本发明能较好地帮助用户观察到个体中心网络中每个节点与中心的关系远近和聚类关系,能让用户更好地理解数据。
[0078]
实施例二
[0079]
本实施例的目的是提供一种计算装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
[0080]
实施例三
[0081]
本实施例的目的是提供一种计算机可读存储介质。
[0082]
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时执行上述方法的步骤。
[0083]
实施例四
[0084]
本实施例的目的是提供基于环约束和应力模型的图可视化系统,包括:
[0085]
初始布局模块,被配置为:接收图数据,获得所述图数据的初始布局;
[0086]
感兴趣的子图选择模块,被配置为:接收针对所述图数据的初始布局所选择的感兴趣节点及设定的邻居范围,根据所述感兴趣节点选择感兴趣的子图,子图即个体中心网络;
[0087]
个体中心网络优化布局模块,被配置为:针对所述子图基于带有环约束的应力模型进行布局优化;
[0088]
可视化结果优化模块被配置为:识别优化结果中满足设定条件的边和端点、端点和端点,边交叉以及边长过长的边,通过调整相关参数对布局进行调整,获得可视化布局结果。
[0089]
以上实施例二、三和四的装置中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。术语“计算机可读存储介质”应该理解为包括一个或多个指令集的单个介质或多个介质;还应当被理解为包括任何介质,所述任何介质能够存储、编码或承载用于由处理器执行的指令集并使处理器执行本公开中的任一方法。
[0090]
本领域技术人员应该明白,上述本公开的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本公开不限制于任何特定的硬件和软件的结合。
[0091]
以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
[0092]
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜