数据图生成方法、装置及计算机可读存储介质与流程

文档序号:18740687发布日期:2019-09-21 01:44阅读:164来源:国知局
数据图生成方法、装置及计算机可读存储介质与流程

本发明涉及计算机技术领域,尤其涉及一种数据图生成方法、装置及计算机可读存储介质。



背景技术:

传统的数据绘图主要基于Excel等数据处理软件进行手动绘制,但随着大数据技术的快速发展和生产力的提高,传统绘图方式已无法满足目前海量数据的输入的需要,也难以实现规则化的高效图像输出需求。此外,如图像截断、按比例拼接等较为高端的绘图需求,在普通的绘图软件较难实现,并且大多采用手工修正的方式完成,费时费力,存在较大的绘图瓶颈。



技术实现要素:

本发明提供一种数据图生成方法、装置及计算机可读存储介质,其主要目的在于能自动生成测试案例,并自动展现给用户以供用户选择,提高了用户体验。

为实现上述目的,本发明还提供一种数据图生成方法,所述方法包括:

获取用户提供的目标文件;

读取所述目标文件中的目标数据;

对所述目标数据统计处理,确定坐标轴的边界;

判断是否执行坐标轴截断;

若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;

若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。

优选地,所述读取所述目标文件中的目标数据包括:

通过读取所述目标文件的行数据中的空格字符获取目标数据,其中所述目标数据包括至少一组数据组,每组数据组对应一数据图。

优选地,所述对所述目标数据统计处理,确定坐标轴的边界包括:

对于每组数据组,按照时序递增的顺序对每组数据组进行排序,使每组数据组按时序递增排列,得到每组的排列数据;

根据每组的排列数据,获取所述至少一组数据组中目标值最大值和目标值最小值,及时间点最大值及时间点最小值;

根据所述目标值最大值和目标值最小值,确定纵坐标轴的上下边界;

根据时间点最大值及时间点最小值,确定横坐标轴的上下边界。

优选地,所述判断是否执行坐标轴截断包括:

若所述目标数据中存在超过预设范围大小的区域内没有数据点,则确定存在截断点,执行坐标轴截断。

优选地,所述基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图包括:

利用截断点将所述目标数据分割为多个部分;

分别绘制每个部分的数据对应的数据子图;

基于所述坐标轴的边界,将每个部分的数据对应的数据子图拼接在所述坐标轴中,并得到所述目标数据图。

优选地,所述基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图包括:

根据每组的排列数据,获取每组数据组最大值和最小值,并确定该组数据的绘图的上下边界;

在上下边界的空白空间中,根据每组的排列数据的时序,将每组数据的数据点逐个绘制到图中,并得到所述目标数据图。

优选地,所述方法还包括:

若所述目标数据中存在多组数据,则采用不同的预设样式绘制每条数据图。

优选地,所述方法还包括:

将所述目标数据图按比例缩小至预设大小,并绘制所述目标数据图中的坐标刻度线和标识。

为了实现上述目的、本发明还提供一种数据图生成装置,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据图生成程序,所述数据图生成程序被所述处理器执行时实现如下步骤:

获取用户提供的目标文件;

读取所述目标文件中的目标数据;

对所述目标数据统计处理,确定坐标轴的边界;

判断是否执行坐标轴截断;

若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;

若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据图生成程序,所述数据图生成程序可被一个或者多个处理器执行,以实现如上所述的数据图生成方法的步骤。

通过上述技术方案,本发明获取用户提供的目标文件;读取所述目标文件中的目标数据;对所述目标数据统计处理,确定坐标轴的边界;判断是否执行坐标轴截断;若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。本发明能提高绘图效率,适应大数据绘图的趋势和需要,提高数据绘图结果的准确性和可读性。

附图说明

图1为本发明一实施例提供的数据图生成方法的流程示意图;

图2为本发明一实施例提供的数据图生成装置的内部结构示意图;

图3为本发明一实施例提供的数据图生成装置中数据图生成程序的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种数据图生成方法。参照图1所示,为本发明一实施例提供的数据图生成方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。

在本实施例中,数据图生成方法包括:

S10、获取用户提供的目标文件。

在本实施例中,接收来自用户提供的数据文件作为绘图流程的输入。数据文件主要以csv、txt、xls或xlsx格式进行存储。

其中csv文件以纯文本形式存储表格数据(数字和文本)。纯文本是一个字符序列,不含必须像二进制数字那样被解读的数据。csv文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。txt格式的数据文件数据存储方式与csv相似,通过分隔符分隔数据,读取方式也与csv文件的读取方式相同。读取xls或xlsx文件则直接通过读取同一行中各单元格的数据读取数据。

S11、读取所述目标文件中的目标数据。

在本实施例中,所述读取所述目标文件中的目标数据包括:

通过读取所述目标文件的行数据中的空格字符获取目标数据,其中所述目标数据包括至少一组数据组,每组数据组对应一数据图。

在一具体实现中,通过读取目标文件中每一行数据对同一横坐标(即时间点)的数据进行读取,通过读取行数据中的空格字符将数据进行隔断。分割后第一个数据代表当前数据的横坐标(时间点),其后的数据数量代表该数据表中数据组的组数,即需要绘制在图中的折线条数,每个数据分别代表本数据组在此横坐标(时间点)的纵坐标数值。将数据组数记录在内存中,供后续步骤使用。一行数据读取完成后移至下一行继续读取下一时间点的数据,直至读取至文件末尾,即读取完成数据文件中的所有数据行。

S12、对所述目标数据统计处理,确定坐标轴的边界。

为了避免因坐标尺度选择不合理或存在较大坐标轴间隔导致绘制完成的数据图可读性差、趋势显示不明显等情况,需要在绘制前对数据进行统计和分析,以确定绘制数据图的边界和尺度。

优选地,所述对所述目标数据统计处理,确定坐标轴的边界包括:

对于每组数据组,按照时序递增的顺序对每组数据组进行排序,使每组数据组按时序递增排列,得到每组的排列数据;

根据每组的排列数据,获取所述至少一组数据组中目标值最大值和目标值最小值,及时间点最大值及时间点最小值;

根据所述目标值最大值和目标值最小值,确定纵坐标轴的上下边界;

根据时间点最大值及时间点最小值,确定横坐标轴的上下边界。

S13、判断是否执行坐标轴截断。

在一实施例中,优选地,所述判断是否执行坐标轴截断包括:

若所述目标数据中存在超过预设范围大小的区域内没有数据点,则确定存在截断点,执行坐标轴截断。

例如一部分数据落在0-100范围内,而另一部分数据落在500-900范围内,则将100和500记录为截断点,在后续绘图过程中须对截断点进行相应的处理。

S14、若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图。

优选地,所述基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图包括:

利用截断点将所述目标数据分割为多个部分;

分别绘制每个部分的数据对应的数据子图;

基于所述坐标轴的边界,将每个部分的数据对应的数据子图拼接在所述坐标轴中,并得到所述目标数据图。

具体地,利用截断点将数据点分割为两个或多个部分,对每个部分作为子图分别绘制,子图绘制的具体过程与下一步中的绘制方法一致。绘制完成后将各子图按比例拼接,使各部分的子图拼接在完整同一坐标系中。最后将坐标轴进行统一,去除多余坐标轴,并对拼接完成的图中坐标轴截断位置标上截断标志和截断点数值。

S15、若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。

优选地,所述基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图包括:

根据每组的排列数据,获取每组数据组最大值和最小值,并确定该组数据的绘图的上下边界;

在上下边界的空白空间中,根据每组的排列数据的时序,将每组数据的数据点逐个绘制到图中,并得到所述目标数据图。

具体地,首先根据获取得到的数据组最大值和最小值确定绘图的上下界,并对上下边界增加适当留白空间,避免曲线达到图片边界,影响视觉观感。确定绘图边界后按时序将数据点逐个绘制到图中。对于每个数据点,横坐标为数据行首个数值(即时间点),纵坐标对应数值在纵坐标的相对位置。每新增绘制完成一个点,即将该点与前一个点以直线连接,形成折线,直至曲线绘制完成。

优选地,所述方法还包括:

若所述目标数据中存在多组数据,则采用不同的预设样式绘制每条数据图。当存在多组数据时,系统采用预设的不同样式进行对各组数据分别绘制,便于用户区分和辨识数据。多组数据的绘制共享同一坐标系,以便用户分析多组数据的动态变化关系和数值比较。

优选地,所述方法还包括:

将所述目标数据图按比例缩小至预设大小,并绘制所述目标数据图中的坐标刻度线和标识。方便用户了解数据的大致数值范围,提高数据图的可读性。对于多组数据的输出图片,还须在图片右上角增加样式标识,以提示用户对数据组进行区分。

本发明公开了一种数据图生成方法,该方法包括:获取用户提供的目标文件;读取所述目标文件中的目标数据;对所述目标数据统计处理,确定坐标轴的边界;判断是否执行坐标轴截断;若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。本发明能提高绘图效率,适应大数据绘图的趋势和需要,提高数据绘图结果的准确性和可读性。

本发明还提供一种数据图生成装置。参照图2所示,为本发明一实施例提供的数据图生成装置的内部结构示意图。

在本实施例中,数据图生成装置1可以是个人电脑(Personal Computer,PC),也可以是智能手机、平板电脑、便携计算机等终端设备。该数据图生成装置1至少包括存储器11、处理器12,通信总线13,以及网络接口14。

其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是数据图生成装置1的内部存储单元,例如该数据图生成装置1的硬盘。存储器11在另一些实施例中也可以是数据图生成装置1的外部存储设备,例如数据图生成装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括数据图生成装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于数据图生成装置1的应用软件及各类数据,例如数据图生成程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。

处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行数据图生成程序01等。

通信总线13用于实现这些组件之间的连接通信。

网络接口14可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该装置1与其他电子设备之间建立通信连接。

可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在数据图生成装置1中处理的信息以及用于显示可视化的用户界面。

图2仅示出了具有组件11-14以及数据图生成程序01的数据图生成装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对数据图生成装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

在图2所示的装置1实施例中,存储器11中存储有数据图生成程序01;处理器12执行存储器11中存储的数据图生成程序01时实现如下步骤:

获取用户提供的目标文件。

在本实施例中,接收来自用户提供的数据文件作为绘图流程的输入。数据文件主要以csv、txt、xls或xlsx格式进行存储。

其中csv文件以纯文本形式存储表格数据(数字和文本)。纯文本是一个字符序列,不含必须像二进制数字那样被解读的数据。csv文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。txt格式的数据文件数据存储方式与csv相似,通过分隔符分隔数据,读取方式也与csv文件的读取方式相同。读取xls或xlsx文件则直接通过读取同一行中各单元格的数据读取数据。

读取所述目标文件中的目标数据。

在本实施例中,所述读取所述目标文件中的目标数据包括:

通过读取所述目标文件的行数据中的空格字符获取目标数据,其中所述目标数据包括至少一组数据组,每组数据组对应一数据图。

在一具体实现中,通过读取目标文件中每一行数据对同一横坐标(即时间点)的数据进行读取,通过读取行数据中的空格字符将数据进行隔断。分割后第一个数据代表当前数据的横坐标(时间点),其后的数据数量代表该数据表中数据组的组数,即需要绘制在图中的折线条数,每个数据分别代表本数据组在此横坐标(时间点)的纵坐标数值。将数据组数记录在内存中,供后续步骤使用。一行数据读取完成后移至下一行继续读取下一时间点的数据,直至读取至文件末尾,即读取完成数据文件中的所有数据行。

对所述目标数据统计处理,确定坐标轴的边界。

为了避免因坐标尺度选择不合理或存在较大坐标轴间隔导致绘制完成的数据图可读性差、趋势显示不明显等情况,需要在绘制前对数据进行统计和分析,以确定绘制数据图的边界和尺度。

优选地,所述对所述目标数据统计处理,确定坐标轴的边界包括:

对于每组数据组,按照时序递增的顺序对每组数据组进行排序,使每组数据组按时序递增排列,得到每组的排列数据;

根据每组的排列数据,获取所述至少一组数据组中目标值最大值和目标值最小值,及时间点最大值及时间点最小值;

根据所述目标值最大值和目标值最小值,确定纵坐标轴的上下边界;

根据时间点最大值及时间点最小值,确定横坐标轴的上下边界。

判断是否执行坐标轴截断。

在一实施例中,优选地,所述判断是否执行坐标轴截断包括:

若所述目标数据中存在超过预设范围大小的区域内没有数据点,则确定存在截断点,执行坐标轴截断。

例如一部分数据落在0-100范围内,而另一部分数据落在500-900范围内,则将100和500记录为截断点,在后续绘图过程中须对截断点进行相应的处理。

若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图。

优选地,所述基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图包括:

利用截断点将所述目标数据分割为多个部分;

分别绘制每个部分的数据对应的数据子图;

基于所述坐标轴的边界,将每个部分的数据对应的数据子图拼接在所述坐标轴中,并得到所述目标数据图。

具体地,利用截断点将数据点分割为两个或多个部分,对每个部分作为子图分别绘制,子图绘制的具体过程与下一步中的绘制方法一致。绘制完成后将各子图按比例拼接,使各部分的子图拼接在完整同一坐标系中。最后将坐标轴进行统一,去除多余坐标轴,并对拼接完成的图中坐标轴截断位置标上截断标志和截断点数值。

若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。

优选地,所述基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图包括:

根据每组的排列数据,获取每组数据组最大值和最小值,并确定该组数据的绘图的上下边界;

在上下边界的空白空间中,根据每组的排列数据的时序,将每组数据的数据点逐个绘制到图中,并得到所述目标数据图。

具体地,首先根据获取得到的数据组最大值和最小值确定绘图的上下界,并对上下边界增加适当留白空间,避免曲线达到图片边界,影响视觉观感。确定绘图边界后按时序将数据点逐个绘制到图中。对于每个数据点,横坐标为数据行首个数值(即时间点),纵坐标对应数值在纵坐标的相对位置。每新增绘制完成一个点,即将该点与前一个点以直线连接,形成折线,直至曲线绘制完成。

优选地,所述方法还包括:

若所述目标数据中存在多组数据,则采用不同的预设样式绘制每条数据图。当存在多组数据时,系统采用预设的不同样式进行对各组数据分别绘制,便于用户区分和辨识数据。多组数据的绘制共享同一坐标系,以便用户分析多组数据的动态变化关系和数值比较。

优选地,所述方法还包括:

将所述目标数据图按比例缩小至预设大小,并绘制所述目标数据图中的坐标刻度线和标识。方便用户了解数据的大致数值范围,提高数据图的可读性。对于多组数据的输出图片,还须在图片右上角增加样式标识,以提示用户对数据组进行区分。

本发明公开了一种数据图生成方法,该方法包括:获取用户提供的目标文件;读取所述目标文件中的目标数据;对所述目标数据统计处理,确定坐标轴的边界;判断是否执行坐标轴截断;若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。本发明能提高绘图效率,适应大数据绘图的趋势和需要,提高数据绘图结果的准确性和可读性。

可选地,在其他实施例中,数据图生成程序还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述数据图生成程序在数据图生成装置中的执行过程。

例如,参照图3所示,为本发明数据图生成装置一实施例中的数据图生成程序的程序模块示意图,该实施例中,数据图生成程序可以被分割为获取模块10、读取模块20、确定模块30、判断模块40及绘制模块50,示例性地:

获取模块10获取用户提供的目标文件;

读取模块20读取所述目标文件中的目标数据;

确定模块30对所述目标数据统计处理,确定坐标轴的边界;

判断模块40判断是否执行坐标轴截断;

绘制模块50若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;

所述绘制模块50若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。

上述获取模块10、读取模块20、确定模块30、判断模块40及绘制模块50等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据图生成程序,所述数据图生成程序可被一个或多个处理器执行,以实现如下操作:

获取用户提供的目标文件;

读取所述目标文件中的目标数据;

对所述目标数据统计处理,确定坐标轴的边界;

判断是否执行坐标轴截断;

若执行坐标轴截断,基于所述坐标轴的边界,使用坐标轴截断策略绘制目标数据图;

若不执行坐标轴截断,基于所述坐标轴的边界,按照所述目标数据的时序绘制目标数据图。

本发明计算机可读存储介质具体实施方式与上述数据图生成装置和方法各实施例基本相同,在此不作累述。

需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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