图形填充方法、装置、计算机设备和存储介质与流程

文档序号:17332494发布日期:2019-04-05 22:10阅读:158来源:国知局
图形填充方法、装置、计算机设备和存储介质与流程

本申请涉及计算机技术领域,特别是涉及一种图形填充方法、装置、计算机设备和存储介质。



背景技术:

随着计算机技术的发展,出现了越来越多的数据,为了更好地表达数据之间的大小关系,将数据转化成图形进行填充。然而,大量的数据转化成的图形大小参差不齐,在图形填充的过程中很容易出现错误,存在准确率低下的问题。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高图形填充准确率的图形填充方法、装置、计算机设备和存储介质。

一种图形填充方法,所述方法包括:

获取数据集及对应的矩形区域,其中,所述数据集中的数据包括已填充数据和未填充数据,所述矩形区域的面积是根据数据集中包含的数据总和得到的;

在每次填充开始时,获取所述矩形区域中的未填充区域;

从所述数据集中读取未填充数据,并在所述未填充区域中标记所述未填充数据对应的第一矩形块;

每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;

将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;

直至将所述数据集中的所有未填充数据对应的目标矩形块填充到所述矩形区域中时完成填充。

在其中一个实施例中,所述获取数据集及对应的矩形区域,包括:

获取数据集及对应的矩形区域;

将所述数据集中的数据按照大小进行排列;

所述从所述数据集中读取未填充数据,包括:

按照数据集中的数据的排列顺序依次读取未填充数据。

在其中一个实施例中,所述从所述数据集中读取未填充数据,并在所述未填充区域中标记所述未填充数据对应的第一矩形块,包括:

将所述未填充区域的各个边长进行比较,获取最小边长作为目标边长,并将垂直于所述目标边长的方向作为目标方向;

从所述数据集中读取未填充数据;

以所述目标边长为起始边长,按照所述目标方向在所述未填充区域中标记所述未填充数据对应的第一矩形块。

在其中一个实施例中,所述每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块,包括:

每标记一个第一矩形块时,根据本次填充中读取的未填充数据对应的比例,将所述起始边长进行切割;

按照切割后的起始边长,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块。

在其中一个实施例中,所述将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充,包括:

获取各个所述第二矩形块的长宽比,将获取的长宽比中的最大值作为最大长宽比,并将本次获取的最大长宽比与上一次获取的最大长宽比进行比较;

当本次获取的最大长宽比小于上一次获取的最大长宽比时,继续本次填充;

当本次获取的最大长宽比大于上一次获取的最大长宽比时,根据上一次切割得到的第二矩形块作为目标矩形块,根据所述目标矩形块填充所述未填充区域,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充。

在其中一个实施例中,所述根据所述目标矩形块填充所述未填充区域,包括:

获取目标矩形块在所述未填充区域中的位置和形状;

根据所述目标矩形块在所述未填充区域中的位置和形状填充所述未填充区域。

在其中一个实施例中,所述方法还包括:

获取所述数据集中的数据对应的填充颜色;

将所述填充颜色填充到所述数据集中的数据对应的目标矩形块中,生成颜色结构图。

一种图形填充装置,所述装置包括:

数据获取模块,用于获取数据集及对应的矩形区域,其中,所述数据集中的数据包括已填充数据和未填充数据,所述矩形区域的面积是根据数据集中包含的数据总和得到的;

未填充区域获取模块,用于在每次填充开始时,获取所述矩形区域中的未填充区域;

标记模块,用于从所述数据集中读取未填充数据,并在所述未填充区域中标记所述未填充数据对应的第一矩形块;

切割模块,用于每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;

填充模块,用于将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将所述数据集中的所有未填充数据对应的目标矩形块填充到所述矩形区域中时完成填充。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。

上述图形填充方法、装置、计算机设备和存储介质,获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;在每次填充开始时,获取矩形区域中的未填充区域;从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。这种图形填充的方式,在未填充区域中对数据集中的数据对应的第一矩形块进行标记,然后将第一矩形块的所组成的的区域进行切割得到第二矩形块,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,根据比较结果对未填充区域进行填充,如此循环进行比较,具有规律性,可以提高图形填充的准确率。

附图说明

图1为一个实施例中图形填充方法的应用环境图;

图2为一个实施例中图形填充方法的流程示意图;

图3为一个实施例中标记步骤的流程示意图;

图4为一个实施例中填充步骤的流程示意图;

图5为一个实施例中数据集合矩形区域的示意图;

图6为一个实施例中图形填充的示意图;

图7为一个实施例中颜色结构图生成方法的流程示意图;

图8为一个实施例中图形填充装置的结构框图;

图9为另一个实施例中图形填充装置的结构框图;

图10为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的图形填充方法,可以应用于如图1所示的应用环境中。其中,终端102获取输入的数据集及对应的矩形区域;在每次填充开始时,获取矩形区域中的未填充区域;从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,根据比较结果得到的目标矩形块对未填充区域进行填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。

在一个实施例中,如图2所示,提供了一种图形填充方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:

步骤202,获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的。

其中,数据集指的是至少一个数据组成的集合。具体的,电子设备可以遍历数据集中的数据,将读取的数据对应的矩形块填充到矩形区域中,通过矩形区域中的矩形块展示数据的分布情况。电子设备会依次读取数据,并将生成的数据对应的矩形块填充到矩形区域中。在填充的过程中,已经完成填充的数据即为已填充数据,还未完成填充的数据即为未填充数据。

具体地,矩形区域的面积可以等于数据集中包含的数据总和,也可以根据数据集中包含的数据总和乘以相应的比例得到,如数据集中包含的数据总和为100,矩形区域的面积为数据总和100的比例1/10得到,即为10。相应地,数据集中的数据对应的图形面积也为数据与对应的比例1/10得到。矩形区域的面积还可以是根据数据集中包含的数据总和的其他对应关系得到,在此不做限定。

步骤204,在每次填充开始时,获取矩形区域中的未填充区域。

步骤206,从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块。

其中,第一矩形块指的是在未填充区域进行标记的矩形块。标记指的是将第一矩形块在未填充区域中表示出来。具体地,当未填充数据对应的第一矩形块为多个时,则将多个第一矩形块进行排列标记。

步骤208,每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块。

其中,第二矩形块指的是本次填充中标记的所有第一矩形块所组成的区域进行切割后的矩形块。

具体地,当本次填充中读取的所有未填充数据为一个时,则将本次填充中标记的第一矩形块作为第二矩形块。当本次填充中读取的所有未填充数据为多个时,则根据多个未填充数据的比例,对本次填充中标记的所有第一矩形块所组成的区域进行切割,得到与第一矩形块相同数量的第二矩形块。

步骤210,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充。

具体地,当本次获取的第二矩形块为一个时,则获取下一个未填充数据,继续本次填充。当本次获取的第二矩形块为多个时,则将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,得到目标矩形块对未填充区域进行填充。当本次获取的第二矩形块为一个并且为最后一个时,则将该第二矩形块作为目标矩形块对未填充区域进行填充。

步骤212,直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。

具体地,数据集中的所有未填充数据对应的目标矩形块的面积之和等于矩形区域的面积。当数据集中的所有数据都为已填充数据时,则表示对矩形区域完成填充,矩形区域中也没有未填充区域。

上述图形填充方法、装置、计算机设备和存储介质,获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;在每次填充开始时,获取矩形区域中的未填充区域;从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。这种图形填充的方式,在未填充区域中对数据集中的数据对应的第一矩形块进行标记,然后将第一矩形块的所组成的的区域进行切割得到第二矩形块,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,根据比较结果对未填充区域进行填充,如此循环进行比较,具有规律性,可以提高图形填充的准确率。

在一个实施例中,获取数据集及对应的矩形区域,包括:获取数据集及对应的矩形区域;将数据集中的数据按照大小进行排列。从数据集中读取未填充数据,包括:按照数据集中的数据的排列顺序依次读取未填充数据。

具体地,识别数据集中的数据并将数据集中的数据按照大小进行排列,在读取数据集中的未填充数据时,按照数据的排列顺序进行读取。在本实施例中,将数据集中数据按照从大到小进行排列,在读取数据集中的未填充数据时,按照数据从大到小进行读取。

在本实施例中,将数据集中的数据按照大小进行排列,并且此排列顺序依次读取未填充数据,可以使图形填充更有规律性。

在一个实施例中,如图3所示,从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块,包括:

步骤302,将未填充区域的各个边长进行比较,获取最小边长作为目标边长,并将垂直于目标边长的方向作为目标方向。

具体地,未填充区域为矩形形状,则获取的最小边长为两条,并且两条最小边长平行。垂直于最小边长的方向也为两个,并且两个方向相反。在对整个图形填充的过程中,选取两条最小边长中的其中一条作为目标边长的规则保持不变,选取垂直于最小边长的两个方向中的其中一个作为目标方向的规则保持不变。

进一步地,当选取两条最小边长中的其中一条作为目标边长时,则将垂直于目标边长并且指向未填充区域一侧的方向作为目标方向。

例如,当获取的未填充区域为矩形形状,获取的最小边长为矩形形状的左右两条边长,当选取左边的最小边长作为目标边长时,则目标方向应为垂直于目标边长并且指向未填充区域一侧的方向,即向右的方向为目标方向。

步骤304,从数据集中读取未填充数据。

步骤306,以目标边长为起始边长,按照目标方向在未填充区域中标记未填充数据对应的第一矩形块。

具体地,在每次填充开始,并对第一个未填充数据进行标记时,以目标边长为起始边长,也就是将目标边长作为第一矩形块的其中一条边长。然后根据第一矩形块的面积得出第一矩形块的其他边长,并将第一矩形块中与目标边长平行的边长作为下一个第一矩形块的起始边长。也就是以目标边长为起始边长,按照目标方向即垂直于目标边长并且指向未填充区域一侧的方向,在未填充区域中标记未填充数据对应的第一矩形块。

在本实施例中,将未填充区域的最小边长作为目标边长,并且按照目标方向进行标记第一矩形块,可以将第一矩形块正方化。

在其中一个实施例中,每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块,包括:每标记一个第一矩形块时,根据本次填充中读取的未填充数据对应的比例,将起始边长进行切割;按照切割后的起始边长,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块。

具体地,在本次填充中,当标记的是第一个第一矩形块时,则继续本次填充,获取下一个未填充数据。当标记的是多个第一矩形块时,则根据本次填充中读取的未填充数据对应的比例,将起始边长进行切割。按照切割后的起始边长,将本次填充中标记的所有第一矩形块所组成的区域进行切割,并且按照排列顺序排列得到第二矩形块。其中,排列顺序可以预先由用户进行设置。

在本实施例中,根据本次填充中的未填充数据对应的比例,对起始边长进行切割,然后按照切割后的起始边长,对本次填充中标记的所有第一矩形块所组成的区域进行切割,得到第二矩形块,按照一定的规则进行切割,具有规律性。

在一个实施例中,如图4所示,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充,包括:

步骤402,获取各个第二矩形块的长宽比,将获取的长宽比中的最大值作为最大长宽比,并将本次获取的最大长宽比与上一次获取的最大长宽比进行比较。

其中,长宽比指的是矩形的长边与短边的比例。具体地,在本次填充中,当获取第一个第二矩形块时,则将该第二矩形块的长宽比作为最大长宽比。当获取多个第二矩形块时,则计算得到各个第二矩形块的长宽比。将各个第二矩形块的长宽比进行比较,获取最大长宽比。

步骤404,当本次获取的最大长宽比小于上一次获取的最大长宽比时,继续本次填充。

具体地,当本次获取的最大长宽比小于上一次获取的最大长宽比时,则获取数据集中的未填充数据,继续本次填充。

步骤406,当本次获取的最大长宽比大于上一次获取的最大长宽比时,根据上一次切割得到的第二矩形块作为目标矩形块,根据目标矩形块填充未填充区域,并将目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充。

其中,目标矩形块指的是进行填充的矩形块。

具体地,当本次获取的最大长宽比大于上一次获取的最大长宽比时,则将上一次切割得到的第二矩形块作为目标矩形块,目标矩形块对应的数据作为已填充数据,本次获取的未填充数据作为下一次填充的未填充数据。

在本实施例中,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当本次获取的最大长宽比小于上一次获取的最大长宽比时,继续本次填充;当本次获取的最大长宽比大于上一次获取的最大长宽比时,则将上一次切割得到的第二矩形块作为目标矩形块进行填充。在每次的填充过程中,本次的第二矩形块的最大长宽比都比上次的第二矩形块的最大长宽比小,可以将图形进行正方化进行填充。

在一个实施例中,根据目标矩形块填充未填充区域,包括:获取目标矩形块在未填充区域中的位置和形状;根据目标矩形块在未填充区域中的位置和形状填充未填充区域。

具体地,当确定好目标矩形块后,获取目标矩形块在未填充区域中的位置和形状,并将该位置和形状的目标矩形块对未填充区域进行填充。

在本实施例中,获取目标矩形块在未填充区域的位置和形状,对未填充区域进行填充,提高了图形填充的准确率。

在本实施例中,如图5所示,获取数据集及对应的矩形区域,数据集为{6,6,4,3,2,2,1}。

如图6所示,在第一次填充602开始时,在未填充区域604中标记未填充数据“6”对应的第一矩形块,并将第一矩形块作为第二矩形块606,计算得到未填充数据“6”的长宽比为“8/3”,继续本次填充。在未填充区域604中标记第二个未填充数据“6”对应的第一矩形块,生成两个标记的第一矩形块608,并对所有第一矩形块所组成的区域进行切割,得到两个第二矩形块610,计算得到两个第二矩形块中的最大长宽比为“3/2”,小于上一次获取的最大长宽比“8/3”,继续本次填充。在未填充区域604中标记第三个未填充数据“4”对应的第一矩形块,生成三个标记的第一矩形块612,并对所有第一矩形块所组成的区域进行切割,得到三个第二矩形614,计算得到三个第二矩形块中的最大长宽比为“4”,大于上一次获取的最大长宽比“3/2”,则根据上一次切割得到的两个第二矩形块610作为目标矩形块616,填充未填充区域604,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充602,进入下一次填充618。

下一次填充618开始时,获取矩形区域中的未填充区域及未填充数据,直至将所述数据集中的所有未填充数据对应的目标矩形块填充到所述矩形区域中时完成填充。

在一个实施例中,上述图形填充方法还包括:获取数据集中的数据对应的填充颜色;将填充颜色填充到数据集中的数据对应的目标矩形块中,生成颜色结构图。

其中,填充颜色指的是填充在矩形块中的颜色。每一种颜色都是由r(red,红色)、g(green,绿色)、b(blue,蓝色)三种颜色的参数计算得到的。颜色结构图指的是带有填充颜色的目标矩形块组成的具有大小顺序的图形。可以理解的是,为了更好地表示各个不同的目标矩形块,获取的每一维度的填充颜色都不相同。

具体地,可以设置数据集中的数据与填充颜色的对应关系。进一步地,可以设置数据集中的数据与中间数据的对应关系,并且设置中间数据与填充颜色的对应关系。数据集中的数据与颜色的对应关系、数据集中的数据与中间数据的对应关系和中间数据与填充颜色的对应关系,可以根据用户的需要进行设置,在此不做限定。

如图7所示,数据集中的数据{1000,500,300}分别表示a、b、c的销售额,图中702表示a的数据1000对应的目标矩形块,704表示a的数据500对应的目标矩形块,706表示a的数据300对应的目标矩形块。设置的销售额与中间数据利润的对应关系为:a的利润为销售额的20%,b的利润为销售额的60%,c的利润为销售额的50%。则数据集中的数据销售额{1000,500,300}对应的中间数据利润分别为{200,300,150}。

设置的中间数据利润与填充颜色的对应关系可以为:r、g、b三个参数的值=255*利润/利润总和。则255*200/(200+300+150)=78,255*300/(200+300+150)=118,255*150/(200+300+150)=59。则a的数据对应的目标矩形块702的填充颜色为(78,78,78),b的数据对应的目标矩形块704的填充颜色为(118,118,118),c的数据对应的目标矩形块706的填充颜色为(59,59,59)。

在本实施例中,获取数据集中的数据对应的填充颜色,对数据对应的目标矩形块进行填充,生成颜色结构图,可以更加清楚地区分各个矩形块。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图8所示,提供了一种图形填充装置,包括:数据获取模块802、未填充区域获取模块804、标记模块806、切割模块808和填充模块810,其中:

数据获取模块802,用于获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;

未填充区域获取模块804,用于在每次填充开始时,获取矩形区域中的未填充区域;

标记模块806,用于从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;

切割模块808,用于每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;

填充模块810,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。

上述图形填充方法、装置、计算机设备和存储介质,获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;在每次填充开始时,获取矩形区域中的未填充区域;从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。这种图形填充的方式,在未填充区域中对数据集中的数据对应的第一矩形块进行标记,然后将第一矩形块的所组成的的区域进行切割得到第二矩形块,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,根据比较结果对未填充区域进行填充,如此循环进行比较,具有规律性,可以提高图形填充的准确率。

在一个实施例中,如图9所示,提供了一种图形填充装置,包括:数据获取模块902、未填充区域获取模块904、标记模块906、切割模块908、填充模块910和颜色结构图生成模块912,其中:

数据获取模块902,用于获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;

未填充区域获取模块904,用于在每次填充开始时,获取矩形区域中的未填充区域;

标记模块906,用于从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;

切割模块908,用于每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;

填充模块910,用于将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充;

颜色结构图生成模块912,用于获取数据集中的数据对应的填充颜色;将填充颜色填充到数据集中的数据对应的目标矩形块中,生成颜色结构图。

上述图形填充方法、装置、计算机设备和存储介质,在未填充区域中对数据集中的数据对应的第一矩形块进行标记,然后将第一矩形块的所组成的的区域进行切割得到第二矩形块,将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,根据比较结果对未填充区域进行填充,如此循环进行比较,直到将数据集中的数据对应的目标矩形块对矩形区域填充完毕,最后获取数据对应的颜色对目标矩形块进行填充,生成颜色结构图。这种图形填充方式,可以更加清楚地区分各个矩形块的同时提高了图形填充的准确率。

在一个实施例中,上述数据获取模902还用于获取数据集及对应的矩形区域;将数据集中的数据按照大小进行排列。未填充区域获取模块904还用于按照数据集中的数据的排列顺序依次读取未填充数据。

在一个实施例中,上述标记模块906还用于将未填充区域的各个边长进行比较,获取最小边长作为目标边长,并将垂直于目标边长的方向作为目标方向;从数据集中读取未填充数据;以目标边长为起始边长,按照目标方向在未填充区域中标记未填充数据对应的第一矩形块。

在一个实施例中,上述切割模块908还用于每标记一个第一矩形块时,根据本次填充中读取的未填充数据对应的比例,将起始边长进行切割;按照切割后的起始边长,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块。

在一个实施例中,上述填充模块910还用于获取各个第二矩形块的长宽比,将获取的长宽比中的最大值作为最大长宽比,并将本次获取的最大长宽比与上一次获取的最大长宽比进行比较;当本次获取的最大长宽比小于上一次获取的最大长宽比时,继续本次填充;当本次获取的最大长宽比大于上一次获取的最大长宽比时,根据上一次切割得到的第二矩形块作为目标矩形块,根据目标矩形块填充未填充区域,并将目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充。

在一个实施例中,上述填充模块910还用于获取目标矩形块在未填充区域中的位置和形状;根据目标矩形块在未填充区域中的位置和形状填充未填充区域。

关于图形填充装置的具体限定可以参见上文中对于图形填充方法的限定,在此不再赘述。上述图形填充装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图形填充方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;在每次填充开始时,获取矩形区域中的未填充区域;从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取数据集及对应的矩形区域;将数据集中的数据按照大小进行排列;按照数据集中的数据的排列顺序依次读取未填充数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:将未填充区域的各个边长进行比较,获取最小边长作为目标边长,并将垂直于目标边长的方向作为目标方向;从数据集中读取未填充数据;以目标边长为起始边长,按照目标方向在未填充区域中标记未填充数据对应的第一矩形块。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:每标记一个第一矩形块时,根据本次填充中读取的未填充数据对应的比例,将起始边长进行切割;按照切割后的起始边长,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取各个第二矩形块的长宽比,将获取的长宽比中的最大值作为最大长宽比,并将本次获取的最大长宽比与上一次获取的最大长宽比进行比较;当本次获取的最大长宽比小于上一次获取的最大长宽比时,继续本次填充;当本次获取的最大长宽比大于上一次获取的最大长宽比时,根据上一次切割得到的第二矩形块作为目标矩形块,根据目标矩形块填充未填充区域,并将目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取目标矩形块在未填充区域中的位置和形状;根据目标矩形块在未填充区域中的位置和形状填充未填充区域。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取数据集中的数据对应的填充颜色;将填充颜色填充到数据集中的数据对应的目标矩形块中,生成颜色结构图。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取数据集及对应的矩形区域,其中,数据集中的数据包括已填充数据和未填充数据,矩形区域的面积是根据数据集中包含的数据总和得到的;在每次填充开始时,获取矩形区域中的未填充区域;从数据集中读取未填充数据,并在未填充区域中标记未填充数据对应的第一矩形块;每标记一个第一矩形块时,根据本次填充中读取的所有未填充数据的比例,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块;将本次获取的第二矩形块与上一次获取的第二矩形块进行比较,当得到第一比较结果时,继续本次填充,当得到第二比较结果时,根据所述第二比较结果得到的目标矩形块对所述未填充区域进行填充,并将所述目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充;直至将数据集中的所有未填充数据对应的目标矩形块填充到矩形区域中时完成填充。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取数据集及对应的矩形区域;将数据集中的数据按照大小进行排列;按照数据集中的数据的排列顺序依次读取未填充数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将未填充区域的各个边长进行比较,获取最小边长作为目标边长,并将垂直于目标边长的方向作为目标方向;从数据集中读取未填充数据;以目标边长为起始边长,按照目标方向在未填充区域中标记未填充数据对应的第一矩形块。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:每标记一个第一矩形块时,根据本次填充中读取的未填充数据对应的比例,将起始边长进行切割;按照切割后的起始边长,将本次填充中标记的所有第一矩形块所组成的区域进行切割,得到本次填充中读取的各个未填充数据对应的第二矩形块。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取各个第二矩形块的长宽比,将获取的长宽比中的最大值作为最大长宽比,并将本次获取的最大长宽比与上一次获取的最大长宽比进行比较;当本次获取的最大长宽比小于上一次获取的最大长宽比时,继续本次填充;当本次获取的最大长宽比大于上一次获取的最大长宽比时,根据上一次切割得到的第二矩形块作为目标矩形块,根据目标矩形块填充未填充区域,并将目标矩形块对应的未填充数据标记为已填充数据,结束本次填充,进入下一次填充。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取目标矩形块在未填充区域中的位置和形状;根据目标矩形块在未填充区域中的位置和形状填充未填充区域。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取数据集中的数据对应的填充颜色;将填充颜色填充到数据集中的数据对应的目标矩形块中,生成颜色结构图。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1