家族图谱渲染方法、装置及存储介质与流程

摘要: 本技术实施例涉及计算机,具体涉及一种家族图谱渲染方法、装置及存储介质。背景技术:1、家族图谱是心理学、社会学、遗传学等领域的重要分析工具,用于展示家族成员之间的...
家族图谱渲染方法、装置及存储介质与流程

本技术实施例涉及计算机,具体涉及一种家族图谱渲染方法、装置及存储介质。

背景技术:

1、家族图谱是心理学、社会学、遗传学等领域的重要分析工具,用于展示家族成员之间的血缘关系、婚姻关系等信息。

2、相关技术中,家族图谱的渲染方法主要关注家族成员对应的节点的布局定位问题,例如通过兄弟节点优先排序、双曲树投影等算法实现节点位置的自动计算。然而,相关技术仍存在以下缺陷:

3、相关技术中的家族图谱中,每个家族成员对应的节点通常仅能展示家族成员的姓名、性别等基础数据信息,而家族成员的健康状态(如是否患有心血管疾病、是否有遗传病史)、行为特征(如是否酗酒、是否有法律纠纷)、关系质量(如夫妻关系是否疏远、是否存在暴力倾向)等大量数据信息无法在节点或连线上直观呈现。用户需要反复查阅原始数据记录或手动在图上添加标注,才能完成分析工作,导致家族图谱的分析效率低下。

技术实现思路

1、为了解决上述技术问题,本技术实施例提供了一种家族图谱渲染方法、装置及存储介质。

2、第一方面,本技术实施例提供了一种家族图谱渲染方法,该家族图谱渲染方法包括:

3、获取目标家族中各家族成员的数据信息;所述家族成员至少包括当事人及与当事人关联的至少一代家族成员,每代家族成员中包括至少一个家族成员,所述数据信息包括对应的家族成员的至少一个维度的数据;

4、确定所述当事人对应的节点的中心位置为坐标原点,根据预设的垂直定位规则及水平定位规则确定各所述家族成员对应的节点的中心位置;所述垂直定位规则用于指示不同代家族成员对应的节点的中心位置的纵坐标与所述坐标原点的纵坐标之间的距离关系,所述水平定位规则用于指示属于同一代的家族成员的节点的中心位置的横坐标与所述坐标原点之间的横坐标距离关系;

5、基于各所述家族成员对应的节点的中心位置,及预设的数据信息与渲染符号的映射关系,生成所述目标家族的家族图谱;所述映射关系包括以下至少一项:将所述数据信息中的第一维度的数据渲染为节点的形态符号、将所述数据信息中第二维度的数据渲染为节点的形态符号的填色或/和附加标记、将所述数据信息中第三维度的数据渲染为节点的形态符号的文本标签、将所述数据信息中的第四维度的数据渲染为节点的形态符号之间的连线形态。

6、在一些实施例中,所述垂直定位规则包括:

7、将各所述家族成员划分为十一个垂直层级,每个垂直层级对应一个初始纵坐标,相邻层级的纵坐标之间的距离为第一距离;

8、所述十一个垂直层级分别为曾祖辈层、曾祖辈兄弟姐妹层、祖辈层、祖辈前任的子女层、祖辈兄弟姐妹层、父母兄弟姐妹层、父母层、父母前任的子女层、兄弟姐妹层、当事人层、当事人子女层。

9、在一些实施例中,所述水平定位规则包括:

10、针对所述垂直层级中的所述当事人层,所述当事人的现任配偶对应的节点的中心位置的横坐标为性别方向系数与第二距离的乘积,当事人的前任配偶对应的节点的中心位置的横坐标为所述性别方向系数、婚姻顺序索引与所述第二距离的乘积;其中,所述性别方向系数包括大小相等,符号相反的男性方向系数与女性方向系数;

11、针对所述垂直层级中的所述曾祖辈兄弟姐妹层、所述祖辈兄弟姐妹层、所述兄弟姐妹层、所述祖辈前任的子女层、所述父母前任的子女层、所述当事人子女层中的任一垂直层级,所述垂直层级中的家族成员对应的节点按年纪大小进行排序,从当前所述垂直层级包含的家族成员的父、母所对应的两个节点的中心位置向两侧依次排布,且当前所述垂直层级中相邻的家族成员对应的节点的横坐标之间的距离为第三距离;所述第三距离小于所述第二距离。

12、在一些实施例中,所述文本标签渲染在对应的节点的形态符号的下方;

13、所述基于各所述家族成员对应的节点的中心位置,及预设的数据信息与渲染符号的映射关系,生成所述目标家族的家族图谱,包括:

14、遍历各所述垂直层级,按照预设遍历规则更新各所述垂直层级中各所述家族成员对应的节点的中心位置的横坐标;

15、基于各所述家族成员对应的节点的中心位置的更新后横坐标,及对应的节点的中心位置的坐标,生成所述目标家族的家族图谱;

16、其中,所述预设遍历规则为:

17、针对当前遍历的所述垂直层级,获取所述垂直层级中各节点的宽度;所述节点的宽度指对应的节点的形态符号的宽度与文本标签的宽度中的较大值;

18、从所述垂直层级前两个相邻的节点的开始,依次遍历所述垂直层级中相邻的两个节点,根据当前遍历的相邻的两个节点中各节点的宽度,及当前遍历的相邻的两个节点的中心位置的横坐标,判断当前遍历的相邻的两个节点之间是否存在重叠;

19、若判断结果为是,对于存在重叠的节点,按照预设偏移规则偏移重叠的节点;所述预设偏移规则为:将存在重叠的节点中位于右侧的节点向右偏移预设偏移步长;

20、对于偏移后的节点,按照所述预设偏移步长更新所述偏移后的节点的中心位置横坐标,直至当前遍历的所述垂直层级中不存在重叠的节点。

21、在一些实施例中,所述文本标签的宽度的确定流程为:

22、确定所述文本标签中每行文本标签行的宽度;

23、确定宽度最大的文本标签行为所述文本标签的宽度;

24、其中,文本标签行的宽度的确定流程为:

25、获取所述文本标签行中各字符的统一码unicode范围;

26、根据各所述字符的unicode范围,确定各所述字符的字符类型;

27、根据各所述字符的字符类型,确定各所述字符类型包含的字符个数;

28、根据各所述字符类型包含的字符个数,及各所述字符类型的预设宽度系数,确定所述文本标签行的宽度。

29、在一些实施例中,所述第三维度的数据包括以下数据类型中的至少一个:

30、对应的家族成员的姓名、年龄或/和死亡信息、职业、关键事件或/和关键经历、家族关系、备注;

31、所述将所述数据信息中第三维度的数据渲染为节点的形态符号的文本标签,包括:

32、按照所述第三维度的数据中的数据类型逐行渲染所述文本标签,在渲染的过程中,判断当前渲染的文本标签行的宽度是否大于预设宽度;其中,一种数据类型对应一个文本标签行;

33、若当前渲染的文本标签行的宽度大于预设宽度,则对当前渲染的文本标签行进行拆行操作;其中,所述拆行操作为:判断当前渲染的文本标签行中是否存在预设的断点字符;若存在,则在所述断点字符处进行拆行;若不存在,则在超出所述预设宽度的位置强制拆行,并在拆行后的文本标签行末添加连字符。

34、在一些实施例中,第一方面提供的方法还包括:

35、响应于任一家族成员的数据信息发生变更,基于预设的数据信息与渲染符号的映射关系,更新对应的家族成员的渲染符号。

36、在一些实施例中,所述第一维度为性别,不同性别的家族成员对应的节点的形态符号不同;

37、所述第二维度为医疗维度或/和行为特征维度,不同疾病的家族成员对应的填色区域或/和附加标记不同;

38、所述第四维度为家族关系维度,不同家族关系的家族成员之间的连线形态不同。

39、第二方面,本技术实施例提供了一种家族图谱渲染装置,该家族图谱渲染装置包括:

40、获取模块,用于获取目标家族中各家族成员的数据信息;所述家族成员至少包括当事人及与当事人关联的至少一代家族成员,每代家族成员中包括至少一个家族成员,所述数据信息包括对应的家族成员的至少一个维度的数据;

41、节点中心位置确定模块,用于确定所述当事人对应的节点的中心位置为坐标原点,根据预设的垂直定位规则及水平定位规则确定各所述家族成员对应的节点的中心位置;所述垂直定位规则用于指示不同代家族成员对应的节点的中心位置的纵坐标与所述坐标原点的纵坐标之间的距离关系,所述水平定位规则用于指示属于同一代的家族成员的节点的中心位置的横坐标与所述坐标原点之间的横坐标距离关系;

42、渲染模块,用于基于各所述家族成员对应的节点的中心位置,及预设的数据信息与渲染符号的映射关系,生成所述目标家族的家族图谱;所述映射关系包括以下至少一项:将所述数据信息中的第一维度的数据渲染为节点的形态符号、将所述数据信息中第二维度的数据渲染为节点的形态符号的填色或/和附加标记、将所述数据信息中第三维度的数据渲染为节点的形态符号的文本标签、将所述数据信息中的第四维度的数据渲染为节点的形态符号之间的连线形态。

43、第二方面,本技术实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行第一方面中任一项所述的方法。

44、本技术实施例提供的家族图谱渲染方法、装置及存储介质,通过将所述数据信息中的第一维度的数据渲染为节点的形态符号、将所述数据信息中第二维度的数据渲染为节点的形态符号的填色或/和附加标记、将所述数据信息中第三维度的数据渲染为节点的形态符号的文本标签、将所述数据信息中的第四维度的数据映射为节点的形态符号之间的连线形态,与相关技术中,家族图谱仅能展示家族成员的身份信息和家族关系相比,本技术能够将家族成员多维度数据自动映射为多样化的图形符号,并在节点和连线上直观呈现。用户无需查阅外部记录或手动添加标注,即可从家族图谱中直接获取丰富的分析信息,提高了家族图谱的分析效率和信息密度。

45、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。