CN117828100A - 一种图谱节点布局方法、装置、设备及存储介质 - Google Patents

一种图谱节点布局方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117828100A
CN117828100A CN202311873816.0A CN202311873816A CN117828100A CN 117828100 A CN117828100 A CN 117828100A CN 202311873816 A CN202311873816 A CN 202311873816A CN 117828100 A CN117828100 A CN 117828100A
Authority
CN
China
Prior art keywords
node
position information
nodes
expanded
layout position
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311873816.0A
Other languages
English (en)
Inventor
徐前伟
郑戎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dt Dream Technology Co Ltd
Original Assignee
Hangzhou Dt Dream Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Dt Dream Technology Co Ltd filed Critical Hangzhou Dt Dream Technology Co Ltd
Priority to CN202311873816.0A priority Critical patent/CN117828100A/zh
Publication of CN117828100A publication Critical patent/CN117828100A/zh
Pending legal-status Critical Current

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

本说明书实施例公开了一种图谱节点布局方法、装置、设备及存储介质。所述方法包括:响应于针对预存储图谱中目标节点的选定操作,确定所述预存储图谱中与所述目标节点关联的关联节点;在所述目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;所述已布局节点集合中的任一节点对应有布局位置信息;基于预设的布局方式,以及所述已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息;将所确定的待扩展节点添加到所述已布局节点集合。

Description

