CN104281681A - 针对层次数据的正方化有序树图布局方法 - Google Patents
针对层次数据的正方化有序树图布局方法 Download PDFInfo
- Publication number
- CN104281681A CN104281681A CN201410523310.1A CN201410523310A CN104281681A CN 104281681 A CN104281681 A CN 104281681A CN 201410523310 A CN201410523310 A CN 201410523310A CN 104281681 A CN104281681 A CN 104281681A
- Authority
- CN
- China
- Prior art keywords
- node
- rectangle
- length
- authority value
- layout
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于信息可视化领域,具体涉及针对层次数据的正方化有序树图布局方法。其操作步骤为:A.将待可视化数据集DS中的数据,按照层次关系表示为一棵树T。B.从上向下依次对树T中的每一层节点进行处理,同一层次的同父节点经过处理后得到一个大权值节点集。C.设置一个长宽比为6:4的矩形R。D.针对得到的每一个大权值节点集,根据最短边路径原则,依次布局大权值节点集中的大权值节点。E.对每一个包含的节点个数大于2个的大权值节点进行处理,得到一个大权值节点集;然后执行步骤D的布局过程,直至所有布局节点皆为非组合节点。本发明方法可以保证生成的树图在平均长宽比、平稳性、平稳的平衡性、连续性和可读性这5项评价指标上具有良好的表现。
Description
技术领域
本发明属于信息可视化领域,具体涉及针对层次数据的正方化有序树图布局方法,用于对层次数据进行可视化。
背景技术
大数据时代,如何对大数据进行有效的显示,从而帮助人们分析数据是当今大数据处理的一个热点研究方向。大规模层次数据的可视分析研究是其中的重点之一。经典的层次数据可视化方法有节点-链接(Node-link)和树图(Treemap)两种表现形式。节点-链接能够充分表现数据的层次和关联特性。但是,由于其点线链接的结构,在布局上存在较大的空间浪费。当数据量大的时候,由于屏幕大小和像素的限制,使用节点-链接方法会引起节点覆盖的问题。树图在大规模层次数据的可视化上已经得到了广泛应用,包括经济,政治和文化传播等各个领域。通过树图技术,能够得到一个充分利用显示空间,具有一定层次和顺序关系的可视化视图。可以通过矩形的面积分析节点权值的大小;通过对矩形的颜色和纹理等属性进行标注和对节点相关属性分析,从而帮助人们对数据进行可视分析。节点-链接方法在关系性网络的可视分析中得到广泛应用,而树图在关注权值大小对比的层次数据可视化中应用更为广泛。
Squarified布局算法由Mark Burls等于1999年为解决最初的Slice and Dice中存在大量长宽比恶劣的矩形,导致长条状矩形难以识别的缺点而提出。Squarified布局算法在进行布局时,打乱了数据原本的顺序,通过对数据按权值进行排序,采取贪心策略,将权值大的节点首先进行填充,对每一个节点矩形的填充,都选择平局长宽比更接近1的方式,从而保证树图中所有矩形的平均长宽比接近1,使布局的矩形接近正方形,人们容易对其进行辨识、交互和分析。但节点的原本顺序被打乱,在布局中无规律可循。正因为该算法无序的缺点,局限了该技术的应用。Pivot布局算法由Ben Shneiderman等于2001年为了解决Squarified布局算法中无序的缺点提出的一种方法。Pivot布局算法采用分治的思想,运用pivot节点将数据集T的填充区域划分为四部分,分别为R1,RP,R2和R3,在当前的封闭矩形内进行布局。对于R1,R2和R3的区域内,若节点数量大于1个,则重复pivot节点选择进行子问题划分并布局。但是总体而言,通过分治方法,在保证了树图布局部分有序的同时,保证每个节点填充的大致位置和长宽变化在数据更新时变化较小,从而确保其布局的稳定性和稳定的平衡性,有利于对时变更新的数据进行追踪。为了使树图布局算法具有更好的连续性和可读性,方便用户对数据进行查找。Bederson等于2002年提出了Strip布局算法。对节点采取从左到右的带状顺序进行填充,从而保证布局的连续性和可读性。为了进一步提高数据的连续性,减少Strip算法中由于权值变化引起的布局不稳定,Ying Tu等于2007提出Spiral布局算法。该算法在路径上将带状路径改为螺旋形路径,从而相对于Strip布局算法提高了布局的连续性和稳定的平衡性。
总结前人的工作:Squarifeid使用排序规则,贪心选择权值最大的节点优先填充,因此得到平均长宽比非常接近1的布局;Pivot将问题分而治之,使相邻顺序的数据集中在某一个区域,具有较好的稳定性和稳定的平衡性;Strip和Spiral通过填充方向的限制,使布局效果具有很好的连续性和可读性。但现有方法都在一定程度上满足一个到两个指标,但都不能将所有的评价指标综合考虑。
发明内容
本发明目的是克服已有针对层次数据的树图布局方法,提供一种针对层次数据的正方化有序树图布局方法。该方法可以保证生成的树图在平均长宽比、平稳性、平稳的平衡性、连续性和可读性这5项评价指标上具有良好的表现。
本发明的目的是通过如下技术方案实现的。
本发明提供一种针对层次数据的正方化有序树图布局方法,对待显示的数据集(用符号DS表示)进行可视化处理,所述待显示的数据集DS是一组通过层次结构关系互相关联的数据,即层次数据;其具体操作步骤如下:
A.将待可视化数据集DS中的数据,按照层次关系表示为一棵树(用符号T表示)。
B.从上向下依次对树T中的每一层节点进行处理,同一层次的同父节点经过处理后得到一个大权值节点集,因此树T中的每一层节点进行处理后得到1个以上大权值节点集。
C.在二维平面上设置一个长宽比为6:4的矩形(用符号R表示),其面积用符号S表示。
D.针对步骤B或步骤D得到的每一个大权值节点集,根据最短边路径原则,依次布局大权值节点集中的大权值节点。
所述最短边路径原则具体为:保持连续性的情况下,采用最短边路径进行布局。所述最短边路径是对带状路径和螺旋状路径进行优化,每个节点布局时都毗邻上一个节点,并且布局方向紧靠剩余布局空间的最短边。所述带状路径是从左向右、从上到下依次布局;所述螺旋状路径是沿螺旋外环向内环依次布局;
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的操作。
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)计算得到。
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)计算得到。
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,处理下一节点;否则,结束操作。
有益效果
本发明提出的一种针对层次数据的正方化有序树图布局方法可以保证生成的树图在平均长宽比、平稳性、平稳的平衡性、连续性和可读性这5项评价指标上具有良好的表现。
附图说明
图1为本发明具体实施方式中可视化数据集DS中的数据,按照层次关系表示为一棵树T的树图;
图2为本发明具体实施方式中对树T第二层节点对应的大权值节点集合U′中的节点进行正方化有序树图布局的结果示意图;其中,图2(a)表示第1个节点处理完以后的结果示意图;图2(b)表示第2个节点处理完以后的结果示意图;图2(c)表示第3个节点处理完以后的结果示意图;图2(d)表示第4个节点处理完以后的结果示意图;图2(e)表示第5个节点处理完以后的结果示意图;图2(f)表示第6个节点处理完以后的结果示意图。
图3为本发明具体实施方式中树T第二层节点对应的大权值节点集合U′中,对于每个包含的节点个数大于2个的大权值节点采用步骤D的布局过程完成布局后,得到的布局示意图。
具体实施方式
下面结合附图和实施例,对本发明技术方案作进一步的说明。
本实施例中的待可视化数据集DS为北京市部分超市农产品的农药残留超标检出频次结果,如表1所示。
表1 北京市部分超市农产品的农药残留超标检出频次结果数据表
样品名称 | 城市 | 地区 | 超市 | 检出频次 |
葡萄 | 北京市 | 昌平区 | A农副产品批发市场(昌平区) | 5 |
葡萄 | 北京市 | 昌平区 | B农副产品批发市场(昌平区) | 4 |
葡萄 | 北京市 | 昌平区 | C物美超市(昌平区) | 6 |
番茄 | 北京市 | 昌平区 | D美廉美超市(昌平区) | 7 |
芹菜 | 北京市 | 昌平区 | E家乐福超市(昌平区) | 6 |
番茄 | 北京市 | 大兴区 | A华冠超市(大兴区) | 8 |
黄瓜 | 北京市 | 大兴区 | B沃尔玛(大兴区) | 1 |
葡萄 | 北京市 | 大兴区 | C物美超市(大兴区) | 1 |
木瓜 | 北京市 | 东城区 | A乐天玛特超市(东城区) | 10 |
芹菜 | 北京市 | 东城区 | B新世界超市(东城区) | 13 |
蘑菇 | 北京市 | 东城区 | C世纪华联超市(东城区) | 7 |
番茄 | 北京市 | 平谷区 | A峪田批发市场(平谷区) | 9 |
芹菜 | 北京市 | 平谷区 | B农副产品批发市场(平谷区) | 15 |
白菜 | 北京市 | 平谷区 | C农副产品批发市场(平谷区) | 6 |
奶白菜 | 北京市 | 朝阳区 | A卜蜂莲花超市(青年路店) | 8 |
圣女果 | 北京市 | 朝阳区 | B华堂超市(朝阳区) | 4 |
梨 | 北京市 | 朝阳区 | B华堂超市(朝阳区) | 5 |
紫甘蓝 | 北京市 | 朝阳区 | B华堂超市(朝阳区) | 7 |
苹果 | 北京市 | 朝阳区 | B华堂超市(朝阳区) | 2 |
李子 | 北京市 | 朝阳区 | B华堂超市(朝阳区) | 4 |
白菜 | 北京市 | 朝阳区 | C康家园农产品市场(朝阳区) | 16 |
油菜 | 北京市 | 朝阳区 | D欧尚超市(朝阳北路店) | 24 |
卷心菜 | 北京市 | 朝阳区 | E物美超市(青年路店) | 5 |
油菜 | 北京市 | 朝阳区 | F美廉美超市(青年路店) | 19 |
梨 | 北京市 | 朝阳区 | G沃尔玛超市(青年路店) | 6 |
油菜 | 北京市 | 丰台区 | A新发地农贸产品批发市场(丰台区) | 15 |
卷心菜 | 北京市 | 丰台区 | B岳各庄农副产品批发市场(丰台区) | 4 |
青椒 | 北京市 | 丰台区 | B岳各庄农副产品批发市场(丰台区) | 2 |
桃 | 北京市 | 丰台区 | B岳各庄农副产品批发市场(丰台区) | 9 |
黄瓜 | 北京市 | 丰台区 | B岳各庄农副产品批发市场(丰台区) | 1 |
茄子 | 北京市 | 丰台区 | B岳各庄农副产品批发市场(丰台区) | 3 |
生菜 | 北京市 | 丰台区 | C青塔农副产品批发市场(丰台区) | 12 |
芹菜 | 北京市 | 丰台区 | D五棵松农副产品批发市场(丰台区) | 7 |
苹果 | 北京市 | 丰台区 | E六里桥农副产品批发市场(丰台区) | 8 |
葡萄 | 北京市 | 海淀区 | A海淀区锦绣大地综合批发市场(海淀区) | 9 |
韭菜 | 北京市 | 海淀区 | B美廉美超市(增光路店) | 2 |
番茄 | 北京市 | 海淀区 | C美廉美超市(中关村店) | 11 |
番茄 | 北京市 | 延庆县 | 日上综合商品批发市场(延庆县) | 10 |
番茄 | 北京市 | 西城区 | 阜成门华联BHG超市(西城区) | 3 |
黄瓜 | 北京市 | 西城区 | 美廉美超市(三里河店) | 7 |
黄瓜 | 北京市 | 西城区 | 美廉美超市(三里河店) | 6 |
番茄 | 北京市 | 西城区 | 美廉美超市(三里河店) | 12 |
生菜 | 北京市 | 西城区 | 美廉美超市(三里河店) | 10 |
生菜 | 北京市 | 西城区 | 美廉美超市(三里河店) | 5 |
苹果 | 北京市 | 西城区 | 美廉美超市(三里河店) | 7 |
番茄 | 北京市 | 通州区 | A华润万家(官庄店) | 1 |
豇豆 | 北京市 | 通州区 | B家乐福超市(通州区) | 7 |
豇豆 | 北京市 | 通州区 | C沃尔玛超市(通州区) | 10 |
黄瓜 | 北京市 | 通州区 | D华润万家超市(通州区) | 12 |
采用本发明提出的针对层次数据的正方化有序树图布局方法,对上述待显示的数据集DS进行可视化操作,其具体操作步骤为:
A.将待可视化数据集DS中的数据,按照层次关系表示为一棵树T,如图1所示。树T的第一层节点为北京市农药检出的总频次,第二层节点为10个区的检出频次,第三层节点为区内各超市的检出频次,如果超市内一种以上水果蔬菜被检测出农药残留超标,则用第四层节点表示超市内各水果蔬菜的检出频次。
B.从上向下依次对树T中的每一层节点进行处理,同一层次的同父节点经过处理后得到一个大权值节点集,因此树T中的每一层节点进行处理后得到1个以上大权值节点集。
以树T的第二层节点为例,说明大权值节点集的生成过程:
B1.树T的第二层节点组成节点集U={30,10,20,30,100,60,10,20,50,30}。节点集U中的节点数量Mu=10。设置变量p、Mp、k和m,并给变量p赋初始值为0;给变量k赋初始值为1;给变量m赋初始值为2。
B2.对于当前节点集U中所有未经过处理的节点,查找其最大值节点,最大值节点的序号max=5,其值U[max]=100。给变量Mp赋值为100,并使变量p自增1。
B3.1≤k<m<max≤Mu成立,通过公式(1)计算第k个至第m个节点的节点值之和TempSumk~m=40,然后执行步骤B4的操作;
B4.|TempSumk~m-Mp|<|TempSumk~(m-1)-Mp|成立,使变量m值自增1,m=3,然后重复B3至步骤B4的操作。
B3.1≤k<m<max≤Mu成立,通过公式(1)计算第k个至第m个节点的节点值之和TempSumk~m=60,然后执行步骤B4的操作。
B4.|TempSumk~m-Mp|<|TempSumk~(m-1)-Mp|成立,使变量m值自增1,m=4,然后重复B3至步骤B4的操作。
B3.1≤k<m<max≤Mu成立,通过公式(1)计算第k个至第m个节点的节点值之和TempSumk~m=90,然后执行步骤B4的操作。
B4.|TempSumk~m-Mp|<|TempSumk~(m-1)-Mp|成立,则使变量m值自增1,m=5,然后重复B3至步骤B4操作。
B3.1≤k<m<max≤Mu不成立,将TempSumk~(m-1)作为一个新节点放入大权值节点集合U′中,U′={90}并对当前节点集U中的第k个至第m-1个节点标记为已处理节点,然后给变量k赋值为m+1,给m赋值为k+1,执行步骤B5的操作。
B5.将U[max]作为一个节点,添加至大权值节点集合U′中,U′={90,100}。然后,重复步骤B2至B5的操作,直至将原节点集U中所有节点通过合并组合添加至大权值节点集合U′,最终U′={90,100,60,30,50,30}。
采用相同的方法,对树T第三层节点和第四层节点进行处理,均可得到其对应的大权值节点集合。
C.在二维平面上设置一个长宽比为6:4的矩形R,其面积用符号S表示。
D.针对步骤B得到的每一个大权值节点集,根据最短边路径原则,依次布局大权值节点集中的大权值节点。
以树T第二层节点对应的大权值节点集合U′={90,100,60,30,50,30}为例,具体说明对大权值节点集中的大权值节点进行布局的过程。
D1.对于由树T的第二个层次的节点得到的大权值节点集,在步骤C设置的6:4的矩形R上布局节点。
D2.对U′中第s个节点进行布局,s=1。
D2.a:对当前节点s处理,当前节点s在矩形R中的对应矩形r的相邻两条边中的一条边长a=4,另一条边长b=1.5。
D2.b:确定当前节点s对应的矩形r在矩形R中的所处位置:矩形r位于剩余矩形R′中,矩形r的一条长度为a的边与剩余矩形R′的短边重合,矩形r的一条长度为b的边与剩余矩形R′的长边的一部分重合,从而确定当前节点s对应的矩形r在矩形R中的所处位置,如图2(a)所示。
D2.c:当前节点s不是最后一个节点,令a′=4;b′=1.5;然后重复步骤D2,处理下一节点。
D2.对U′中第s个节点进行布局,s=2。
由于s的值不为1并且a′≥b′时,则布局当前节点时,需调整前一节点s-1在矩形R中对应的矩形r′的相邻两条边的长度以及位置,因此,此时的当前剩余矩形R′中包含前一节点s-1在矩形R或中对应的矩形;具体执行步骤D2.1至D2.4的操作。
D2.1:当前节点s在矩形R中的对应矩形r的相邻两条边中一条边长a可根据公式(3)计算得到,l=4,另一条边长b可根据公式(4)计算得到,
D2.2:前一节点s-1在矩形R中对应的矩形r′的相邻两条边中一条边长a′=l-a=1.89,另一条边长b′=3.17。
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或中的所处位置。排布结果如图2(b)所示。
D2.5:当前节点s不是最后一个节点,则:令a′=a;b′=b;然后重复步骤D2,处理下一节点。
第3个节点处理完以后的结果如图2(c)所示;第4个节点处理完以后的结果如图2(d)所示;第4个节点处理完以后的结果如图2(d)所示;第5个节点处理完以后的结果如图2(e)所示;第6个节点处理完以后的结果如图2(f)所示;为了更清楚的显示可视化结果,使用由浅至深的灰度色填充第1个节点至第6个节点。图中R′表示剩余矩形。
E.对于包含的节点个数大于2个的大权值节点,称其为虚拟父节点;将其包含的全部节点看做为同父节点。依次对每一个包含的节点个数大于2个的大权值节点进行处理,得到一个大权值节点集;然后执行步骤D的布局过程,直至所有布局节点皆为非组合节点。
仍以树T第二层节点对应的大权值节点集合U′={90,100,60,30,50,30}为例,对于每个包含的节点个数大于2个的大权值节点采用步骤D的布局过程完成布局后,重新使用由浅至深的灰度色按节点顺序填充其所对应矩形,最终得到的布局图如图3所示。
本发明的主要内容已通过上述优选实例作了详细介绍,应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (3)
1.一种针对层次数据的正方化有序树图布局方法,对待显示的数据集DS进行可视化处理,所述待显示的数据集DS是一组通过层次结构关系互相关联的数据,即层次数据;其特征在于:其具体操作步骤如下:
A.将待可视化数据集DS中的数据,按照层次关系表示为一棵树T;
B.从上向下依次对树T中的每一层节点进行处理,同一层次的同父节点经过处理后得到一个大权值节点集,因此树T中的每一层节点进行处理后得到1个以上大权值节点集;
C.在二维平面上设置一个长宽比为6:4的矩形R,其面积用符号S表示;
D.针对步骤B或步骤D得到的每一个大权值节点集,根据最短边路径原则,依次布局大权值节点集中的大权值节点;
所述最短边路径原则具体为:保持连续性的情况下,采用最短边路径进行布局;所述最短边路径是对带状路径和螺旋状路径进行优化,每个节点布局时都毗邻上一个节点,并且布局方向紧靠剩余布局空间的最短边;所述带状路径是从左向右、从上到下依次布局;所述螺旋状路径是沿螺旋外环向内环依次布局;
E.对于包含的节点个数大于2个的大权值节点,称其为虚拟父节点;将其包含的全部节点看做为同父节点;依次对每一个包含的节点个数大于2个的大权值节点进行处理,得到一个大权值节点集;然后执行步骤D的布局过程,直至所有布局节点皆为非组合节点;
经过上述步骤的操作,即可完成对待显示的数据集DS的正方化有序树图布局。
2.如权利要求1所述的一种针对层次数据的正方化有序树图布局方法,其特征在于:步骤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的操作;
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'中的节点称为大权值节点。
3.如权利要求1或2所述的一种针对层次数据的正方化有序树图布局方法,其特征在于:步骤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)计算得到;
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)计算得到;
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,处理下一节点;否则,结束操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410523310.1A CN104281681B (zh) | 2014-10-07 | 2014-10-07 | 针对层次数据的正方化有序树图布局方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410523310.1A CN104281681B (zh) | 2014-10-07 | 2014-10-07 | 针对层次数据的正方化有序树图布局方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104281681A true CN104281681A (zh) | 2015-01-14 |
CN104281681B CN104281681B (zh) | 2017-11-17 |
Family
ID=52256554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410523310.1A Active CN104281681B (zh) | 2014-10-07 | 2014-10-07 | 针对层次数据的正方化有序树图布局方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104281681B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512218A (zh) * | 2015-11-30 | 2016-04-20 | 北京工商大学 | 一种关联层次数据的可视化方法和应用 |
CN105573836A (zh) * | 2016-02-23 | 2016-05-11 | 中国农业银行股份有限公司 | 数据处理方法及装置 |
CN115345125A (zh) * | 2022-10-19 | 2022-11-15 | 中电云数智科技有限公司 | 一种基于树形大纲生成推荐布局的方法及终端设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4613946A (en) * | 1984-06-07 | 1986-09-23 | Forman Ernest H | Method and apparatus for generating hierarchical displays |
CN103164520A (zh) * | 2013-03-08 | 2013-06-19 | 山东大学 | 一种面向层次化数据的交互可视方法及装置 |
-
2014
- 2014-10-07 CN CN201410523310.1A patent/CN104281681B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4613946A (en) * | 1984-06-07 | 1986-09-23 | Forman Ernest H | Method and apparatus for generating hierarchical displays |
CN103164520A (zh) * | 2013-03-08 | 2013-06-19 | 山东大学 | 一种面向层次化数据的交互可视方法及装置 |
Non-Patent Citations (2)
Title |
---|
陈谊等: "分块排序的正方化树图布局算法", 《计算机辅助设计与图形学学报》 * |
陈谊等: "树图布局算法的比较与优化研究", 《计算机辅助设计与图形学学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512218A (zh) * | 2015-11-30 | 2016-04-20 | 北京工商大学 | 一种关联层次数据的可视化方法和应用 |
CN105512218B (zh) * | 2015-11-30 | 2018-11-23 | 北京工商大学 | 一种关联层次数据的可视化方法和应用 |
CN105573836A (zh) * | 2016-02-23 | 2016-05-11 | 中国农业银行股份有限公司 | 数据处理方法及装置 |
CN105573836B (zh) * | 2016-02-23 | 2018-12-28 | 中国农业银行股份有限公司 | 数据处理方法及装置 |
CN115345125A (zh) * | 2022-10-19 | 2022-11-15 | 中电云数智科技有限公司 | 一种基于树形大纲生成推荐布局的方法及终端设备 |
CN115345125B (zh) * | 2022-10-19 | 2023-02-17 | 中电云数智科技有限公司 | 一种基于树形大纲生成推荐布局的方法及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104281681B (zh) | 2017-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zeraatpisheh et al. | Digital mapping of soil properties using multiple machine learning in a semi-arid region, central Iran | |
Knoll et al. | Nation-wide estimation of groundwater redox conditions and nitrate concentrations through machine learning | |
Quan et al. | Urban land expansion in Quanzhou city, China, 1995–2010 | |
Bai et al. | An efficient and comprehensive method for drainage network extraction from DEM with billions of pixels using a size-balanced binary search tree | |
CN102629271B (zh) | 一种基于堆叠树图的复杂数据可视化方法及设备 | |
Wang et al. | Comparative analysis of land use/cover change trajectories and their driving forces in two small watersheds in the western Loess Plateau of China | |
CN105354335B (zh) | 针对时变层次数据的时变树图布局方法和应用 | |
Guitet et al. | Landform and landscape mapping, French Guiana (South america) | |
CN101923707B (zh) | 一种基于分水岭算法的高空间分辨率多光谱遥感图像分割方法 | |
Fang et al. | Moisture stress of a hydrological year on tree growth in the Tibetan Plateau and surroundings | |
CN104318270A (zh) | 一种基于modis时间序列数据的土地覆盖分类方法 | |
He et al. | Regional land suitability assessment for tree crops using remote sensing and GIS | |
Liu et al. | Sensitivity of correlation structure of class-and landscape-level metrics in three diverse regions | |
CN104281681A (zh) | 针对层次数据的正方化有序树图布局方法 | |
Aquino et al. | State-space approach to evaluate effects of land levelling on the spatial relationships of soil properties of a lowland area | |
CN105512218A (zh) | 一种关联层次数据的可视化方法和应用 | |
Suissa et al. | Diversity patterns of Neotropical ferns: revisiting Tryon's centers of richness and endemism | |
CN105404643A (zh) | 针对具有多维属性的层次结构数据的可视化方法和应用 | |
Haghverdi et al. | Deriving data mining and regression based water-salinity production functions for spring wheat (Triticum aestivum) | |
González-González et al. | A 30 m-resolution land use-land cover product for the Colombian Andes and Amazon using cloud-computing | |
Tsonkova et al. | Application of partial order ranking to identify enhancement potentials for the provision of selected ecosystem services by different land use strategies | |
Al-Yamani et al. | A land suitability study for the sustainable cultivation of the halophyte Salicornia bigelovii: the case of Abu Dhabi, UAE | |
Chu et al. | Spatial patterns and associations of dominant woody species in desert–oasis ecotone of South Junggar Basin, NW China | |
Lee et al. | Analysis of differences in vegetation phenology cycle of abandoned farmland, using harmonic analysis of time-series vegetation indices data: the case of Gwangyang City, South Korea | |
Sun | Exploring edge complexity in remote-sensing vegetation index imageries |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |