一种可分级分组的矩形关联图布局方法及装置制造方法及图纸

技术编号:35782087 阅读:19 留言:0更新日期:2022-12-01 14:27
本申请提出了一种可分级分组的矩形关联图布局方法及装置,该方法包括S1、构建树形数据结构,预设树形数据结构的分类层级、不同层级的间距以及布局矩形宽高比;S2、获取数据,根据属性将数据进行分级分组,将分级分组后的数据存储于步骤S1构建的树形数据结构,树形数据结构的叶子节点为数据的分组结果,树形数据结构的非叶子节点为数据的分级结果;S3、遍历所有节点,判断是否只有叶子节点,如果只有叶子节点,则将叶子节点按照预定的间距和矩形宽高比进行位置计算后放置,如果并非只有叶子节点,则执行步骤S4;以及S4、判断非叶子节点是否是根节点,如果不是根节点,则将非叶子节点作为新的叶子节点,返回执行步骤S3,如果是根节点,则结束操作。则结束操作。则结束操作。

【技术实现步骤摘要】
一种可分级分组的矩形关联图布局方法及装置


[0001]本申请涉及计算机数据可视化
,具体涉及一种可分级分组的矩形关联图布局方法及装置。

技术介绍

[0002]随着数据的爆炸式增长,对数据进行分析,借助可视化手段对分析结果展示能让信息变得更加直观、友好,用户可以从不同的维度观察数据,从而对数据进行更深入的观察和分析。在表达实体关联关系时,常用关联图进行展示。现在的关联图布局算法像网络布局、圆形布局、对称布局等等,主要目标是完成指定形状的平均分布,节点位置随机。如以下场景,现在布局算法略有不足:
[0003]场景1:布局中能快速定位即时通讯类型软件使用频率最高的3款App
[0004]传统布局算法节点位置随机,且所有节点平均分布,需要通过其他方法结合并过滤展示,操作比较麻烦,且如果想知道多个类型,实现复杂度上升。
[0005]场景2:布局中能快速定位未收集到的数据分类且已知类型正常显示
[0006]同场景1类似,仅单纯显示已知或未知可满足,但同时显示且突出显示,则无法满足需求。
[0007]鉴于此,本专利技术提出一种可分级分组的矩形关联图布局方法及装置,能够支持节点根据需要的属性、权值进行分级和分组,支持布局显示时能明显辨别归属哪个组和哪个级别,且相同数据布局后节点位置保持一样。

技术实现思路

[0008]为了解决现有布局算法不能对节点需要根据不同属性、权值进行分级和分组,布局展示时无法明显区分出来,相同数据无法在布局后节点显示一样的位置,无法满足查找并突出显示未知类型数据等问题,本申请提供一种可分级分组的矩形关联图布局方法及装置,以解决上述技术缺陷问题。
[0009]根据本专利技术的一个方面提出了一种可分级分组的矩形关联图布局方法,该方法包括以下步骤:
[0010]S1、构建树形数据结构,预设树形数据结构的分类层级、不同层级的间距以及布局矩形宽高比;
[0011]S2、获取数据,根据属性将数据进行分级分组,将分级分组后的数据存储于步骤S1构建的树形数据结构中,其中,树形数据结构的叶子节点为数据的分组结果,树形数据结构的非叶子节点为数据的分级结果;
[0012]S3、遍历所有节点,判断是否只有叶子节点,如果只有叶子节点,则将叶子节点按照预定的间距和矩形宽高比进行位置计算后放置,如果并非只有叶子节点,则执行步骤S4;以及
[0013]S4、判断非叶子节点是否是根节点,如果不是根节点,则将非叶子节点作为新的叶
子节点,返回执行步骤S3,如果是根节点,则结束操作。
[0014]通过上述技术方案,能够实现任意次关联关系分类和排序后,按分类层级以矩形或层级方式进行布局展示。
[0015]在具体的实施例中,对分组结果和分级结果附加权值属性,通过权值的大小和排序控制叶子节点和非叶子节点在分级数据中的显示位置。
[0016]通过上述技术方案,对节点附加权值可一定程度上控制节点布局位置,从可视化上可直观查寻具体类型内容,且相同数据和相同算法参数布局后节点位置一样。
[0017]在具体的实施例中,步骤S3包括以下子步骤:
[0018]S31、遍历所有节点,判断是否只有叶子节点,如果只有叶子节点,则执行步骤S32,如果并非只有叶子节点,则执行步骤S4;
[0019]S32、计算所在块宽度、计算所在块的左上角偏移坐标,以及遍历所在块的所有叶子节点并放置位置;以及
[0020]S33、更新步骤S32中放置位置的结果,返回继续执行步骤S31。
[0021]通过上述计算方案,计算偏移坐标以便放置叶子节点的位置。
[0022]在具体的实施例中,步骤S4包括以下子步骤:
[0023]S41、如果所有节点并非只有叶子节点,则判断所有节点是否处理完,如果处理完,则执行步骤S42,如果未处理完,则返回继续执行步骤S3;以及
[0024]S42、判断非叶子节点是否是根节点,如果不是根节点,则则将非叶子节点作为新的叶子节点,返回继续执行步骤S3,如果是,则结束操作。
[0025]通过上述技术方案实现循环操作,直至没有节点处理为止。
[0026]在具体的实施例中,步骤S2包括以下子步骤:
[0027]S21、获取数据,根据属性将数据进行分级分组,并对数据进行排序和整理;
[0028]S22、将分级分组后的数据存储于步骤S1构建的树形数据结构中,并添加树形数据结构的虚拟根节点;以及
[0029]S23、树形数据结构的叶子节点为数据的分组结果,树形数据结构的非叶子节点为数据的分级结果。
[0030]通过上述技术方案,能够提高数据存储、读取的效率。
[0031]在具体的实施例中,步骤S1中的布局矩形宽高比为3:2。
[0032]第二方面,本申请提供了一种可分级分组的矩形关联图布局装置,装置包括:
[0033]构建树形数据结构模块,用于构建树形数据结构,预设树形数据结构的分类层级、不同层级的间距以及布局矩形宽高比;以及
[0034]数据分级分组模块,用于获取数据,根据属性将数据进行分级分组,将分级分组后的数据存储于构建树形数据结构模块构建的树形数据结构中,其中,树形数据结构的叶子节点为数据的分组结果,树形数据结构的非叶子节点为数据的分级结果;以及
[0035]位置放置模块,用于遍历所有节点,判断是否只有叶子节点,如果只有叶子节点,则将叶子节点按照预定的间距和矩形宽高比进行位置计算后放置,如果并非只有叶子节点,则执行非叶子节点处理模块中的操作;以及
[0036]非叶子节点处理模块,用于判断非叶子节点是否是根节点,如果不是根节点,则将非叶子节点作为新的叶子节点,返回执行位置放置模块的操作,如果是根节点,则结束操
作。
[0037]在具体的实施例中,该装置还包括附加权值模块,用于对分组结果和分级结果附加权值属性,通过权值的大小和排序控制叶子节点和非叶子节点在分级数据中的显示位置。
[0038]在具体的实施例中,位置放置模块包括以下单元:
[0039]判断单元,遍历所有节点,判断是否只有叶子节点,如果是,则执行计算单元的操作,如果不是,则执行非叶子节点处理模块的操作;
[0040]计算单元,如果只有叶子节点,则计算所在块宽度、计算所在块左上角偏移坐标,以及遍历所在块的所有叶子节点并放置位置;以及
[0041]更新单元,更新计算单元中放置位置的结果,返回继续执行判断单元的操作。
[0042]第三方面,本申请提供了一种计算机可读存储介质,该介质中存储有计算机程序,在计算机程序被处理器执行时,实施如上述中任一项的方法。
[0043]与现有技术相比,本专利技术的有益成果在于:
[0044]本专利技术可以应用于根据指定策略控制节点位置需求,支持数据任意层分级分组布局展示需求,通过权重可以控制分级分组在布局中显示位置,相同数据多次布局节点位置显示一致。另外,通过分组和权值,可以快速本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可分级分组的矩形关联图布局方法,其特征在于,包括以下步骤:S1、构建树形数据结构,预设所述树形数据结构的分类层级、不同层级的间距以及布局矩形宽高比;S2、获取数据,根据属性将所述数据进行分级分组,将分级分组后的数据存储于步骤S1构建的树形数据结构中,其中,所述树形数据结构的叶子节点为所述数据的分组结果,所述树形数据结构的非叶子节点为所述数据的分级结果;S3、遍历所有节点,判断是否只有叶子节点,如果只有叶子节点,则将所述叶子节点按照预定的间距和矩形宽高比进行位置计算后放置,如果并非只有叶子节点,则执行步骤S4;以及S4、判断所述非叶子节点是否是根节点,如果不是根节点,则将所述非叶子节点作为新的叶子节点,返回执行步骤S3,如果是根节点,则结束操作。2.根据权利要求1所述的可分级分组的矩形关联图布局方法,其特征在于,对所述分组结果和所述分级结果附加权值属性,通过所述权值的大小和排序控制所述叶子节点和所述非叶子节点在分级数据中的显示位置。3.根据权利要求1所述的可分级分组的矩形关联图布局方法,其特征在于,步骤S3包括以下子步骤:S31、遍历所有节点,判断是否只有叶子节点,如果只有叶子节点,则执行步骤S32,如果并非只有叶子节点,则执行步骤S4;S32、计算所在块宽度、计算所述所在块的左上角偏移坐标,以及遍历所述所在块的所有叶子节点并放置位置;以及S33、更新步骤S32中所述放置位置的结果,返回继续执行步骤S31。4.根据权利要求1所述的可分级分组的矩形关联图布局方法,其特征在于,步骤S4包括以下子步骤:S41、如果所述所有节点并非只有叶子节点,则判断所述所有节点是否处理完,如果处理完,则执行步骤S42,如果未处理完,则返回继续执行步骤S3;以及S42、判断所述非叶子节点是否是根节点,如果不是根节点,则则将所述非叶子节点作为新的叶子节点,返回继续执行步骤S3,如果是,则结束操作。5.根据权利要求1所述的可分级分组的矩形关联图布局方法,其特征在于,步骤S2包括以下子步骤:S21、获取数据,根据属性将所述数据进行分级分组,并对所述数据进行排序和整理;S22、将分级分组后的数据存储于步骤S1构建的树形数据结构中,并添加所述树...

【专利技术属性】
技术研发人员:李福杉薛艳英李国庆邱宗炽邹煌明
申请(专利权)人:厦门市美亚柏科信息股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1