[发明专利]针对层次数据的正方化有序树图布局方法有效
申请号: | 201410523310.1 | 申请日: | 2014-10-07 |
公开(公告)号: | CN104281681B | 公开(公告)日: | 2017-11-17 |
发明(设计)人: | 陈谊;胡海云;甄远刚;刘瑞军 | 申请(专利权)人: | 北京工商大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京理工大学专利中心11120 | 代理人: | 张利萍 |
地址: | 100048*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于信息可视化领域,具体涉及针对层次数据的正方化有序树图布局方法。其操作步骤为A.将待可视化数据集DS中的数据,按照层次关系表示为一棵树T。B.从上向下依次对树T中的每一层节点进行处理,同一层次的同父节点经过处理后得到一个大权值节点集。C.设置一个长宽比为64的矩形R。D.针对得到的每一个大权值节点集,根据最短边路径原则,依次布局大权值节点集中的大权值节点。E.对每一个包含的节点个数大于2个的大权值节点进行处理,得到一个大权值节点集;然后执行步骤D的布局过程,直至所有布局节点皆为非组合节点。本发明方法可以保证生成的树图在平均长宽比、平稳性、平稳的平衡性、连续性和可读性这5项评价指标上具有良好的表现。 | ||
搜索关键词: | 针对 层次 数据 正方 有序 布局 方法 | ||
【主权项】:
一种针对层次数据的正方化有序树图布局方法,对待显示的数据集DS进行可视化处理,所述待显示的数据集DS是一组通过层次结构关系互相关联的数据,即层次数据;其特征在于:其具体操作步骤如下:A.将待可视化数据集DS中的数据,按照层次关系表示为一棵树T;B.从上向下依次对树T中的每一层节点进行处理,同一层次的同父节点经过处理后得到一个大权值节点集,因此树T中的每一层节点进行处理后得到1个以上大权值节点集;C.在二维平面上设置一个长宽比为6:4的矩形R,其面积用符号S表示;D.针对步骤B得到的每一个大权值节点集,根据最短边路径原则,依次布局大权值节点集中的大权值节点;所述最短边路径原则具体为:保持连续性的情况下,采用最短边路径进行布局;所述最短边路径是对带状路径和螺旋状路径进行优化,每个节点布局时都毗邻上一个节点,并且布局方向紧靠剩余布局空间的最短边;所述带状路径是从左向右、从上到下依次布局;所述螺旋状路径是沿螺旋外环向内环依次布局;E.对于包含的节点个数大于2个的大权值节点,称其为虚拟父节点;将其包含的全部节点看做为同父节点;依次对每一个包含的节点个数大于2个的大权值节点进行处理,得到一个大权值节点集;然后执行步骤D的布局过程,直至所有布局节点皆为非组合节点;经过上述步骤的操作,即可完成对待显示的数据集DS的正方化有序树图布局;步骤B中所述对树T中的同一层次的节点进行处理后得到大权值节点集的具体操作步骤为:B1.将当前节点的所有兄弟节点,记作节点集U;节点集U中的节点数量用符号Mu表示;设置变量p、Mp、k和m,并给变量p赋初始值为0;给变量k赋初始值为1;给变量m赋初始值为2;B2.对于当前节点集U中所有未经过处理的节点,查找其最大值节点,最大值节点的序号用符号max表示,其值用符号U[max]表示;给变量Mp赋值为U[max],并使变量p自增1;B3.判断1≤k<m<max≤Mu是否成立,如成立,则通过公式(1)计算第k个至第m个节点的节点值之和TempSumk~m,然后执行步骤B4的操作;否则,将TempSumk~(m‑1)作为一个新节点放入大权值节点集合U'中,并对当前节点集U中的第k个至第m‑1个节点标记为已处理节点,然后给变量k赋值为m+1,给m赋值为k+1,执行步骤B5的操作;TempSumk~m=Σi=kmU[i]---(1)]]>B4.判断|TempSumk~m‑Mp|<|TempSumk~(m‑1)‑Mp|是否成立,如成立,则使变量m值自增1,然后重复B3至步骤B4的操作;否则,将TempSumk~(m‑1)作为一个新节点放入大权值节点集合U'中,并对当前节点集U中的第k个至第m‑1个节点标记为已处理节点,然后给变量k赋值为m,给m赋值为k+1,然后重复B3至步骤B4的操作;B5.将U[max]作为一个节点,添加至大权值节点集合U'中,并对当前节点集U中的第max个节点标记为已处理节点;然后,重复步骤B2至B5的操作,直至将原节点集U中所有节点通过合并组合添加至大权值节点集合U';经过步骤B1至B5的操作,得到的大权值节点集合U'中的节点称为大权值节点;步骤D中所述针对每一个大权值节点集,根据优化后的最短路径,依次布局大权值节点集中的大权值节点的具体操作步骤为:D1.对于由树T的第二个层次的节点得到的大权值节点集,在步骤C设置的6:4的矩形R上布局节点;对于其它大权值节点集,在其父节点或虚拟父节点对应的矩形中布局节点;D2.依次对大权值节点集合U'中的每一个节点进行处理,得到当前节点在矩形R或中对应矩形r的相邻两条边的长度和所处位置;用符号s表示当前节点的序号,用符号U'[s]表示当前节点s的节点值,用符号SUMU'表示大权值节点集合U'中所有节点值的和,用符号MU'表示大权值节点集合U'中的节点数量,1≤s≤MU';矩形r相邻两条边的长度,分别用符号a和b表示;前一节点s‑1在矩形R或中对应矩形r'的相邻两条边的长度,分别用符号a'和b'表示;对当前节点进行处理时,分成两种情况处理:情况1:当s的值为1或者a'<b'时,执行步骤D2.a至D2.c的操作;D2.a:对当前节点s处理,为其在矩形R或的当前剩余部分中分配一个矩形r;矩形R或的当前剩余部分仍为矩形,称为剩余矩形R',用符号l表示剩余矩形R'的短边的长度,则:当前节点s在矩形R或中的对应矩形r的相邻两条边中的一条边长a=l,另一条边长b可根据公式(2)计算得到;b=Sa×U′[s]SUMU′---(2)]]>D2.b:确定当前节点s对应的矩形r在矩形R或中的所处位置:矩形r位于剩余矩形R'中,与前一节点s‑1对应的矩形相邻,并且矩形r的一条长度为a的边与剩余矩形R'的短边重合,矩形r的一条长度为b的边与剩余矩形R'的长边的一部分重合,从而确定当前节点s对应的矩形r在矩形R或中的所处位置;D2.c:如当前节点s不是最后一个节点,则:令a'=a;b'=b;然后重复步骤D2,处理下一节点;否则,结束操作;情况2:当s的值不为1并且a'≥b'时,则布局当前节点时,需调整前一节点s‑1在矩形R或中对应的矩形r'的相邻两条边的长度以及位置,因此,此时的当前剩余矩形R'中包含前一节点s‑1在矩形R或中对应的矩形;具体执行步骤D2.1至D2.4的操作;D2.1:当前节点s在矩形R或中的对应矩形r的相邻两条边中一条边长a可根据公式(3)计算得到,另一条边长b可根据公式(4)计算得到;a=l×U′[s]U′[s]+U′[s-1]---(3)]]>b=Sl×U′[s]+U′[s-1]SUMU′---(4)]]>D2.2:前一节点s‑1在矩形R或中对应的矩形r'的相邻两条边中一条边长a′=l‑a,另一条边长b′=b;D2.3:确定前一节点s‑1对应的矩形r'在矩形R或中的所处位置:矩形r'位于剩余矩形R'中,与节点s‑2对应的矩形相邻,并且矩形r'的一条长度为a'的边与剩余矩形R'的短边的一部分重合,矩形r'的一条长度为b'的边与剩余矩形R'的长边的一部分重合,从而确定前一节点s‑1对应的矩形r'在矩形R或中的所处位置;D2.4:确定当前节点s对应的矩形r在矩形R或中的所处位置:矩形r位于剩余矩形R'中,与前一节点s‑1对应的矩形相邻,并且矩形r的一条长度为b的边与剩余矩形R'的长度为b'的边重合,矩形r与矩形r'相互不重叠,从而确定当前节点s对应的矩形r在矩形R或中的所处位置;D2.5:如当前节点s不是最后一个节点,则:令a'=a;b'=b;然后重复步骤D2,处理下一节点;否则,结束操作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工商大学,未经北京工商大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410523310.1/,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置