一种图谱节点布局方法、装置、设备及存储介质
技术领域
本说明书实施例涉及大数据技术领域,尤其涉及一种图谱节点布局方法、装置、设备及存储介质。
背景技术
目前存在许多业务需要利用图谱进行分析和显示。图谱例如知识图谱、指标图谱等等,其中可以包含节点以及节点之间的关联关系。例如,可以基于知识图谱分析数据实体之间的关联;也可以显示出指标图谱中的多个指标节点数据,方便用户查看。
而在显示图谱的过程中,只有针对图谱中的所有节点确定布局的位置信息后,才能进行显示。这种确定节点布局位置的方式灵活程度较低。
发明内容
为了解决上述技术问题,本说明书实施例提供了一种图谱节点布局方法、装置、设备及存储介质。技术方案如下所示。
一种图谱节点布局方法,包括:
响应于针对预存储图谱中目标节点的选定操作,确定所述预存储图谱中与所述目标节点关联的关联节点;
在所述目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;所述已布局节点集合中的任一节点对应有布局位置信息;
基于预设的布局方式,以及所述已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息;
将所确定的待扩展节点添加到所述已布局节点集合。
可选地,针对所确定的待扩展节点,确定对应的布局位置信息后,所述方法还包括:更新当前显示的节点,更新后显示的节点中至少包括所确定的待扩展节点。
可选地,所述更新当前显示的节点,包括以下任一项:
按照对应的布局位置信息,显示所确定的待扩展节点;
在当前显示的节点基础上,按照对应的布局位置信息,新增显示所确定的待扩展节点;
按照对应的布局位置信息,显示所述目标节点以及所确定的关联节点;
将所确定的待扩展节点添加到所述已布局节点集合后,按照对应的布局位置信息,显示所述已布局节点集合中的全部节点。
可选地,所述方法还包括:
在显示多个节点的情况下,显示所述预存储图谱中所述多个节点之间的关联关系。
可选地,所述选定操作,包括以下至少一项:
在当前显示的预存储图谱节点中,将基于用户操作选择的节点,选定为目标节点;
在当前显示的预存储图谱节点中,将满足预设选择条件的节点,选定为目标节点;
将所述预存储图谱中满足预设选择条件的节点,选定为目标节点。
可选地,所述针对所确定的待扩展节点,确定对应的布局位置信息,包括:
遍历所确定的待扩展节点;针对当前遍历的待扩展节点,将满足预设显示条件的任一位置信息,确定为对应的布局位置信息;
所述预设显示条件包括:当前遍历的待扩展节点在所述任一位置信息显示的图形,与任一其他节点在对应布局位置信息显示的图形之间,不存在重合部分。
可选地,所述针对所确定的待扩展节点,确定对应的布局位置信息,包括:
确定所述目标节点对应的布局位置信息;
将所述目标节点在对应布局位置信息显示的图形,确定为当前第一区域;
循环执行以下步骤,直到针对所确定的每个待扩展节点确定对应的布局位置信息:
确定包含所述目标布局位置信息的当前第二区域;当前第二区域中包含当前第一区域,且当前第二区域的面积大于当前第一区域的面积;
针对当前第二区域内,当前第一区域外的当前第三区域,遍历当前未确定对应布局位置信息的待扩展节点,将满足预设重合条件的任一位置信息,确定为对应的布局位置信息,直到满足预设遍历停止条件;
将当前第二区域重新确定为当前第一区域。
可选地,所述预设重合条件包括:当前遍历的待扩展节点在所述任一位置信息显示的图形,与任一其他筛选节点在对应布局位置信息显示的图形之间,不存在重合部分;并且,当前遍历的待扩展节点在所述任一位置信息显示的图形,包含在当前第三区域内;
所述其他筛选节点包括:在对应布局位置信息显示的图形,与所述当前第三区域存在重合部分的节点。
可选地,所述确定所述目标节点对应的布局位置信息,包括:
在已布局节点集合未包含所述目标节点的情况下,随机确定所述目标节点对应的布局位置信息;
在已布局节点集合包含所述目标节点的情况下,确定所述目标节点对应的布局位置信息。
可选地,所述针对所确定的待扩展节点,确定对应的布局位置信息,包括:
确定当前整合区域;所述当前整合区域包含:所述已布局节点集合中各个节点在对应的布局位置信息显示的图形;
在所述当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息;不同待扩展节点在对应布局位置信息显示的图形之间,不存在重合部分。
可选地,所述在所述当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息,包括:
确定在所述当前整合区域之外的当前扩展区域;所述当前扩展区域与所述当前整合区域之间不存在重合部分;
在所述当前扩展区域中,针对所确定的待扩展节点,确定对应的布局位置信息。
可选地,所述方法还包括:
在显示节点的情况下,响应于任一用户交互操作,更新所述预存储图谱;
所述用户交互操作包括以下至少一项:拖拽节点;新建节点;新建节点之间的关联关系;更新节点参数;更新关联关系参数;框选节点;针对节点进行分组。
可选地,所述确定所述预存储图谱中与所述目标节点关联的关联节点,包括:
确定所述预存储图谱中与所述目标节点关联,且满足预设关联条件的关联节点。
一种图谱节点布局装置,包括:
关联单元,用于响应于针对预存储图谱中目标节点的选定操作,确定所述预存储图谱中与所述目标节点关联的关联节点;
扩展单元,用于在所述目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;所述已布局节点集合中的任一节点对应有布局位置信息;
布局单元,用于基于预设的布局方式,以及所述已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息;
添加单元,用于将所确定的待扩展节点添加到所述已布局节点集合。
可选地,所述装置还包括:显示单元,用于针对所确定的待扩展节点,确定对应的布局位置信息后,更新当前显示的节点,更新后显示的节点中至少包括所确定的待扩展节点。
可选地,显示单元用于执行以下任一项:
按照对应的布局位置信息,显示所确定的待扩展节点;
在当前显示的节点基础上,按照对应的布局位置信息,新增显示所确定的待扩展节点;
按照对应的布局位置信息,显示所述目标节点以及所确定的关联节点;
将所确定的待扩展节点添加到所述已布局节点集合后,按照对应的布局位置信息,显示所述已布局节点集合中的全部节点。
可选地,所述装置还包括显示单元用于:
在显示多个节点的情况下,显示所述预存储图谱中所述多个节点之间的关联关系。
可选地,所述选定操作,包括以下至少一项:
在当前显示的预存储图谱节点中,将基于用户操作选择的节点,选定为目标节点;
在当前显示的预存储图谱节点中,将满足预设选择条件的节点,选定为目标节点;
将所述预存储图谱中满足预设选择条件的节点,选定为目标节点。
可选地,布局单元用于:
遍历所确定的待扩展节点;针对当前遍历的待扩展节点,将满足预设显示条件的任一位置信息,确定为对应的布局位置信息;
所述预设显示条件包括:当前遍历的待扩展节点在所述任一位置信息显示的图形,与任一其他节点在对应布局位置信息显示的图形之间,不存在重合部分。
可选地,布局单元用于:
确定所述目标节点对应的布局位置信息;
将所述目标节点在对应布局位置信息显示的图形,确定为当前第一区域;
循环执行以下步骤,直到针对所确定的每个待扩展节点确定对应的布局位置信息:
确定包含所述目标布局位置信息的当前第二区域;当前第二区域中包含当前第一区域,且当前第二区域的面积大于当前第一区域的面积;
针对当前第二区域内,当前第一区域外的当前第三区域,遍历当前未确定对应布局位置信息的待扩展节点,将满足预设重合条件的任一位置信息,确定为对应的布局位置信息,直到满足预设遍历停止条件;
将当前第二区域重新确定为当前第一区域。
可选地,所述预设重合条件包括:当前遍历的待扩展节点在所述任一位置信息显示的图形,与任一其他筛选节点在对应布局位置信息显示的图形之间,不存在重合部分;并且,当前遍历的待扩展节点在所述任一位置信息显示的图形,包含在当前第三区域内;
所述其他筛选节点包括:在对应布局位置信息显示的图形,与所述当前第三区域存在重合部分的节点。
可选地,布局单元用于:
在已布局节点集合未包含所述目标节点的情况下,随机确定所述目标节点对应的布局位置信息;
在已布局节点集合包含所述目标节点的情况下,确定所述目标节点对应的布局位置信息。
可选地,布局单元用于:
确定当前整合区域;所述当前整合区域包含:所述已布局节点集合中各个节点在对应的布局位置信息显示的图形;
在所述当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息;不同待扩展节点在对应布局位置信息显示的图形之间,不存在重合部分。
可选地,布局单元用于:
确定在所述当前整合区域之外的当前扩展区域;所述当前扩展区域与所述当前整合区域之间不存在重合部分;
在所述当前扩展区域中,针对所确定的待扩展节点,确定对应的布局位置信息。
可选地,显示单元还用于:
在显示节点的情况下,响应于任一用户交互操作,更新所述预存储图谱;
所述用户交互操作包括以下至少一项:拖拽节点;新建节点;新建节点之间的关联关系;更新节点参数;更新关联关系参数;框选节点;针对节点进行分组。
可选地,关联单元用于:
确定所述预存储图谱中与所述目标节点关联,且满足预设关联条件的关联节点。
根据上述实施例可知,可以根据选定操作针对预存储图谱中的节点进行灵活筛选,基于筛选出的节点,确定对应的布局位置信息,相比于针对图谱中的所有节点确定布局位置信息的方案,可以提高确定节点布局位置的灵活程度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本说明书实施例提供的一种图谱节点布局方法的流程示意图;
图2是本说明书实施例提供的一种扩散布局方式的原理示意图;
图3是本说明书实施例提供的一种整合布局方式的原理示意图;
图4是本说明书实施例提供的一种扩散布局显示方式的原理示意图;
图5是本说明书实施例提供的一种整合布局显示方式的原理示意图;
图6是本说明书实施例提供的一种图谱节点布局装置的结构示意图;
图7是用于配置本说明书实施例方法的一种设备的结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于公开的范围。
需要说明的是,本说明书实施例所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
目前存在许多业务需要利用图谱进行分析和显示。图谱例如知识图谱、指标图谱等等,其中可以包含节点以及节点之间的关联关系。例如,可以基于知识图谱分析数据实体之间的关联;也可以显示出指标图谱中的多个指标节点数据,方便用户查看。
而在显示图谱的过程中,只有针对图谱中的所有节点确定布局的位置信息后,才能进行显示。这种确定节点布局位置的方式灵活程度较低。
为了解决上述技术问题,本说明书实施例提供了一种图谱节点布局方法。
在该方法中,经过分析发现,在显示图谱的过程中,通常并不需要显示图谱中的所有节点。而对于只有针对图谱中的所有节点确定布局的位置信息后,才能进行显示的方案,往往没有考虑实际的需求。
例如,对于图谱中的100个节点,在具体分析显示的时候,通常每次分析可能重点关注其中的10个节点或者20个节点,当然,随着分析的推进,可能会逐渐递增需要关注的节点数量,增加到40或50个节点。
因此,基于这一分析,该方法中,可以针对图谱中可能需要显示的部分节点,实时确定布局位置信息,更加贴合实际需求,并且相比于只能针对图谱中所有节点确定布局位置信息的方案,本方法中通过针对需求的部分节点确定布局位置信息,可以提高确定节点布局位置的灵活程度。具体可以根据需求灵活选择所需要确定布局位置信息的节点。
并且,如果针对节点显示,还存在碰撞检测的算法,使得节点对应显示的图形之间不重合,则针对所有节点确定布局位置信息时,就需要耗费更多的计算量。而本方法针对图谱中可能需要显示的部分节点,实时确定布局位置信息,相比于针对图谱中所有节点确定布局位置信息,可以减少计算量,提高确定节点布局位置的效率。
例如,针对图谱中全量的100个节点,如果遍历每个节点确定布局位置信息,还需要确保不同节点之间的位置不重合,则需要较长的时间才能确定完成。而利用本方法,针对可能需要显示的部分节点,具体可以是20个节点,可以较快确定完成布局位置信息。
而在本方法中,具体对于可能需要显示的部分节点,可以是通过对节点的选择,以及节点之间的关联进行确定的。
具体可以是针对选择的节点,可以确定为可能需要显示的节点;进一步地,可以针对所选择节点的关联节点,也确定为可能需要显示的节点。
具体的关联节点,可以是图谱中与所选择节点直接相连的其他节点,也可以是图谱中满足特定条件的其他节点。
在一种具体的示例中,可以是用户选择图谱中的节点,具体可以是通过点击或者搜索的方式,选择出图谱中的一个或多个节点,进一步自动确定出图谱中所选择节点的关联节点,具体可以是与所选择节点直连的其他节点。
针对这些节点可以确定出对应的布局位置信息,以便于根据指令进行显示,或者自动显示给用户。
可以理解的是,本方法可以通过根据实际需求,减少图谱中所需要确定布局位置信息的节点数量,相比于只能确定图谱中所有节点的布局位置的方案,可以提高确定节点布局位置的灵活程度,还可以提高布局效率,提高确定节点布局位置的效率,以便于后续提高显示效率,能够快速进行显示,无需等待图谱中所有节点确定出布局位置后再显示。
如图1所示,图1是本说明书实施例提供的一种图谱节点布局方法的流程示意图。
本方法流程并不限定具体的执行主体。可选地,可以是由任一设备执行本方法流程。例如,具体可以是服务器或者终端。
首先需要说明的是,本方法流程中,可以预先存储有图谱,本方法流程可以用于针对预存储图谱中的节点,确定后续显示时的布局位置。具体可以是针对预存储图谱中的部分节点,也就是选定的节点以及关联节点,确定布局位置信息,以便于后续在需要显示时,能够在所确定的布局位置上显示。
本方法流程可以包括以下步骤。
S101:响应于针对预存储图谱中目标节点的选定操作,确定预存储图谱中与目标节点关联的关联节点。
S102:在目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;已布局节点集合中的任一节点对应有布局位置信息。
S103:基于预设的布局方式,以及已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息。
S104:将所确定的待扩展节点添加到已布局节点集合。
本方法流程可以根据选定操作针对预存储图谱中的节点进行灵活筛选,基于筛选出的节点,确定对应的布局位置信息,相比于针对图谱中的所有节点确定布局位置信息的方案,可以提高确定节点布局位置的灵活程度。
此外,还可以减少需要确定布局位置信息的节点数量,可以提高布局效率,也可以提高确定节点的布局位置信息的效率。
进一步地,在确定了预存储图谱中节点对应的布局位置信息后,就可以根据需求显示该节点。需求具体可以是用户指定需要显示的节点,也可以是自动显示每次新确定布局位置信息的节点,具体可以参见后文解释。
可选地,上述方法流程中,还可以包括基于预设的显示需求显示节点。具体可以是根据对应的布局位置信息显示节点。而预设显示需求可以用于确定所需要显示的节点。例如,已布局节点集合中的全部节点、待扩展节点、目标节点、关联节点、满足指定条件的节点等等。具体可以参见后文解释。
而显示节点的时候,布局位置信息可以是一个坐标点的形式,也可以是一个区域位置的形式,例如,矩形4个角的坐标点。相对应地,显示节点时一般会采用图形进行显示,例如,圆形、矩形、五角星、三维球体等等。本方法流程并不限定具体的节点显示情况。更具体的节点显示情况可以参见后文解释。
基于本方法流程,由于提高了确定节点的布局位置信息的效率,也可以方便提高显示节点的效率,无需等待预存储图谱中所有节点的布局位置信息都确定。
此外,上述方法流程解释的是响应于任意一次选定操作,所执行的确定节点布局位置的流程。
可以理解的是,不论是响应于首次选定操作,还是响应于非首次选定操作,都可以参考上述方法流程及相关解释。其中,随着多次响应选定操作,可以累积待扩展节点添加到已布局节点集合中。并且,每次响应选定操作的步骤,都可以参考上述方法流程及相关解释。
在一种具体的实施例中,可以预先创建一个空集确定为已布局节点集合,再响应于首次选定操作,执行上述方法流程,向已布局节点集合中添加待扩展节点。并随着响应于多次选定操作,执行上述方法流程,可以继续累积向已布局节点集合中添加待扩展节点。
随着已布局节点集合中节点的累积,可以方便后续选定操作触发的上述方法流程中,针对待扩展节点确定布局位置信息。
当然,所创建的已布局节点集合也可以不是空集,而是可以将已经确定过布局位置信息的预存储图谱节点预先存储进去。
可选地,上述方法流程的执行主体可以监测针对预存储图谱节点的选定操作,从而可以在监测到针对预存储图谱中目标节点的选定操作的情况下,执行上述方法流程。
下面从多个方面进行解释。
一、S101:响应于针对预存储图谱中目标节点的选定操作,确定预存储图谱中与目标节点关联的关联节点。
本方法流程并不限定具体响应选定操作的方式。
可选地,具体可以监测针对预存储图谱中目标节点的选定操作,在监测到针对预存储图谱中目标节点的选定操作的情况下,可以确定预存储图谱中与目标节点关联的关联节点,并执行后续步骤。
当然,也可以是接收针对预存储图谱中目标节点的选定操作,在接收到针对预存储图谱中目标节点的选定操作的情况下,可以确定预存储图谱中与目标节点关联的关联节点,并执行后续步骤。
其中,目标节点具体可以是预存储图谱中的任一节点,这里为了方便描述,将选定操作所选择的预存储图谱节点描述为目标节点。本方法流程并不限定目标节点的数量,具体可以是一个或多个。选定操作可以选择预存储图谱中的一个或多个节点作为目标节点。
本方法流程并不限定预存储图谱,只要预存储图谱中包含节点即可。其中,预存储图谱可以是知识图谱,也可以是指标图谱。预存储图谱中可以包含节点,以及节点之间的关联关系。预存储图谱中也可以包含节点,以及节点之间的连接关系,其中的连接关系可以表征关联关系。
本方法流程并不限定预存储图谱中节点以及关联关系具体表征的信息。例如,预存储图谱中节点可以表征指标,节点信息中可以包括所表征指标的数据,而节点之间的关联关系,具体可以是以连线的形式显示,可以进一步表征指标之间的关联、影响、相似程度等等。
又例如,预存储图谱中节点可以表征数据实体,节点之间的关联关系,可以进一步表征数据实体之间的关系、影响、相似程度、归因关系等等。以数据实体表征人为例,节点之间的关联关系可以表征人与人之间的亲属关系。
本方法流程也不限定选定操作的具体形式。
可选地,可以采用用户直接选择的方式,也可以采用设备自动选择的方式,具体可以是本方法流程的执行主体自动选择出目标节点。
为了方便理解,下面给出具体的示例。
例如,可以是用户直接针对预存储图谱进行选择,可以采用用户点击、用户搜索、用户筛选等方式,选择出目标节点。也可以是设备自动根据预设的条件,选择出目标节点,具体可以是随机将预存储图谱中的节点确定为目标节点,也可以是将预存储图谱中满足指定条件的节点确定为目标节点,指定条件例如,直连节点数量大于5、节点信息中包含指定信息等等。
当然,需要说明的是,预存储图谱数据的形式并不限定,可以是存储在数据库中,也可以是作为图结构的形式进行存储,方便进行查询搜索。
用户也可以是针对显示出的预存储图谱节点进行交互,通过点击或者框选的方式进行选择。还可以是针对显示出的预存储图谱节点进行搜索或者筛选。
因此,可选地,选定操作,可以包括以下至少一项:
1)在当前显示的预存储图谱节点中,将基于用户操作选择的节点,选定为目标节点。
2)在当前显示的预存储图谱节点中,将满足预设选择条件的节点,选定为目标节点。
3)将预存储图谱中满足预设选择条件的节点,选定为目标节点。
本实施例并不限定用户操作的具体形式,可选地,可以是点击、框选、搜索、筛选等等操作。本实施例也不限定预设选择条件。可选地,预设选择条件可以包括以下至少一项:直连节点数量大于5、节点信息中包含指定信息等等。
本实施例可以通过提供多种选定操作的方式,提高选择目标节点的灵活程度,方便选择预存储图谱中的目标节点。
本方法流程也并不限定关联节点。可选地,关联节点可以是预存储图谱中与目标节点直接相连的节点,也可以是预存储图谱中与目标节点存在关联关系的节点。这里的关联关系可以是节点类型相同、节点信息相似、节点存在直接或间接连接关系等等。
本方法流程也不限定确定关联节点的方式。可选地,可以是直接确定出预存储图谱中与目标节点关联的全部或部分关联节点,可以是确定出预存储图谱中与目标节点关联的一个或多个关联节点。具体筛选确定可以是基于特定条件。
因此,可选地,确定预存储图谱中与目标节点关联的关联节点,具体可以是:确定预存储图谱中与目标节点关联,且满足预设关联条件的关联节点。
本实施例并不限定预设关联条件。可选地,与目标节点直连、与目标节点存在相同的节点信息、与目标节点之间的信息相似度大于预设相似度阈值等等。
通过筛选关联节点,可以方便基于预设关联条件进一步提高需求的灵活程度,可以便于提高贴合实际需求的程度。
二、S102:在目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;已布局节点集合中的任一节点对应有布局位置信息。
关于已布局节点集合,本方法流程并不限定具体的内容。
在一种可选的实施例中,已布局节点集合中的各个节点可以对应有布局位置信息,从而方便用于显示。已布局节点集合中可以包含预存储图谱中的节点,也可以只包含预存储图谱中的节点。具体可以是已布局节点集合中包含节点的节点信息。
需要说明的是,本方法流程中具体确定节点布局的方式,可以与预存储图谱本身的更新变化解耦。预存储图谱本身如果新增节点,则可以无需改变其他节点对应的布局位置信息,而是可以将新增节点直接确定为目标节点,通过本方法流程确定对应的布局位置信息。
当然,预存储图谱中也可以删除节点。相对应地,已布局节点集合中可以删除相应的节点,也可以不删除相应的节点。
因此,本方法流程可以减少预存储图谱本身更新所带来的影响,相比于每次更新图谱都需要重新确定图谱中每个节点布局位置的方案,可以减少图谱更新带来的影响,提高确定节点布局位置的效率。
而关于布局位置信息,本方法流程并不限定具体的形式。可选地,布局位置信息可以是一个坐标点,也可以是一个区域坐标。例如,4个坐标点组成的矩形区域。
在一种可选的实施例中,由于已布局节点集合中的节点对应有布局位置信息,因此,如果在目标节点以及所确定的关联节点中,存在已布局节点集合包含的节点,则可以无需后续步骤确定布局位置信息,而是可以沿用已有的布局位置信息,也就可以减小计算量,减少计算负载。
其中,节点对应的布局位置信息,可以存储在指定区域中,方便后续获取。具体可以是存储在缓存中,提高获取效率。
可选地,已布局节点集合中节点对应的布局位置信息,可以存储在指定区域中,指定区域可以是设备缓存。具体存储的形式和内容并不限定,只要能确定出对应的节点即可。具体可以是存储节点信息与布局位置信息的对应关系。当然,也可以将节点信息与布局位置信息的对应关系存储在已布局节点集合中。
此外,如果在目标节点以及所确定的关联节点中,存在已布局节点集合未包含的节点,则可以认为这些节点还没有确定对应的布局位置信息,也就需要后续步骤进行确定,从而可以确定为待扩展节点。
其中需要注意的是,如果已布局节点集合中包含目标节点,则可以直接确定目标节点已有的对应布局位置信息。如果已布局节点集合中未包含目标节点,则可以通过后续步骤确定对应的布局位置信息。
三、S103:基于预设的布局方式,以及已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息。
本方法流程并不限定具体的布局方式。
需要说明的是,节点可以显示在二维平面,也可以显示在三维空间中,还可以显示在一条线上。本方法流程并不限定具体的显示方式。
并且,具体的布局方式可以考虑到节点在具体显示对应图形时的情况,例如,节点显示图形之间是否重合,是否遮挡等等。
相对应地,布局方式可以是按照指定的节点顺序依次排列,也可以是不考虑节点显示图形之间是否重合直接随机布局,也可以是为了使得节点显示图形之间不重合而进行布局等等。
其中,节点显示图形之间的遮挡,在二维平面表现为节点显示图形之间重合,而在三维空间中表现为节点显示图形之间存在遮挡,可能存在重合部分,也可能不存在重合部分,遮挡具体可能是因为视角原因。
在一种可选的实施例中,在具体确定布局位置信息时,还可以利用已布局节点集合中节点对应的布局位置信息,具体可以用于检测新确定的布局位置信息,是否与已布局节点集合中的节点对应的布局位置信息,存在重合部分。
当然,也可以用于限制新确定布局位置信息时,与已布局节点集合中的节点对应布局位置信息之间的距离,从而可以方便在合适大小的平面中显示节点。具体可以是限定新确定的布局位置信息,与已布局节点集合中的任一节点对应布局位置信息之间的距离小于预设距离。
本方法流程并不限定已布局节点集合中节点对应布局位置信息的作用。
为了方便理解,下面给出三种布局方式的实施例。可以理解的是,下面的实施例仅仅用于示例性说明。
1、第一种布局方式实施例。
在一种可选的实施例中,可以考虑节点显示图形之间不存在重合部分,从而可以以此为限制确定布局位置信息。
需要说明的是,所确定的待扩展节点可以是一个或多个,多个待扩展节点之前,节点显示图形也需要不存在重合部分。当然,在其他实施例中,不同待扩展节点的显示图形之间也可以存在重合部分。
因此,可以针对多个待扩展节点进行遍历,当前遍历的待扩展节点显示图像,可以与各个其他节点的显示图形之间不存在重合部分。其中的其他节点,可以是对应有布局位置信息的节点,具体可以包括已布局节点集合中的节点,以及在之前遍历的待扩展节点。
当然,也可以直接确定出多个不重合的布局位置信息,分别作为不同待扩展节点对应的布局位置信息。
可选地,针对所确定的待扩展节点,确定对应的布局位置信息,具体可以是:遍历所确定的待扩展节点;针对当前遍历的待扩展节点,将满足预设显示条件的任一指定位置信息,确定为对应的布局位置信息。
其中,预设显示条件可以包括:当前遍历的待扩展节点在指定位置信息显示的图形,与任一其他节点在对应布局位置信息显示的图形之间,不存在重合部分。
本实施例并不限定其他节点。可选地,其他节点可以包括以下至少一项:1)之前遍历的待扩展节点;2)已布局节点集合中的一个或多个节点;3)已布局节点集合中的部分或全部节点;4)对应有布局位置信息的一个或多个节点;5)对应有布局位置信息的全部节点。
在一种具体的实施例中,为了确保节点显示图形之间不重合,预设显示条件可以包括:当前遍历的待扩展节点在指定位置信息显示的图形,与对应有布局位置信息的全部节点在对应布局位置信息显示的图形之间,不存在重合部分。
本实施例并不限定具体确定出满足预设显示条件的指定位置信息的具体方式。可选地,可以采用尝试的方式,通过不断调整位置,确定出一个满足预设显示条件的位置信息。
可选地,也可以基于当前遍历的待扩展节点显示图形,确定出一个包含该显示图形的区域,具体可以是圆形区域或者矩形区域,进而可以基于其他节点显示图形,确定出能够包含所确定区域的空白区域,从而可以确定出满足预设显示条件的位置信息。
空白区域可以是没有节点显示图形占据的区域。
本实施例也不限定确定重合部分的方式。可选地,以节点显示图形都是圆形为例,可以采用不同圆形之间圆心位置的距离,是否大于两个圆形半径和,判断是否存在重合部分。
本实施例可以通过确定出满足预设显示条件的布局位置信息,减少节点显示图形之前的重合情况,便于提高显示效果。
2、第二种布局方式实施例。
在一种可选的实施例中,为了方便提高节点之间的位置紧凑程度,方便提高节点的显示效果,可以采用一种扩散的方式进行布局。
具体可以是选择一个中心点,以中心点为核心,逐步向外扩散,确定待扩展节点的布局位置信息,可以提高节点之间的紧凑程度。
其中的中心点可以是任一节点,具体可以是目标节点、任一待扩展节点、已布局节点集合中的任一节点等等。中心点也可以不是节点,而是指定的一个位置。
具体扩散的方式并不限定。可以是按照螺旋线依次向外扩散,确定布局位置信息,也可以是采用逐渐扩大的圆环进行扩散,确定布局位置信息。
本实施例也不限定节点显示图形之间能否存在重合部分。不同节点显示图形之前可以不存在重合部分。
此外,具体确定待扩展节点的布局位置信息时,可以是遍历依次逐个进行确定,也可以是并行进行确定。
本实施例可以通过扩散的方式,提高节点之间位置的紧凑程度,提高节点的显示效果。
在一种具体的实施例中,可选地,针对所确定的待扩展节点,确定对应的布局位置信息,具体可以是:确定目标节点对应的布局位置信息;将目标节点在对应布局位置信息显示的图形,确定为当前第一区域;
循环执行以下步骤1-3,直到针对所确定的每个待扩展节点确定对应的布局位置信息:
步骤1)确定包含目标布局位置信息的当前第二区域;当前第二区域中包含当前第一区域,且当前第二区域的面积大于当前第一区域的面积。
步骤2)针对当前第二区域内,当前第一区域外的当前第三区域,遍历当前未确定对应布局位置信息的待扩展节点,将满足预设重合条件的任一指定位置信息,确定为对应的布局位置信息,直到满足预设遍历停止条件。
步骤3)将当前第二区域重新确定为当前第一区域。
本实施例中,可以将目标节点确定为中心点,进行扩散。其中,由于目标节点是选定操作选择的节点,可以通过作为中心点进行凸显,提高显示效果。
具体扩散的方式可以是逐渐扩大区域,并将扩大的部分区域用于布局节点,确定出待扩展节点的布局位置信息。具体可以是遍历还未确定布局的待扩展节点确定布局位置。本实施例可以通过逐渐扩大区域进行节点布局,提高节点布局之间的紧凑程度。
在上述循环步骤中,通过将当前第二区域确定为当前第一区域,可以方便在后续循环中,进一步扩大区域,从而方便实现扩散。
本实施例并不限定确定当前第二区域的方法,只要当前第二区域中包含当前第一区域,且当前第二区域的面积大于当前第一区域的面积即可。
可选地,具体可以是在当前第一区域的基础上,向外扩展预设距离,得到当前第二区域。例如,在当前第一区域为半径为5的圆形的基础上,可以将半径为10的同心圆确定为当前第二区域。
本实施例也不限定具体的预设遍历停止条件。可选地,可以是在当前第三区域中布局指定数量的待扩展节点后,就停止遍历;也可以是确定当前第三区域中没有满足预设重合条件的位置信息;也可以是针对当前遍历的待扩展节点无法确定出满足预设重合条件的位置信息。
因此,可选地,预设遍历停止条件可以包括以下至少一项:遍历次数大于预设遍历次数阈值;在当前第三区域中已经布局指定数量的待扩展节点;当前第三区域中没有满足预设重合条件的位置信息;针对当前遍历的待扩展节点无法确定出满足预设重合条件的位置信息。
进一步地,本实施例并不限定具体的预设重合条件。
这里的预设重合条件可以用于减少节点显示图形之间的重合情况,也可以不考虑节点显示图形之间的重合。
其中,可选地,预设重合条件可以与上述预设显示条件相同,可以包括:当前遍历的待扩展节点在指定位置信息显示的图形,与任一其他节点在对应布局位置信息显示的图形之间,不存在重合部分。具体解释可以参见上文。
而在本实施例中,由于存在当前第三区域的区域限制,可以使得当前遍历的待扩展节点,在指定位置信息显示的图形,包含在当前第三区域内。基于这一限制,可以进一步方便缩小需要判断是否存在重合部分的其他节点范围。
例如,对于一个其他节点,如果显示图形与当前第三区域没有任何重合部分,也就与当前第三区域内包含的待扩展节点显示图形没有重合部分。
因此,可以将需要判断的节点范围,缩小为显示图形与当前第三区域存在重合部分的节点。
通过这一筛选,可以减少判断显示图形是否重合的次数,提高确定节点布局位置的效率。
因此,可选地,预设重合条件可以包括:当前遍历的待扩展节点在指定位置信息显示的图形,与任一其他筛选节点在对应布局位置信息显示的图形之间,不存在重合部分;并且,当前遍历的待扩展节点在指定位置信息显示的图形,包含在当前第三区域内。
其中,其他筛选节点,具体可以包括:在对应布局位置信息显示的图形,与当前第三区域存在重合部分的节点。
本实施例可以基于预设重合条件,缩小需要判断是否存在重合部分的其他节点范围,减少需要判断是否存在重合部分的其他节点数量,从而可以提高确定节点布局位置的效率。
具体判断是否存在重合部分的方式并不限定,可以采用碰撞检测,或者其他方式,具体可以根据节点显示图形确定。具体可以参见上文解释。
为了方便理解,如图2所示,图2是本说明书实施例提供的一种扩散布局方式的原理示意图。
在一种具体的示例中,也就是图2中,节点显示图形可以都是半径相同的圆形,半径可以都是1。进而可以基于上述布局方式,针对目标节点的显示圆形,确定出一个半径为5的同心圆(用虚线表示)。之后可以在与半径为5的同心圆上,确定出4个半径为1的内切圆,分别占据4个方向,作为备选的位置信息,这些内切圆与目标节点的显示圆形不重合,并且彼此也不重合。内切圆具体可以用虚线表示。
进一步地,可以找出对应有布局位置信息,且显示图形与半径为5的同心圆存在重合部分的其他节点,所确定的内切圆可以分别与找出的其他节点显示圆形,判断是否存在重合部分。
如果都不存在重合部分,则可以作为任一待扩展节点的显示圆形,进而可以确定出对应的布局位置信息。
如果存在重合部分,则可以先进行微调再进行判断,也可以直接删除。
之后如果半径为5的同心圆无法布局全部的待扩展节点,可以进一步针对目标节点的显示圆形,确定出一个半径为8的同心圆。具体的步骤不再赘述,可以基于上述步骤通过简单推理得到。
图2中也画出了半径为5的同心圆,以及半径为8的同心圆。可以在其中布局内切圆。
为了方便理解,其中进一步画出了目标节点与待扩展节点之间的关联关系,也就是采用虚线连接的形式进行显示。
当然,可以理解的是,图2仅仅用于示例性说明。并不限定具体的区域扩展方式、位置信息确定方式等等。
此外,在一种可选的实施例中,由于将目标节点作为中心点进行扩散,可以理解的是,其他节点也可以作为中心点,
其中,如果以目标节点为中心点,就需要先确定出目标节点对应的布局位置信息。
因此,可选地,确定目标节点对应的布局位置信息,具体可以是:在已布局节点集合未包含目标节点的情况下,随机确定目标节点对应的布局位置信息;在已布局节点集合包含目标节点的情况下,确定目标节点对应的布局位置信息。
当然,本实施例中,还可以在已布局节点集合未包含目标节点的情况下,通过其他方式确定目标节点对应的布局位置信息。例如,在任一对应有布局位置信息的节点旁边,确定目标节点对应的布局位置信息。本实施例并不限定确定目标节点对应的布局位置信息的具体方式。
3、第三种布局方式实施例。
在一种可选的实施例中,为了方便提高节点之间的位置紧凑程度,方便提高节点的显示效果,可以采用一种区域整合的方式进行布局。
具体可以是将对应有布局位置信息的所有节点,整体确定出一个区域范围,包含所有节点在对应布局位置信息的显示图形。
而在这个区域范围之外,可以任意确定待扩展节点的位置信息,可以不与区域范围重合,也就不会与当前对应有布局位置信息的所有节点存在重合部分。
这种布局方式可以提高确定节点布局位置的效率,可以减少判断节点显示图形是否重合的次数。
本实施例并不限定具体的确定区域范围的方式,可选地,可以确定出一个圆形或矩形,包含所有节点在对应布局位置信息的显示图形。
其中,在区域范围之外所确定的待扩展节点布局位置,可以使得待扩展节点在所确定布局位置信息显示的图形,与区域范围不存在重合部分。
当然,本实施例并不限定区域范围所包含的节点,具体可以是全部对应有布局位置信息的节点,也可以是部分对应有布局位置信息的节点。
可选地,针对所确定的待扩展节点,确定对应的布局位置信息,具体可以是:
确定当前整合区域;当前整合区域中包含:已布局节点集合中各个节点在对应的布局位置信息显示的图形;
在当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息;不同待扩展节点在对应布局位置信息显示的图形之间,不存在重合部分。
当然,任一待扩展节点在对应布局位置信息显示的图形,与当前整合区域之间不存在重合部分。
本实施例并不限定当前整合区域包含的节点,具体可以是包含已布局节点集合中各个节点在对应的布局位置信息显示的图形,也可以是包含已布局节点集合中一个或多个节点在对应布局位置信息显示的图形,也可以是包含已布局节点集合中全部或部分节点在对应布局位置信息显示的图形。当然,也可以包含其他节点,例如,包含对应有布局位置信息的各个节点在对应布局位置信息显示的图形。
可以理解的是,也可以遍历待扩展节点,在确定当前遍历的待扩展节点对应的布局位置信息后,可以进一步更新当前整合区域,包含进当前遍历的待扩展节点在对应布局位置信息显示的图形。
本实施例并不限定具体在当前整合区域之外,确定节点布局的方式。可选地,可以随机确定,也可以是按照固定的方式或者顺序进行确定。
为了提高节点的紧凑程度,可以额外再圈定一个新增区域,在新增区域中确定节点布局。新增区域可以是一个与当前整合区域不重合的区域。当前整合区域和新增区域可以是圆形区域,具体可以是相外切或者相离的两个圆形。
可选地,在当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息,具体可以是:确定在当前整合区域之外的当前扩展区域;当前扩展区域与当前整合区域之间不存在重合部分;在当前扩展区域中,针对所确定的待扩展节点,确定对应的布局位置信息。
本实施例可以在当前扩展区域中进行节点布局,提高节点之间的紧凑程度。
为了方便理解,如图3所示,图3是本说明书实施例提供的一种整合布局方式的原理示意图。
在一种具体的示例中,也就是图3中,节点显示图形可以都是半径相同的圆形,半径可以都是1。进而可以基于上述布局方式,针对对应有布局位置信息的所有节点,确定出一个圆形区域包含所有节点的显示圆形。其中可以包含对应有布局位置信息的目标节点。
进一步可以在这个圆形区域之外,额外确定一个相离的新增圆形区域,在新增圆形区域中,可以确定节点布局位置。新增圆形区域和其中新确定的节点,可以使用虚线圆形进行表示,从而可以确定出待扩展节点的布局位置信息。
为了方便理解,其中进一步画出了目标节点与待扩展节点之间的关联关系,也就是采用虚线连接的形式进行显示。
四、S104:将所确定的待扩展节点添加到已布局节点集合。
在针对待扩展节点确定对应的布局位置信息后,可以将待扩展节点添加到已布局节点集合中,也可以方便累积对应有布局位置信息的节点到已布局节点集合中。
在响应于后续的选定操作,执行上述方法流程的过程中,可以基于更新的已布局节点集合,确定节点布局。
五、关于显示。
本方法流程并不限定具体显示节点的情况。
在确定了预存储图谱中节点对应的布局位置信息后,就可以根据需求显示该节点。需求具体可以是用户指定需要显示的节点,也可以是自动显示每次新确定布局位置信息的节点。
因此,可选地,上述方法流程中,还可以包括基于预设的显示需求显示节点。具体可以是根据对应的布局位置信息显示节点。而预设显示需求可以用于确定所需要显示的节点。例如,已布局节点集合中的全部节点、待扩展节点、目标节点、关联节点、满足指定条件的节点等等。
本方法流程并不限定具体的预设显示需求的形式和内容。可选地,预设显示需求可以包括以下至少一项:1)显示已布局节点集合中的全部节点;2)显示待扩展节点;3)显示目标节点和关联节点;4)显示满足指定条件的节点。
本实施例并不限定具体的指定条件。具体可以是显示包含指定节点信息的节点,或者显示节点指定参数大于阈值的节点等等。
本方法流程并不限定具体显示节点的时机。
可选地,可以在预设时刻显示节点,也可以在接收到用户指定时刻显示节点,也可以是在确定出待扩展节点对应布局位置之后进行显示。
可选地,针对所确定的待扩展节点,确定对应的布局位置信息后,上述方法流程还可以包括:更新当前显示的节点,更新后显示的节点中至少包括所确定的待扩展节点。
本实施例可以显示新增的待扩展节点,方便展示出新增的节点。
其中,并不限定当前显示的节点。具体可以是通过之前响应选定操作所累积显示的待扩展节点,也可以是根据其他需求显示的节点。
本实施例并不限定具体更新当前显示节点的方式。
可选地,更新当前显示的节点,可以包括以下任一项:
1)按照对应的布局位置信息,显示所确定的待扩展节点。
2)在当前显示的节点基础上,按照对应的布局位置信息,新增显示所确定的待扩展节点。
3)按照对应的布局位置信息,显示目标节点以及所确定的关联节点。
4)将所确定的待扩展节点添加到已布局节点集合后,按照对应的布局位置信息,显示已布局节点集合中的全部节点。
本实施例可以更新节点的显示情况,提高显示效果。
本实施例并不限定具体显示的方式。可选地,可以针对部分节点采用凸显显示的方式。具体可以采用高亮的方式或者不同颜色进行显示。
例如,可以针对目标节点和所确定的关联节点,进行高亮显示,从而可以方便查看选择的目标节点以及相关联的关联节点。
为了方便理解,在一种具体的示例中,可以随着响应于多次目标节点的选定操作,累积显示所确定的待扩展节点,也就是显示对应有布局位置信息的所有节点,或者已布局节点集合中所有节点。
任意一次响应于选定操作,可以进一步凸显显示出目标节点和关联的关联节点,具体可以是高亮显示目标节点和关联的关联节点。
此外,在一种可选的实施例中,预存储图谱中还可以包含节点之间的关联关系,也就可以进一步在显示节点的基础上,显示节点之间的关联关系。具体可以是采用连线的方式,显示节点之间的关联关系。
可选地,上述方法流程还可以包括:在显示多个节点的情况下,显示预存储图谱中多个节点之间的关联关系。本实施例并不限定具体的显示关联关系的方式,可以采用连线的方式进行显示。
例如,针对显示出的存在关联关系的两个节点,可以进一步显示这两个节点之间的连线。
又例如,在显示目标节点和关联节点的情况下,可以进一步显示目标节点与各个关联节点之间的连线。
需要说明的是,连线之间如果出现重合的情况,可以通过多种方式进行区分。例如,改变连线的颜色或者粗细。
下面结合上述布局方式,以及具体的显示方法,给出两个具体的示例。
如图4所示,图4是本说明书实施例提供的一种扩散布局显示方式的原理示意图。
在一种具体的示例中,也就是图4中,当前显示的节点可以包括节点1-4,具体布局如图4所示。节点1-4之间可以显示连线。
响应于针对节点1的点击操作,可以确定出预存储图谱中节点1关联的关联节点,也就是节点5-8。
在基于扩散布局方式确定出节点5-8的布局位置信息后,可以显示出节点5-8,并高亮显示节点1和节点5-8。其他节点2-4可以变暗。其中,节点5-8可以扩散分布在节点1附近。
节点1可以分别与节点5-8连线。
响应于针对节点8的点击操作,可以确定出预存储图谱中节点8关联的关联节点,也就是节点9-10。
在基于扩散布局方式确定出节点9-10的布局位置信息后,可以显示出节点9-10,并高亮显示节点8和节点9-10。其他节点可以变暗。其中,节点9-10可以扩散分布在节点8附近。
节点8可以分别与节点9和节点10连线。
如图5所示,图5是本说明书实施例提供的一种整合布局显示方式的原理示意图。
在一种具体的示例中,也就是图5中,当前显示的节点可以包括节点11-14,具体布局如图5所示。
响应于针对节点11的点击操作,可以确定出预存储图谱中节点11关联的关联节点,也就是节点15-18。
在基于整合布局方式确定出节点15-18的布局位置信息后,可以显示出节点15-18,并高亮显示节点11和节点15-18。其他节点可以变暗。其中,节点15-18可以包含在另一个区域中。
节点11可以分别与节点15-18连线。
响应于针对节点18的点击操作,可以确定出预存储图谱中节点18关联的关联节点,也就是节点19-20。
在基于整合布局方式确定出节点19-20的布局位置信息后,可以显示出节点19-20,并高亮显示节点18-20。其他节点可以变暗。其中,节点19-20可以包含在另一个区域中。
节点18可以分别与节点19-20连线。
基于上述显示的情况,在一种可选的实施例中,可以进一步提供交互操作,可以更新显示情况或者预存储图谱中的数据。
例如,可以通过拖拽节点,更新节点对应的布局位置信息。也可以通过新建节点,增加节点,也增加预存储图谱中的节点。
因此,可选地,上述方法流程还可以包括:在显示节点的情况下,响应于任一用户交互操作,更新预存储图谱。
本实施例并不限定用户交互操作的具体内容。
可选地,用户交互操作可以包括以下至少一项:拖拽节点;新建节点;新建节点之间的关联关系;更新节点参数;更新关联关系参数;框选节点;针对节点进行分组。
基于用户交互操作,可以调整节点的显示情况,并且可以更新预存储图谱中的内容。
为了方便理解,本说明书实施例还提供了一种具体的方法实施例。
其中提供了三种具体的布局算法。
本实施例旨在提供基于浏览器做图谱的可编辑图谱布局算法,通过算法高效地布置一组节点和边,并且节点之间不能重叠、布局结果美观、易于理解。
其中,可以将数据转换为图谱节点和边。节点表示为各种图形元素,例如圆形、矩形等,边上表示为连接节点的线或箭头。每个节点和边的颜色、形状、大小等都可以根据其代表的数据属性进行设定。
1)首先想到的是通过螺旋结构让新出现的节点分布在螺旋线上。
具体可以结合阿基米德螺旋公式确定节点分布的位置。
2)通过圆环的扩散,新的节点可以以选择的目标节点为中心向外扩散。直到遇到空白位置,来布局新的节点。
其中可以结合角度弧度转换公式:1弧度=180/π度;1度=π/180弧度;确定节点分布的位置。
3)通过圆的外切,可以根据当前布局范围画一个虚拟的圆形,新增的一批节点布局在另一个圆形中,这两个圆形可以外切。
可以通过两个圆的半径和中心点距离来计算新的点位布局中心点。
图谱的节点通常是圆形,可以通过距离来实现节点碰撞检测。
假设两个圆分别为ball1和ball2,半径分别为r1和r2,球心之间的距离为dx和dy。则两个圆发生碰撞的条件为:球心之间的距离小于等于两圆半径之和,即dx^2+dy^2小于等于(r1+r2)^2。
在实现过程中,为了优化算法性能,本实施例还引入了一些技巧。使用了随机起始角度来避免重复布局;例如,从随机起始角度开始布局新节点;采用了增量式计算来避免重复计算,也就是重复使用已确定的节点布局位置;使用了缓存技术来加快计算速度等,也就是将已确定的节点布局存储起来,方便后续获取,并且可以根据存储的节点布局进行显示。
下面解释三种不同的布局。
布局一:
利用螺旋布局算法计算节点和边的位置,形成初步的图谱布局。该算法基于螺旋形状的特性,将节点按照螺旋形状排列,边根据其连接的节点位置进行相应扭曲,以保持整体布局的紧凑和美观。该算法考虑了节点和边的几何特性、相互关系以及整体美观性。
当点击节点,获取扩展的节点,过滤未在现有图中展示的节点后,可以通过螺旋形状的排列计算节点展示的坐标位置,并通过碰撞检测是否与螺旋线上的位置是否与图中展示的节点有重叠。如有重叠获取下一个螺旋形状路径的节点。根据计算后的点位坐标完成此次的扩展点布局。
布局二:
以当前点击的节点为起始点,获取扩展节点数据,以圆形向外部扩散,通过圆形的角度与弧度计算扩散路径分布的节点,并与图中原有的点位进行碰撞检测计算。如有重叠获取下一个扩散路径的点位。根据获取到的点位坐标完成此次布局。
布局三:
计算当前图形的布局圈成一个圆。扩展的点位数据形成一个圆。两个圆外部相切,从而得到扩展点位坐标,通过所得坐标完成节点布局。此布局扩展点相对松散。
相对于现有的图形布局算法,本实施例具有以下优点:
(1)性能优化:原先已布局节点位置不用再次计算。只计算扩展点坐标进行渲染显示。
(2)交互优化:根据用户的需求和操作可以调节参数包括节点距离、大小、角度、方案。
(3)布局结果美观、易于理解、节点位置不重叠。
(3)采用缓存优化策略,布局计算性能较高;
(4)提供了多套方案,适应不同的应用场景。
本实施例实现的图形布局算法,可以实现节点和边的布局、通过计算两节点距离来判断节点位置等。
对应于上述方法实施例,本说明书实施例还提供了一种装置实施例。
如图6所示,图6是本说明书实施例提供的一种图谱节点布局装置的结构示意图。
该装置可以包括以下单元:
关联单元201,用于响应于针对预存储图谱中目标节点的选定操作,确定预存储图谱中与目标节点关联的关联节点;
扩展单元202,用于在目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;已布局节点集合中的任一节点对应有布局位置信息;
布局单元203,用于基于预设的布局方式,以及已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息;
添加单元204,用于将所确定的待扩展节点添加到已布局节点集合。
可选地,上述装置还包括:显示单元205,用于针对所确定的待扩展节点,确定对应的布局位置信息后,更新当前显示的节点,更新后显示的节点中至少包括所确定的待扩展节点。
可选地,显示单元205用于执行以下任一项:
按照对应的布局位置信息,显示所确定的待扩展节点;
在当前显示的节点基础上,按照对应的布局位置信息,新增显示所确定的待扩展节点;
按照对应的布局位置信息,显示目标节点以及所确定的关联节点;
将所确定的待扩展节点添加到已布局节点集合后,按照对应的布局位置信息,显示已布局节点集合中的全部节点。
可选地,上述装置还包括显示单元205用于:
在显示多个节点的情况下,显示预存储图谱中多个节点之间的关联关系。
可选地,选定操作,包括以下至少一项:
在当前显示的预存储图谱节点中,将基于用户操作选择的节点,选定为目标节点;
在当前显示的预存储图谱节点中,将满足预设选择条件的节点,选定为目标节点;
将预存储图谱中满足预设选择条件的节点,选定为目标节点。
可选地,布局单元203用于:
遍历所确定的待扩展节点;针对当前遍历的待扩展节点,将满足预设显示条件的任一指定位置信息,确定为对应的布局位置信息;
预设显示条件包括:当前遍历的待扩展节点在指定位置信息显示的图形,与任一其他节点在对应布局位置信息显示的图形之间,不存在重合部分。
可选地,布局单元203用于:
确定目标节点对应的布局位置信息;
将目标节点在对应布局位置信息显示的图形,确定为当前第一区域;
循环执行以下步骤,直到针对所确定的每个待扩展节点确定对应的布局位置信息:
确定包含目标布局位置信息的当前第二区域;当前第二区域中包含当前第一区域,且当前第二区域的面积大于当前第一区域的面积;
针对当前第二区域内,当前第一区域外的当前第三区域,遍历当前未确定对应布局位置信息的待扩展节点,将满足预设重合条件的任一指定位置信息,确定为对应的布局位置信息,直到满足预设遍历停止条件;
将当前第二区域重新确定为当前第一区域。
可选地,预设重合条件包括:当前遍历的待扩展节点在任一指定位置信息显示的图形,与任一其他筛选节点在对应布局位置信息显示的图形之间,不存在重合部分;并且,当前遍历的待扩展节点在指定位置信息显示的图形,包含在当前第三区域内;
其他筛选节点包括:在对应布局位置信息显示的图形,与当前第三区域存在重合部分的节点。
可选地,布局单元203用于:
在已布局节点集合未包含目标节点的情况下,随机确定目标节点对应的布局位置信息;
在已布局节点集合包含目标节点的情况下,确定目标节点对应的布局位置信息。
可选地,布局单元203用于:
确定当前整合区域;当前整合区域包含:已布局节点集合中各个节点在对应的布局位置信息显示的图形;
在当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息;不同待扩展节点在对应布局位置信息显示的图形之间,不存在重合部分。
可选地,布局单元203用于:
确定在当前整合区域之外的当前扩展区域;当前扩展区域与当前整合区域之间不存在重合部分;
在当前扩展区域中,针对所确定的待扩展节点,确定对应的布局位置信息。
可选地,显示单元205还用于:
在显示节点的情况下,响应于任一用户交互操作,更新预存储图谱;
用户交互操作包括以下至少一项:拖拽节点;新建节点;新建节点之间的关联关系;更新节点参数;更新关联关系参数;框选节点;针对节点进行分组。
可选地,关联单元201用于:
确定预存储图谱中与目标节点关联,且满足预设关联条件的关联节点。
上述装置实施例的解释可以参见上述方法实施例。
以上实施方式中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本发明公开的范围。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现上述任一方法实施例。
本说明书实施例还提供一种电子设备,包括处理器及存储器;所述存储器存储有可被处理器调用的程序;其中,所述处理器执行所述程序时,实现上述任一方法实施例。
图7是用于配置本说明书实施例方法的一种设备的结构示意图。图7示出了本说明书实施例所提供的一种更为具体的计算机设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述任一方法实施例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护。

Claims (10)

1.一种图谱节点布局方法,其特征在于,包括:
响应于针对预存储图谱中目标节点的选定操作,确定所述预存储图谱中与所述目标节点关联的关联节点;
在所述目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;所述已布局节点集合中的任一节点对应有布局位置信息;
基于预设的布局方式,以及所述已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息;
将所确定的待扩展节点添加到所述已布局节点集合。
2.根据权利要求1所述方法,其特征在于,针对所确定的待扩展节点,确定对应的布局位置信息后,所述方法还包括:更新当前显示的节点,更新后显示的节点中至少包括所确定的待扩展节点。
3.根据权利要求1所述方法,其特征在于,所述针对所确定的待扩展节点,确定对应的布局位置信息,包括:
遍历所确定的待扩展节点;针对当前遍历的待扩展节点,将满足预设显示条件的任一位置信息,确定为对应的布局位置信息;
所述预设显示条件包括:当前遍历的待扩展节点在所述任一位置信息显示的图形,与任一其他节点在对应布局位置信息显示的图形之间,不存在重合部分。
4.根据权利要求1所述方法,其特征在于,所述针对所确定的待扩展节点,确定对应的布局位置信息,包括:
确定所述目标节点对应的布局位置信息;
将所述目标节点在对应布局位置信息显示的图形,确定为当前第一区域;
循环执行以下步骤,直到针对所确定的每个待扩展节点确定对应的布局位置信息:
确定包含所述目标布局位置信息的当前第二区域;当前第二区域中包含当前第一区域,且当前第二区域的面积大于当前第一区域的面积;
针对当前第二区域内,当前第一区域外的当前第三区域,遍历当前未确定对应布局位置信息的待扩展节点,将满足预设重合条件的任一位置信息,确定为对应的布局位置信息,直到满足预设遍历停止条件;
将当前第二区域重新确定为当前第一区域。
5.根据权利要求4所述方法,其特征在于,所述预设重合条件包括:当前遍历的待扩展节点在所述任一位置信息显示的图形,与任一其他筛选节点在对应布局位置信息显示的图形之间,不存在重合部分;并且,当前遍历的待扩展节点在所述任一位置信息显示的图形,包含在当前第三区域内;
所述其他筛选节点包括:在对应布局位置信息显示的图形,与所述当前第三区域存在重合部分的节点。
6.根据权利要求1所述方法,其特征在于,所述针对所确定的待扩展节点,确定对应的布局位置信息,包括:
确定当前整合区域;所述当前整合区域包含:所述已布局节点集合中各个节点在对应的布局位置信息显示的图形;
在所述当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息;不同待扩展节点在对应布局位置信息显示的图形之间,不存在重合部分。
7.根据权利要求6所述方法,其特征在于,所述在所述当前整合区域之外,针对所确定的待扩展节点,确定对应的布局位置信息,包括:
确定在所述当前整合区域之外的当前扩展区域;所述当前扩展区域与所述当前整合区域之间不存在重合部分;
在所述当前扩展区域中,针对所确定的待扩展节点,确定对应的布局位置信息。
8.一种图谱节点布局装置,其特征在于,包括:
关联单元,用于响应于针对预存储图谱中目标节点的选定操作,确定所述预存储图谱中与所述目标节点关联的关联节点;
扩展单元,用于在所述目标节点以及所确定的关联节点中,将已布局节点集合未包含的节点,确定为待扩展节点;所述已布局节点集合中的任一节点对应有布局位置信息;
布局单元,用于基于预设的布局方式,以及所述已布局节点集合中节点对应的布局位置信息,针对所确定的待扩展节点,确定对应的布局位置信息;
添加单元,用于将所确定的待扩展节点添加到所述已布局节点集合。
9.一种电子设备,包括处理器及存储器;所述存储器存储有可被处理器调用的程序;其中,所述处理器执行所述程序时,实现如权利要求1至7中任意一项所述的方法。
10.一种机器可读存储介质,其上存储有程序,该程序被处理器执行时,实现如权利要求1至7中任意一项所述的方法。
CN202311873816.0A 2023-12-29 2023-12-29 一种图谱节点布局方法、装置、设备及存储介质 Pending CN117828100A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311873816.0A CN117828100A (zh) 2023-12-29 2023-12-29 一种图谱节点布局方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311873816.0A CN117828100A (zh) 2023-12-29 2023-12-29 一种图谱节点布局方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN117828100A true CN117828100A (zh) 2024-04-05

Family

ID=90503935

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311873816.0A Pending CN117828100A (zh) 2023-12-29 2023-12-29 一种图谱节点布局方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117828100A (zh)

Similar Documents

Publication Publication Date Title
AU2017200055B2 (en) Integrated developer workflow for data visualization development
CN107368510B (zh) 一种店铺搜索排序方法及装置
CN109614195A (zh) 一种列表项的预加载方法、装置、设备及存储介质
CN105867930A (zh) 一种函数调用关系的显示方法、装置及终端
CN114742981A (zh) 后处理特效的制作系统、方法、ar特效渲染方法及装置
CN108255371A (zh) 一种信息的推送方法、移动终端及存储介质
CN104915053A (zh) 一种界面控件的位置确定方法和装置
CN117828100A (zh) 一种图谱节点布局方法、装置、设备及存储介质
CN108280154A (zh) 一种地图标注信息展示方法、装置、终端及可读存储介质
CN111949662A (zh) 数据展示方法和装置、存储介质和电子设备
CN106793015A (zh) 一种无线保真Wi‑Fi连接方法及移动终端
CN115794980A (zh) 一种数据展示方法、设备、装置及介质
CN107038176B (zh) 网络图页面渲染方法、装置及设备
CN110968513B (zh) 一种测试脚本的录制方法及装置
CN111854751B (zh) 导航目标位置确定方法、装置、可读存储介质及机器人
CN113221225A (zh) 物品布局方法、装置、存储介质及电子设备
US10706199B1 (en) Graphical user interface for interactive macro-cell placement
CN110083812B (zh) 电子文档的图片布局方法及装置、电子设备
CN112639713A (zh) 一种笔记局部选取方法、装置、电子终端和可读存储介质
CN113436325B (zh) 一种图像处理方法、装置、电子设备及存储介质
CN115935863B (zh) 数字电路负载分割处理方法、装置、计算机设备
KR100454968B1 (ko) 이동통신단말기에서 메뉴를 검색하는 방법
CN113656876B (zh) 自动化柜体模型生成方法、装置、介质及电子设备
CN111161351B (zh) 一种目标构件坐标获取方法及其系统
CN114949848A (zh) 图像渲染方法及装置、电子设备、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination