数据处理方法及装置与流程

文档序号:32840810发布日期:2023-01-06 20:45阅读:25来源:国知局
数据处理方法及装置与流程

1.本技术实施例涉及健康监测技术领域,尤其涉及一种数据处理方法及装置。


背景技术:

2.在健康设备日益普及的今天,日常的健康监测逐渐成为人们选择健康设备的重要原因之一。健康设备可通过各种传感器采集对应类型的健康数据,并将采集到的健康数据附上采集时间戳存储到文件中,然后当用户查看健康状况时,健康设备从文件中读取健康数据并进行前端显示。
3.现有技术的电子设备如嵌入式设备可作为日常健康监测的健康设备,电子设备基于贴合人体的传感器采集如心率、血压、血氧和运动等健康数据,并对健康数据进行处理以在前端显示表征健康状况的健康图表,满足用户随时查看健康状况的需求。但传感器采集健康数据的频率较高,电子设备要处理的健康数据量较大,对硬件处理性能有限的电子设备来说,数据处理效率较低,前端显示健康图表的速度较慢。


技术实现要素:

4.本技术实施例提供一种数据处理方法、电子设备和存储介质,通过对健康数据进行二维数组赋值,优化健康数据的处理方式,提高健康数据的处理效率,进而提高前端显示健康图表的速度,解决了现有电子设备显示健康图表较慢的问题。
5.第一方面,本技术实施例提供了一种数据处理方法,包括:
6.采集健康数据并将所述健康数据写入至数据文件;其中,所述健康数据包括数据值和采集时间戳;
7.响应于健康数据读取请求,从所述数据文件中获取目标时间段内采集的目标健康数据;
8.按照第一规则对所述目标健康数据的二维数组赋值;其中,所述二维数组包括时间维度和数据值维度;
9.按照第二规则显示赋值后的所述二维数组。
10.第二方面,本技术实施例提供了一种数据处理装置,包括:
11.数据存储模块,用于采集健康数据并将所述健康数据写入至数据文件;其中,所述健康数据包括数据值和采集时间戳;
12.数据读取模块,用于响应于健康数据读取请求,从所述数据文件中获取目标时间段内采集的目标健康数据;
13.数组赋值模块,用于按照第一规则对所述目标健康数据的二维数组赋值;其中,所述二维数组包括时间维度和数据值维度;
14.数据显示模块,用于按照第二规则显示赋值后的所述二维数组。
15.第三方面,本技术实施例提供了一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实
现如第一方面所述的数据处理方法。
16.第四方面,本技术实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的数据处理方法。
17.第五方面,本技术实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的数据处理方法。
18.在本技术实施例中,通过将实时采集到的健康数据的数据值和采集时间戳关联存储至数据文件中,并在接收到健康数据读取请求后,从数据文件中获取目标时间段内采集的目标健康数据的数据值和采集时间戳。遍历目标健康数据,对二维数组中列下标和行下标与目标健康数据的数据值和采集时间戳对应的元素进行赋值,以通过赋值后的二维数组表征目标时间段内目标健康数据不同的数据值。将赋值后的二维数据在前端进行数据展示,以展示出目标时间段内电子设备采集到数据值。通过上述技术手段,遍历一次目标健康数据即可通过二维数组将目标时间段内目标健康数据不同的数据值展示出来,无需对目标数据健康的数据值进行多次循环排序和去重处理,可有效节省数据处理时长,提高数据处理效率,进而提高前端显示健康图表的速度。而且对二维数组进行赋值无需占用过多的内存空间,节省了电子设备的内存资源,优化了电子设备的数据处理性能。
附图说明
19.图1是本技术一个实施例提供的一种数据处理方法的流程示意图;
20.图2是本技术实施例提供的嵌入式设备采集和存储健康数据的示意图;
21.图3是本技术实施例提供的生成目标健康数据的目标二维数组的流程图;
22.图4是本技术实施例提供的目标二维数组的示意图;
23.图5是本技术实施例提供的血压图表的第一示意图;
24.图6是本技术实施例提供的基于目标二维数组绘制健康图表的流程图;
25.图7是本技术实施例提供的生成预设时间段的一维数组的流程图;
26.图8是本技术实施例提供的按照第二规则绘制健康图表的流程图;
27.图9是本技术实施例提供的血压图表的第二示意图;
28.图10是本技术一个实施例提供的一种数据处理装置的结构示意图;
29.图11是本技术一个实施例提供的一种电子设备的结构示意图;
30.图12是本技术一个实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
31.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本技术保护的范围。
32.本技术的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可
以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
33.下面结合附图,通过具体的实施例及其应用场景对本技术实施例提供的数据处理方法进行详细地说明。
34.图1是本技术一个实施例提供的一种数据处理方法的流程示意图。参考图1,该数据处理方法包括:
35.s110、采集健康数据并将健康数据写入至数据文件;其中,健康数据包括数据值和采集时间戳。
36.本实施例以数据处理方法的执行主体为穿戴式的嵌入式设备进行描述,穿戴式的嵌入式设备可以是智能手表和智能手环等智能设备。嵌入式设备安装有心率传感器、血压传感器和运动传感器等传感器模组,通过心率传感器、血压传感器和运动传感器等传感器模组分别采集穿戴嵌入式设备的用户的心率值、血压值和运动速度等健康数据的数据值。传感器模组将采集到的健康数据的数据值发送至嵌入式设备的处理器,处理器基于接收到数据值的时间戳确定该数据值的采集时间戳,将数据值和对应采集时间戳打包生成健康数据,并将健康数据存储至嵌入式设备的存储器中。
37.在该实施例中,图2是本技术实施例提供的嵌入式设备采集和存储健康数据的示意图。如图2所示,传感器模组将采集到的数据值发送至处理器,处理器确定出数据值的采集时间戳,并将数据值和采集时间戳关联保存至通用数据结构中生成对应的健康数据,将健康数据写入数据文件中。其中,数据文件是存储器中用于存储健康数据的存储空间。由于存储器中的数据在嵌入式设备开关机时也不会被清除,因此健康数据会持久化存储在数据文件中,避免健康数据的丢失。而且通用数据结构只会保存有健康数据的数据值和采集时间戳,规范了数据存储规则,避免数据文件存入过多无用的数据,节约存储器的存储空间。
38.需要说明,不同传感器模组的采集频率不同,比如心率传感器每5秒采集一次心率值,血压传感器每15秒采集一次血压值,因此处理器每次接收到的数据值可能是一种或多种类型的健康数据的数据值。在该实施例中,为了便于数据分类管理,处理器将各种健康数据存储至对应类型的数据文件中。示例性的,处理器当前接收到血压值和心率值,确定出血压值和心率值的采集时间戳。将血压值和采集时间戳关联保存到通用的数据结构中生成血压数据,并将血压数据写入血压数据文件中。将心率值和采集时间戳关联保存到通用的数据结构中生成心率数据,并将心率数据写入心率数据文件中。
39.在现有技术中,当用户通过嵌入式设备的健康监测应用查看当天健康状态时,处理器从数据文件中读取健康数据到内存中,并基于内存中的健康数据的数据值计算出平均值、最大值和最小值等可以表征当天健康状态的常用数据值,然后将常用数据值给到健康监测应用的前端进行显示。每次前端显示常用数据值时,处理器都要花费时间从当天采集的大量健康数据的数据值中确定出最大值、最小值和平均值,导致前端显示效率较低。对此本实施例提出嵌入式设备在采集到健康数据后就顺势计算出当天采集的健康数据的最大值、最小值和平均值等常用数据值,以提高后续前端显示效率。
40.在该实施例中,根据健康数据的数据值确定目标时间段的常用数据值,并将常用数据值存储至内存中,常用数据值包括目标时间段内采集的数据值的平均值、最大值和最小值中的至少一个。其中,目标时间段是指从预设时间点到当前时间点之间的时间段,预设
时间点可以是当天零点或周一零点等,可根据实际需求进行设置。本实施例以嵌入式设备采集血压值为例进行描述。参考图2,在预设时间点之后,处理器获取到血压传感器采集的第一个血压值时,可确定该血压值为目标时间段内采集的血压值的平均值、最大值和最小值,进而将该血压值分别保存为自定义数据结构中的数据值、最大值、最小值和平均值以生成血压常用数据,将血压常用数据写入内存中。处理器获取到血压传感器采集的第二个血压值时,处理器从内存中读取血压常用数据的最大值、最小值和平均值。将读取到的最大值和最小值分别与第二个血压值进行比较,确定出目标时间段内采集的血压值的最大值和最小值。基于读取到的平均值和第二个血压值,确定出目标时间段内采集的血压值的平均值。将当前内存中的血压常用数据删除,将目标时间段内采集的血压值的最大值、最小值和平均值保存到自定义数据结构以生成新的血压常用数据,并将新的血压常用数据存储至内存中。以此类推,处理器获取到血压传感器最新采集的血压值后,从内存中读取上一时刻确定出的血压值的最大值、最小值和平均值。基于当前采集到的血压值和读取到的血压值的最大值、最小值和平均值,确定出目标时间段内血压值的最大值、最小值和平均值。将目标时间段内的血压值的最大值、最小值和平均值保存至自定义数据结构中生成新的血压常用数据,将新的血压常用数据存储至内存中以更新内存中的血压常用数据。本实施例在每次前端显示常用数据值时,可快速从内存中读取到常用数据值进行显示,有效节约了数据处理时间,提高数据处理效率和前端显示效率。
41.在另一实施例中,处理器将健康数据写入数据文件之后,将健康数据的数据值和采集时间戳存储至内存中。参考图2,处理器获取血压传感器最新采集的血压值,并确定出该血压值的采集时间戳,将血压值、采集时间戳和目标时间段内血压值的常用数据值保存至自定义数据结构中生成血压常用数据,将血压常用数据写入内存。同理的,本实施例在每次前端显示实时采集的数据值时,可快速从内存中读取到最新采集的数据值进行显示,无需频繁访问存储器,有效提高嵌入式设备的硬件性能,进而提高数据处理效率和前端显示效率。
42.s120、响应于健康数据读取请求,从数据文件中获取目标时间段内采集的目标健康数据。
43.其中,健康数据读取请求是用户通过健康监测应用查看当前健康状态时生成的请求,响应于健康数据请求以通过前端向用户展示当前的健康数据。目标健康数据是指传感器模组在目标时间段内采集到的所有健康数据。
44.在一实施例中,接收进入健康数据界面的第一触控操作,根据第一触控操作生成健康数据读取请求。其中,健康数据界面是指健康监测应用的前端界面。假设嵌入式设备为触屏手表,则用户可通过手指点击触屏手表的主页面中健康监测应用的图标以打开健康监测应用。启动健康监测应用的操作可看作进入健康数据界面的第一触控操作,当用户点击健康监测应用的图标后,健康监测应用的前端接收到第一触控操作,并根据第一触发操作生成健康数据读取请求。前端将健康数据读取请求发送至健康监测应用的底层,底层接收到健康数据读取请求后,回复前端收到该请求并开始准确前端显示的数据。
45.本实施例以目标时间段为当天零点到当前时间点为例进行描述。健康监测应用的底层从血压数据文件中读取当天零点到目前为止采集的所有血压值和对应的采集时间戳,得到目标血压数据。底层对目标血压数据中的血压值进行去重和排序处理,并将处理后的
目标血压数据给到前端,前端将处理后的目标血压数据进行展示,便于用户在前端查看当天各个时间段的血压值情况。其他类型的目标健康数据的读取和处理过程同理。
46.健康监测应用的前端还可以显示目标时间段的最大值、最小值和平均值等常用数据值,以便用户更能直观查看当前的健康情况。在该实施例中,响应于健康数据读取请求,从内存中读取常用数据值,并显示常用数据值。示例性的,底层接收到健康数据读取请求后,从内存中读取血压常用数据,并将血压常用数据给到前端,前端对应显示当天血压的最大值、最小值和平均值,以及当前数据值和对应的采集时间戳。由于血压常用数据存储于内存中,底层可快速读取到血压常用数据并给到前端进行显示,提高了前端显示效率。
47.s130、按照第一规则对目标健康数据的二维数组赋值;其中,二维数组包括时间维度和数据值维度。
48.在现有技术中,底层从数据文件中读取到目标健康数据后,按照采集时间的先后顺序,对目标健康数据的数据值进行排序,并对相同的数据值进行去重处理。但排序和去重处理耗时长且占用的内存空间大,对于硬件性能较差的嵌入式设备来说处理压力较大,导致数据处理效率较低。因此本实施例提出基于表征时间维度和数据值维度的二维数组中的元素值将目标健康数据的数据值和采集时间戳展示出来,节约占用的内存空间。而且对二维数组的元素进行赋值的过程较为简单,无需进行排序和去重处理,节约了数据处理时长。
49.在本实施例中,第一规则是指二维数组的行下标和列下标对应表示时间维度下的真实时间和数据值维度下的数据值的规则。例如,第一规则可以是二维数组的一个行下标对应表示24小时中的一个小时段和一个列下标对应表示0~100的数据值范围中的一个整数数据值。第一规则可根据实际需求进行设置。
50.进一步的,基于第一规则中限定的二维数组的行下标和列下标对应的时间和数据值,确定出目标健康数据对应于二维数组中的元素,并对该元素进行赋值,得到表征目标健康数据的所有数据值和对应采集时间戳的目标二维数组。图3是本技术实施例提供的生成目标健康数据的目标二维数组的流程图。如图3所示,该生成目标健康数据的目标二维数组的步骤具体包括s1301-s1302:
51.s1301、基于第一规则中的预设数据值范围和预设时间段生成初始二维数组,初始二维数组的行下标对应时间维度下的预设时间段,列下标对应数据值维度下的数据值。
52.本实施例以第一规则为二维数组的一个行下标对应表示24小时中的一个小时段和一个列下标对应表示0~100的数据值范围中的一个整数数据值为例进行描述。示例性的,基于第一规则中的24小时和0~100的数据值范围,生成24行100列的初始二维数组。初始二维数组的行下标从小到大依次对应从小到大的小时段,例如第一行对应0点到1点这一小时段,第二行对应1点到2点这一小时段,以此类推。初始二维数组的列下标从小到大依次对应从小到大的整数数据值,例如第一列对应数据值1,第二列对应数据值2,以此类推。初始二维数组中的每个元素为0。
53.s1302、遍历目标时间段内采集的目标健康数据,对初始二维数组中列下标与目标健康数据的数据值相同,行下标对应的预设时间段包含目标健康数据的采集时间戳的元素赋予第一预设值,得到目标二维数组。
54.假设第一预设值为1,则遍历当天采集到所有血压值和采集时间戳,将初始二维数组中列下标与血压值相同,行下标对应的小时段包含该血压值的采集时间戳的元素置为1,
直至遍历结束,得到血压二维数组。例如,15点30分产生了血压为66的血压数据,则将初始二维数组中第14行第66列的元素从0置为1。需要说明的,如果在同一小时段中产生了两次相同的数据值,目标二维数组中对应元素的值还是为1,以表示该时间段有该数据值产生。因此目标二维数组可间接实现对数据值的去重处理,而且目标二维数组中的行下标是从小到大排序的,相应的采集时间戳也是从小到大排序的,间接实现了对数据值的采集时间的排序。相比于现有技术中遍历多次目标健康数据才能完成对目标健康数据的去重和排序处理,本实施例遍历一次目标健康数据即可完成对目标健康数据的去重和排序处理,降低了数据处理的复杂度,提高了数据处理效率,面对大量的健康数据嵌入式设备也能正常处理,保证了嵌入式设备的运行性能。
55.图4是本技术实施例提供的目标二维数组的示意图。如图4所示,基于目标二维数组中元素值为1的元素的列下标和行下标,可确定出嵌入式设备在当天采集到的健康数据的数据值和采集时间戳所在的小时段。例如第1行第3列的元素为1,则确定出嵌入式设备在当天0~1的小时段中采集到数据值为3的健康数据。
56.s140、按照第二规则显示赋值后的二维数组。
57.在本实施例中,目标二维数组即为赋值后的二维数组。第二规则是指前端绘制健康图表的规则,例如第二规则可以是打点显示每个小时段的不同数据值,或者折线显示每小时段的最大数据值等。其中,健康图表是显示目标时间段内采集的健康数据的图表,不同类型的健康数据以不同的健康图表进行显示,如血压数据以血压图表进行显示。
58.在一实施例中,第二规则是将每个小时段中两个数据值的差值小于或等于第二预设值的数据值连线显示,差值大于第二预设值的数据值打点显示。假设第一预设值为1,第二预设值为5,血压二维数组中第4行的第66列、第70列和第77列的元素值为1,则可确定嵌入式设备在当天3点到4点这一小时段中采集到66、70和77的血压值。由于66和70的血压值小于5,77和70的血压值大于5,则在血压图表的3点到4点这一小时段中将66到70的血压值连线,在血压图表的3点到4点这一小时段中在77的血压值处打点。图5是本技术实施例提供的血压图表的第一示意图。图5中血压图表的横坐标表示24小时内的每个小时段,纵坐标表示0~100的整数血压值。假设血压二维数组中第4行的第66列、第70列和第77列的元素值为1,则按照第二规则绘制出的血压图表如图5所示。
59.在一实施例中,为提高前端绘制健康图表的效率,可将目标二维数组转换为前端可直接读取数据并进行绘制的数据格式。图6是本技术实施例提供的基于目标二维数组绘制健康图表的流程图。如图6所示,该基于目标二维数组绘制健康图表的步骤具体包括s1401-s1403:
60.s1401、根据目标二维数组中同一行下标的目标元素的列下标,生成对应行下标的预设时间段的一维数组,目标元素的元素值为第一预设值。
61.示例性的,从血压二维数组中获取元素值等于1的目标元素,进而获取目标元素的列下标和行下标。根据目标元素的行下标和列下标,得到当天各个小时段采集到血压值,将同一小时段采集到的所有血压值组合生成对应小时段的一维数组。参考图4示出的血压二维数组,遍历血压二维数组的第一行的元素,得到目标元素的列下标分别为3、97和99,进而得到当天0点到1点这一小时段采集到血压值为3、97和99,进而可生成[3,97,99]的一维数组。前端拿到该一维数组[3,97,99]后,会将一维数组里的元素值与下一元素值的差值与第
二预设值进行比较,根据比较结果进行打点和/或连线绘制。
[0062]
在一实施例中,前端在做数据值差值比较时会影响健康图表的显示效率,因此本实施例通过可将预设时间段的一维数组内的元素转换成前端可以直接进行连线或打点绘制的存储结构,提高前端显示健康图表的效率。图7是本技术实施例提供的生成预设时间段的一维数组的流程图。如图7所示,该生成预设时间段的一维数组的步骤具体包括s14011-s14013:
[0063]
s14011、遍历目标二维数组中同一行下标的目标元素,将目标元素与相邻目标元素的列下标差值与第二预设值进行比较。
[0064]
s14012、将列下标差值大于第二预设值的目标元素的列下标记为单值数组中的元素值,将列下标差值小于或等于第二预设值的目标元素与相邻目标元素的列下标记为双值数组中的元素值。
[0065]
s14013、将同一行下标的单值数组和双值数组进行组合,得到对应预设时间段的一维数组。
[0066]
在本实施例中,单值数组是指存储有一个元素的一维数组,双值数组是指存储有两个元素的一维数组。示例性的,遍历图4示出的血压二维数组的第一行的元素,得到目标元素的列下标分别为3、97和99。假设第二预设值为5,则3和97的差值大于预设值,则将3生成单值数组[3]。97和99的差值小于预设值,则将97和99生成双值数组[97,99]。将这一小时段的单值数组[3]和双值数组[97,99]组合,得到这一小时段的一维数组[[3],[97,99]]。需要说明的,多个双值数组中有相同的元素值,则将多个双值数组融合成一个双值数组,融合后的双值数组的元素值是对应多个双值数组中的最大值和最小值。例如第二行的元素值为1的列下标为66、70和75,则对应生成[66,70]和[70,75]的双值数组,将这两个双值数组融合得到双值数组[66,75]。
[0067]
s1402、将每一预设时间段的一维数组进行组合构造出对象格式的一维数组。
[0068]
示例性的,将每个小时段的一维数组作为元素整合到一个一维数组中,并将该一维数组保存为对象格式,得到对象格式的一维数组。例如,当前时间为3点30分,0点到1点的一维数组为[[1,10],[88]],1点到2点的一维数组为[0],2点到3点的一维数组为[0],3点到4点的一维数组为[[7],[22,66]]。组合各个小时段的一维数组,以构造出对象格式的一维数组{“array”:[[[1,10],[88]],[0],[0],[[7],[22,66]],[0],[0],

[0]]}。相比于现有技术中的cjson格式,对象格式构造出的object前端渲染可直接使用,无需再做语法解析,提高了前端绘制健康图表的效率。
[0069]
s1403、基于第二规则显示对象格式的一维数组对应的健康图表。
[0070]
示例性的,底层构造出对象格式的一维数组后,将对象格式的一维数组发送至前端,前端基于将对象格式的一维数组中每个小时段的一维数组中的单值数组和双值数组,按照第二规则在健康图表对应的小时段中进行打点或连线绘制。图8是本技术实施例提供的按照第二规则绘制健康图表的流程图。如图8所示,该按照第二规则绘制健康图表的步骤具体包括s14031-s14032:
[0071]
s14031、基于对象格式的一维数组中的单值数组的元素值和对应的预设时间段,在健康图表对应的数据值和预设时间段处进行打点显示。
[0072]
s14032、基于对象格式的一维数组中的双值数组的元素值和对应的预设时间段,
在健康图表对应的数据值和预设时间段处进行连线显示。
[0073]
示例性的,前端基于对象格式的一维数组{“array”:[[[1,10],[68]],[0],[0],[[7],[22,66]],[0],[0],

[0]]},确定0点到1点的一维数组为[[1,10],[68]],1点到2点的一维数组为[0],2点到3点的一维数组为[0],3点到4点的一维数组为[[7],[22,66]]。从0点到1点的一维数组[[1,10],[68]]中获取到双值数组[1,10]和单值数组[68],从3点到4点的一维数组中获取到单值数组[7]和双值数组[22,66],其他小时段没有数据产生。图9是本技术实施例提供的血压图表的第二示意图。如图9所示,基于0点到1点的双值数组[0,10],在血压图表的0点到1点的小时段中对应从血压值1连线到血压值10,基于0点到1点的单值数组[68],在血压图表的0点到1点的小时段中在血压值68处打点。基于3点到4点的单值数组[7],在血压图表的3点到4点的小时段中在血压值7处打点,基于3点到4点的双值数组[22,66],在血压图表的3点到4点的小时段中对应从血压值22连线到血压值66。
[0074]
前端绘制完健康图表后,用户可通过健康图表来查看当天各个小时段的数据值情况。由于嵌入式设备会实时采集用户的健康数据,健康图表也会基于当前采集的健康数据进行实时更新。在该实施例中,从内存中读取数据值和采集时间戳,根据数据值和采集时间戳,在健康图表对应的数据值和预设时间段处进行打点显示。示例性的,如果嵌入式设备一直保存在健康数据界面,由于健康数据界面已经显示了先前绘制的健康图表,前端可从内存中获取当前采集的数据值和采集时间戳,并在健康数据界面已显示的健康图表的采集时间戳对应的小时段中数据值处打点。本实施例在后续刷新健康数据界面显示的健康图表时,无需向底层获取对象格式的一维数组,而只用基于当前采集的数据值进行打点绘制,有效提高了前端健康图表的更新效率,降低嵌入式设备访问数据文件的频率,间接优化嵌入式设备的硬件存储性能。
[0075]
综上,本实施例提供的数据处理方法,通过将实时采集到的健康数据的数据值和采集时间戳关联存储至数据文件中,并在接收到健康数据读取请求后,从数据文件中获取目标时间段内采集的目标健康数据的数据值和采集时间戳。遍历目标健康数据,对二维数组中列下标和行下标与目标健康数据的数据值和采集时间戳对应的元素进行赋值,以通过赋值后的二维数组表征目标时间段内目标健康数据不同的数据值。将赋值后的二维数据在前端进行数据展示,以展示出目标时间段内电子设备采集到数据值。通过上述技术手段,遍历一次目标健康数据即可通过二维数组将目标时间段内目标健康数据不同的数据值展示出来,无需对目标数据健康的数据值进行多次循环排序和去重处理,可有效节省数据处理时长,提高数据处理效率,进而提高前端显示健康图表的速度。而且对二维数组进行赋值无需占用过多的内存空间,节省了电子设备的内存资源,优化了电子设备的数据处理性能。
[0076]
需要说明的是,本技术实施例提供的数据处理方法,执行主体可以为数据处理装置,或者该数据处理装置中的用于执行数据处理方法的控制模块。本技术实施例中以数据处理装置执行数据处理方法为例,说明本技术实施例提供的数据处理装置。
[0077]
图10是本技术一个实施例提供的一种数据处理装置的结构示意图。如图10所示,该数据处理装置包括:数据存储模块201、数据读取模块202、数组赋值模块203和数据显示模块204。
[0078]
其中,数据存储模块,用于采集健康数据并将健康数据写入至数据文件;其中,健康数据包括数据值和采集时间戳;
[0079]
数据读取模块,用于响应于健康数据读取请求,从数据文件中获取目标时间段内采集的目标健康数据;
[0080]
数组赋值模块,用于按照第一规则对目标健康数据的二维数组赋值;其中,二维数组包括时间维度和数据值维度;
[0081]
数据显示模块,用于按照第二规则显示赋值后的二维数组。
[0082]
在上述实施例的基础上,数据存储模块还包括:常用数据存储单元,用于在采集健康数据并将健康数据写入至数据文件之后,根据健康数据的数据值确定目标时间段的常用数据值,并将常用数据值存储至内存中,常用数据值包括目标时间段内采集的数据值的平均值、最大值和最小值中的至少一个;数据显示模块还包括:常用数据显示单元,用于在响应于健康数据读取请求之后,从内存中读取常用数据值,并显示常用数据值。
[0083]
在上述实施例的基础上,数组赋值模块包括:初始二维数组生成单元,用于基于第一规则中的预设数据值范围和预设时间段生成初始二维数组,初始二维数组的行下标对应时间维度下的预设时间段,列下标对应数据值维度下的数据值;目标二维数组生成单元,用于遍历目标时间段内采集的目标健康数据,对初始二维数组中列下标与目标健康数据的数据值相同,行下标对应的预设时间段包含目标健康数据的采集时间戳的元素赋予第一预设值,得到目标二维数组。
[0084]
在上述实施例的基础上,数据处理装置包括:一维数组生成模块,用于在按照第二规则显示赋值后的二维数组之前,根据目标二维数组中同一行下标的目标元素的列下标,生成对应行下标的预设时间段的一维数组,目标元素的元素值为第一预设值;数组格式转换模块,用于将每一预设时间段的一维数组进行组合构造出对象格式的一维数组;数据显示模块包括:健康图标显示单元,用于基于第二规则显示对象格式的一维数组对应的健康图表。
[0085]
在上述实施例的基础上,一维数组生成模块包括:比较单元,用于遍历目标二维数组中同一行下标的目标元素,将目标元素与相邻目标元素的列下标差值与第二预设值进行比较;单双值数组生成单元,用于将列下标差值大于第二预设值的目标元素的列下标记为单值数组中的元素值,将列下标差值小于或等于第二预设值的目标元素与相邻目标元素的列下标记为双值数组中的元素值;数组组合单元,用于将同一行下标的单值数组和双值数组进行组合,得到对应预设时间段的一维数组。
[0086]
在上述实施例的基础上,健康图标显示单元包括:打点显示子单元,用于基于对象格式的一维数组中的单值数组的元素值和对应的预设时间段,在健康图表对应的数据值和预设时间段处进行打点显示;连线显示子单元,用于基于对象格式的一维数组中的双值数组的元素值和对应的预设时间段,在健康图表对应的数据值和预设时间段处进行连线显示。
[0087]
在上述实施例的基础上,数据存储模块还包括:数据缓存单元,用于在采集健康数据并将健康数据写入至数据文件之后,将健康数据的数据值和采集时间戳存储至内存中;数据显示模块还包括:数据打点显示单元,用于在按照第二规则显示赋值后的二维数组之后,从内存中读取数据值和采集时间戳,根据数据值和采集时间戳,在健康图表对应的数据值和预设时间段处进行打点显示。
[0088]
综上,本实施例提供的数据处理装置,通过将实时采集到的健康数据的数据值和
采集时间戳关联存储至数据文件中,并在接收到健康数据读取请求后,从数据文件中获取目标时间段内采集的目标健康数据的数据值和采集时间戳。遍历目标健康数据,对二维数组中列下标和行下标与目标健康数据的数据值和采集时间戳对应的元素进行赋值,以通过赋值后的二维数组表征目标时间段内目标健康数据不同的数据值。将赋值后的二维数据在前端进行数据展示,以展示出目标时间段内电子设备采集到数据值。通过上述技术手段,遍历一次目标健康数据即可通过二维数组将目标时间段内目标健康数据不同的数据值展示出来,无需对目标数据健康的数据值进行多次循环排序和去重处理,可有效节省数据处理时长,提高数据处理效率,进而提高前端显示健康图表的速度。而且对二维数组进行赋值无需占用过多的内存空间,节省了电子设备的内存资源,优化了电子设备的数据处理性能。
[0089]
本技术实施例中的数据处理装置可以是装置,也可以是终端中的部件、集成电路或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为掌上电脑、车载电子设备和可穿戴设备等,非移动电子设备可以为电视机(television,tv)等,本技术实施例不作具体限定。
[0090]
本技术实施例中的数据处理装置可以为具有操作系统的装置。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本技术实施例不作具体限定。
[0091]
本技术实施例提供的数据处理装置能够实现图1至图9的方法实施例实现的各个过程,为避免重复,这里不再赘述。
[0092]
可选地,如图11所示,本技术实施例还提供一种电子设备30,包括处理器301,存储器302,存储在存储器302上并可在处理器301上运行的程序或指令,该程序或指令被处理器301执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0093]
需要说明的是,本技术实施例中的电子设备包括上述的移动电子设备和非移动电子设备。
[0094]
图12为实现本技术实施例的一种电子设备的硬件结构示意图。
[0095]
该电子设备40包括但不限于:射频单元403、网络模块404、音频输出单元405、输入单元406、传感器407、显示单元408、用户输入单元409、接口单元410、存储器402、以及处理器401等部件。
[0096]
本领域技术人员可以理解,电子设备40还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图12中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
[0097]
其中,处理器401,用于采集健康数据并将健康数据写入至数据文件;其中,健康数据包括数据值和采集时间戳;响应于健康数据读取请求,从数据文件中获取目标时间段内采集的目标健康数据;按照第一规则对目标健康数据的二维数组赋值;其中,二维数组包括时间维度和数据值维度;按照第二规则显示赋值后的二维数组。
[0098]
可选地,处理器401,还用于在采集健康数据并将健康数据写入至数据文件之后,根据健康数据的数据值确定目标时间段的常用数据值,并将常用数据值存储至内存中,常
用数据值包括目标时间段内采集的数据值的平均值、最大值和最小值中的至少一个;在响应于健康数据读取请求之后,从内存中读取常用数据值,并显示常用数据值。
[0099]
可选地,处理器401,还用于在基于第一规则中的预设数据值范围和预设时间段生成初始二维数组,初始二维数组的行下标对应时间维度下的预设时间段,列下标对应数据值维度下的数据值;遍历目标时间段内采集的目标健康数据,对初始二维数组中列下标与目标健康数据的数据值相同,行下标对应的预设时间段包含目标健康数据的采集时间戳的元素赋予第一预设值,得到目标二维数组。
[0100]
可选地,处理器401,还用于在按照第二规则显示赋值后的二维数组之前,根据目标二维数组中同一行下标的目标元素的列下标,生成对应行下标的预设时间段的一维数组,目标元素的元素值为第一预设值;将每一预设时间段的一维数组进行组合构造出对象格式的一维数组;基于第二规则显示对象格式的一维数组对应的健康图表。
[0101]
可选地,处理器401,还用于遍历目标二维数组中同一行下标的目标元素,将目标元素与相邻目标元素的列下标差值与第二预设值进行比较;将列下标差值大于第二预设值的目标元素的列下标记为单值数组中的元素值,将列下标差值小于或等于第二预设值的目标元素与相邻目标元素的列下标记为双值数组中的元素值;将同一行下标的单值数组和双值数组进行组合,得到对应预设时间段的一维数组。
[0102]
可选地,处理器401,还用于基于对象格式的一维数组中的单值数组的元素值和对应的预设时间段,在健康图表对应的数据值和预设时间段处进行打点显示;基于对象格式的一维数组中的双值数组的元素值和对应的预设时间段,在健康图表对应的数据值和预设时间段处进行连线显示。
[0103]
可选地,处理器401,还用于在采集健康数据并将健康数据写入至数据文件之后,将健康数据的数据值和采集时间戳存储至内存中;在按照第二规则显示赋值后的二维数组之后,从内存中读取数据值和采集时间戳,根据数据值和采集时间戳,在健康图表对应的数据值和预设时间段处进行打点显示。
[0104]
综上,本实施例提供的电子设备,通过将实时采集到的健康数据的数据值和采集时间戳关联存储至数据文件中,并在接收到健康数据读取请求后,从数据文件中获取目标时间段内采集的目标健康数据的数据值和采集时间戳。遍历目标健康数据,对二维数组中列下标和行下标与目标健康数据的数据值和采集时间戳对应的元素进行赋值,以通过赋值后的二维数组表征目标时间段内目标健康数据不同的数据值。将赋值后的二维数据在前端进行数据展示,以展示出目标时间段内电子设备采集到数据值。通过上述技术手段,遍历一次目标健康数据即可通过二维数组将目标时间段内目标健康数据不同的数据值展示出来,无需对目标数据健康的数据值进行多次循环排序和去重处理,可有效节省数据处理时长,提高数据处理效率,进而提高前端显示健康图表的速度。而且对二维数组进行赋值无需占用过多的内存空间,节省了电子设备的内存资源,优化了电子设备的数据处理性能。
[0105]
应理解的是,本技术实施例中,输入单元406可以包括图形处理器(graphics processing unit,gpu)4061和麦克风4062,图形处理器4061对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元408可包括显示面板4081,可以采用液晶显示器、有机发光二极管等形式来配置显示面板4081。用户输入单元409包括触控面板4091以及其他输入设备4092。触控面板4091,也称为
触摸屏。触控面板4091可包括触摸检测装置和触摸控制器两个部分。其他输入设备409可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。存储器402可用于存储软件程序以及各种数据,包括但不限于应用程序和操作系统。处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
[0106]
本技术实施例还提供一种可读存储介质,可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0107]
其中,处理器为上述实施例中的电子设备中的处理器。可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等。
[0108]
本技术实施例另提供了一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0109]
应理解,本技术实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
[0110]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0111]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
[0112]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1