一种长时间周期的数据曲线展示方法、装置、设备及介质
文献发布时间:2023-06-19 10:48:02
技术领域
本发明涉及数据统计领域,具体涉及一种长时间周期的数据曲线展示方法。
背景技术
煤矿安全监控系统是主要用来监测甲烷浓度、一氧化碳浓度、二氧化碳浓度、氧气浓度、硫化氢浓度、矿尘浓度、风速、风压、湿度、温度、馈电状态、风门状态、风筒状态、局部通风机开停、主要风机开停等,并实现甲烷超限声光报警、断电和甲烷风电闭锁控制等功能的系统。
在煤矿安全监控系统的日常应用过程中,随着井下网络环境的优化和系统设备性能的不断提升,井下传感器采集和上传数据的周期不断缩短,系统数据库中会存在大量的原始数据记录。在对数据库中的原始数据进行曲线绘制展示时,有时需要查看时间跨度很长的数据曲线,但是庞大的原始数据量使得现有的曲线绘制展示出现绘制缓慢或者无法完整地展示曲线的问题。
现有的曲线绘制展示方法具有以下缺点:
1、限制查询时间跨度,不能一次查看长时间跨度的曲线数据,只能分段多次查看。
2、只能缩小曲线界面显示时间范围,通过在曲线界面上左右拖动查看长时间跨度的曲线数据,不能一次直观展示整体数据。
3、为了提高曲线绘制效率,绘制时会丢弃部分数据,使得不能正确真实地反映数据信息。
发明内容
鉴于以上所述现有技术的缺点,本发明的所要解决的技术问题在于提供可以快速绘制数据曲线且不会使数据特征丢失的长时间周期的数据曲线展示方法。
为解决上述技术问题,本发明首先提供了如下技术方案:一种长时间周期的数据曲线展示方法,包括以下步骤:
S101:根据指定的时间周期从所述煤矿安全监控系统数据库中获取原始数据,确定所述原始数据的数量;
S102:根据时间周期计算所述曲线展示界面能展示的最大数据数量;
S103:比较所述原始数据的数量与所述最大数据数量的大小,若所述原始数据的数量小于或等于于所述最大数据数量,则所述曲线展示界面直接绘制所述原始数据的曲线;若所述原始数据的数量大于所述最大数据数量,则进行重采样周期计算处理;
S104:统计每个所述重采样周期内数据的最大值、最小值及平均值,所述曲线展示界面获取所有所述重采样周期内的最大值、最小值及平均值,分别绘制最大值、最小值及平均值的曲线。
通过采用上述方法,可以实现对任意时间周期和数据量数据的快速绘制和展示,同时可以提高数据趋势的精准度。
在本发明的一实施例中,所述方法还包括步骤S105:根据所述曲线展示界面的功能模块进行曲线展示方式的调整。
通过采用上述方法,工作人员可以根据自己的需求选择曲线展示的方式,实现展示的多样性。
在本发明的一实施例中,所述步骤S102包括:将所述时间周期在1天之内的所述最大数据数量的值默认设置为500,所述时间周期T每增加1天,所述最大数据数量的值增加100,将所述最大数据数量的上限值设置为1000。
在本发明的一实施例中,所述重采样周期为所述时间周期除以所述最大数据数量得到的商值。
通过采用上述方法,实现展示界面可以完整的将曲线进行展示,改善需要分段进行查看的不便性。
在本发明的一实施例中,所述步骤S104包括:通过遍历每个所述重采样周期内的所有所述原始数据,两两进行比较,分别筛选出每个所述重采样周期的最大值和最小值;通过采用加权平均法计算每个所述重采样周期所有所述原始数据的平均值。
通过采用上述方法,实现每个重采样周期内均只输出一组最大值、最小值及平均值,也就是说每个重采样周期T1内只包含三个数据,这样大大减少了周期内的数据数量,提高了程序运行和曲线绘制的效率,同时保留了数据的关键特征。
在本发明的一实施例中,所述步骤S104包括:在统计数据的过程中进行干扰伪数据标注处理,若所述重采样周期内某个所述原始数据的值大于该所述重采样周期内所有所述原始数据的平均值的m倍,且该所述原始数据的值的持续时间小于s秒,则判定该所述重采样周期内存在干扰伪数据。
通过采用上述方法,可以提高数据曲线的代表性,使得工作人员查看更加清晰。
在本发明的一实施例中,所述曲线展示界面的功能模块包括纵坐标调整模块、同坐标显示模块、同屏显示模块、曲线颜色选择模块、曲线类型选择模块。
通过采用上述方法,实现展示曲线的多样化选择。
为解决上述问题,本发明还提供了一种长时间周期的数据曲线展示装置,包括:
获取单元,用于根据指定的时间周期从煤矿安全监控系统数据库中获取原始数据,确定所述原始数据的数量;
计算单元,所述计算单元与所述获取单元连接,用于根据所述时间周期计算所述曲线展示界面能展示的最大数据数量;
比较单元,所述比较单元与所述获取单元及所述计算单元分别连接,用于比较所述原始数据的数量与所述最大数据数量的大小,若所述原始数据的数量小于或等于所述最大数据数量,则所述曲线展示界面直接绘制所述原始数据的曲线;若所述原始数据的数量大于所述最大数据数量,则进行重采样周期计算处理;
展示单元,所述展示单元与所述比较单元连接,用于统计每个所述重采样周期内数据的最大值、最小值及平均值,所述曲线展示界面获取所有所述重采样周期内的最大值、最小值及平均值,分别绘制最大值、最小值及平均值的曲线。
通过采用上述技术方案,可以将大数据量转化为小数据量,曲线展示界面可以快速、完整地绘制特征曲线。
为解决上述问题,本发明还提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上所述的任意一项所述方法中的步骤。
为解决上述问题,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的任意一项所述方法中的步骤。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种长时间周期的数据曲线展示方法的流程图;
图2为本发明提供的一实施例的曲线展示界面的示意图;
图3为本发明提供的一种长时间周期的数据曲线展示装置的结构示意图;
图4为本发明提供的一种电子设备的结构示意图。
附图标记:
获取单元10,计算单元20,比较单元30,展示单元40,功能模块401;
电子设备500,存储器501,处理器502。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
如图1所示,本发明提供了一种长时间周期的数据曲线展示方法,本方法可以应用于煤矿安全监控系统中,主要包括以下步骤:
S101:根据指定的时间周期从煤矿安全监控系统数据库中获取原始数据,确定原始数据的数量。
需要说明的是,在一实施例中,指定的时间周期T可以是一年或者几年,时间单位可以精确到秒,可以根据工作人员需要查看的时间范围进行筛选指定,根据指定的时间周期T可以筛选出对应范围内的原始数据,得到原始数据的数量DataNum。煤矿安全监控系统可以用来监测矿井下甲烷浓度、粉尘浓度、氧气、一氧化碳、二氧化碳、二氧化硫、二氧化氮、硫化氢、温湿度、烟雾、风速、风量、风门开闭、设备启停、瓦斯抽放、液位、压力等参数,监测到数据会存储在数据库中,但是由于监控系统是进行实时监测的,导致原始数据的数量会非常庞大。在一实施例中,本方法所用的数据库为InfluxDB时序数据库,该类型的数据库支持时序数据的快速写入、持久化、多维度的聚合查询等功能,当工作人员需要查看某一时段的某一参数时,本方法可以根据选取的时间周期从数据库中获取相应的原始数据,
S102:根据时间周期计算曲线展示界面能展示的最大数据数量。
需要说明的是,在一实施例中,最大数据数量记为ResultNum,将时间周期T在1天之内的ResultNum的值默认设置为500,时间周期T每增加1天,ResultNum的值增加100,将ResultNum的上限值设置为1000,这样可以得到ResultNum的计算公式,即:ResultNum=500+(T.Days-1)×100,其中,T.Days为时间周期T的天数,当T.Days大于6时,ResultNum为上限值1000。因为监控系统可以连接到电脑屏幕,电脑屏幕可以用于显示曲线,一般来说,电脑屏幕水平方向的像素在1000左右,将最大数据数量的上限值设置为1000可以使得曲线能够完整的进行展示。
S103:比较原始数据的数量与最大数据数量的大小,若原始数据的数量小于或等于最大数据数量,则曲线展示界面直接绘制原始数据的曲线;若原始数据的数量大于最大数据数量,则进行重采样周期计算处理。
需要说明的是,在一实施例中,当选择的时间周期T的原始数据的数量较小且没有超过曲线展示界面能展示的最大数据数量时,曲线展示界面可以直接绘制原始数据的曲线。当选择的时间周期T较长且原始数据的数量较大时,曲线展示界面无法直接绘制展示出原始数据的曲线,只能展示部分的曲线,导致无法查看完整的曲线趋势,此时,需要进行重采样周期计算处理。在一实施例中,重采样周期T1定义为时间周期除以最大数据数量得到的商值,即T1=T/ResultNum。在时间周期T内查询到的原始数据记录可能有数百万条甚至更多,如果直接把这些原始数据输出给曲线展示界面进行绘制,是无法在一个屏幕上绘制展示出来的,并且绘制效率会非常低。本方法将时间周期T划分为若干个有限的重采样周期T1,对每个重采样周期T1内的原始数据进行重新统计,这样既能够提高程序运行效率,又可以保证关键数据特征不丢失。
S104:统计每个重采样周期内数据的最大值、最小值及平均值,曲线展示界面获取所有重采样周期内的最大值、最小值及平均值,分别绘制最大值、最小值及平均值的曲线。
需要说明的是,在一实施例中,每个重采样周期T1内无论原始数据的数量有多少,最终每个重采样周期T1内均只输出一组最大值、最小值及平均值,也就是说每个重采样周期T1内只包含三个数据,这样大大减少了周期内的数据数量,提高了程序运行效率。将时间周期T根据重采样周期T1等间隔划分为多个新的时间周期,例如是0-T1,T1-T2,T2-T3等等,遍历每个重采样周期T1内的所有原始数据,两两进行比较,分别筛选出每个重采样周期T1的最大值和最小值。采用加权平均法计算每个重采样周期T1内原始数据的平均值,本方法采用加权平均法计算平均值,可以同时将原始数据和时间的影响因素考虑在内,更加符合煤矿安全监控系统的实际应用需求。例如,某个重采样周期内有5个原始数据:(t1,v1)、(t2,v2)、(t3,v3)、(t4,v4)、(t5,v5),其中t为时间、v为原始数据点值,则平均值可以通过公式(v1×(t2-t1)+v2×(t3-t2)+v3×(t4-t3)+v4×(t5-t4))/(t5-t1)计算得到。进一步地,本方法还会进行干扰伪数据标注处理,在统计数据的过程中,计算得到每个重采样周期内所有原始数据的平均值SampleAvg,若该重采样周期内某个原始数据的值Vn>SampleAvg*m,且原始数据值Vn的持续时间小于s秒,则判定该重采样周期内存在干扰伪数据,其中,m默认为3,s默认为10,但不限于此,可以在使用过程中根据不同情况进行调整,最终在曲线绘制过程中可以使用阴影的方式标注出该干扰伪数据,使得数据曲线更具有代表性。
需要说明的是,在一实施例中,曲线展示界面可以获取所有重采样周期内的最大值、最小值及平均值,分别绘制最大值、最小值及平均值的曲线,不同类型的曲线可以采用不同颜色来进行展示,便于工作人员查看。在本方法中,统计得到的最大值、最小值及平均值数值会存储在内存中,当工作人员选择查看某一曲线或者某些曲线时,曲线展示界面进行统一绘制,这样可以快速地呈现需要查看数据曲线。在一实施例中,本方法选取最大值、最小值及平均值作为数据特征值,基本可以涵盖安全监控系统监测的所有参数的特征趋势。例如是查看甲烷浓度的监测趋势,甲烷的爆炸浓度是3%-16%,在矿井下,如果监测到的甲烷浓度超过1%时,就要进行断电处理,防止发生爆炸,所以,在展示甲烷浓度的曲线时,查看其最大值的特征曲线可以更加清楚地了解到甲烷浓度在一个时间周期内变化,便于工作人员了解矿井下的环境情况。例如是查看氧气的浓度,在矿井下,氧气对工作人员来说是非常重要的,如果氧气浓度过低,严重时会影响工作人员的生命安全,所以,在展示氧气浓度曲线时,最小值曲线是非常重要的。例如是查看监测到的二氧化硫气体浓度,来源于含硫煤炭的氧化自燃等,是一种有剧毒的气体,当二氧化硫气体的浓度达到0.0001%时就可以闻到刺激性气味,浓度达到0.001%时就会引起轻度中毒、头晕的症状,浓度达到0.05%-0.1%时,就会引起重度中毒、痉挛或者死亡,所以,在展示二氧化硫气体浓度的曲线时,结合其最大值和最小值的特征曲线同时查看在一个周期内的变化,有助于工作人员提前了解矿井下的环境情况,提前做好防护措施。例如是查看井下风速数据曲线,则可以通过展示平均值曲线,了解井下风速数据的平均趋势,可以估算出井下的整体通风情况是否良好。查看不同的参数曲线时,可以选择不同的特征值曲线或者是将不同的特征值曲线进行组合,便于工作人员更直观地了解参数的变化。本方法通过采用计算重采样周期的方式,可以有效减少输出给曲线展示界面的数据量,无论查询的时间周期T多长,原始数据数量DataNum有多少,按照本方法的步骤处理后,输出给曲线展示界面的数据量大大减少,同时,曲线的绘制速度不再受时间周期T、原始数据数量DataNum的影响,提高了曲线绘制的效率,实现了快速绘制的效果。本方法通过平均值曲线可以看出数据的平均走势,通过最大值、最小值曲线可以看出数据的范围走势,三种曲线的综合展示可以准确体现数据的整体趋势精准度,最大程度地满足井下各种传感器数据的不同业务分析需求。
如图2所示,在一实施例中,以某煤矿井下中央变电所的温度数据为例,指定的时间周期T为一年,例如是从2020年1月1日0时0分0秒到2021年1月1日0时0分0秒,原始数据数量为3015345个,时间周期T已经超过6天,即曲线界面能展示的最大数据数量为上限值1000个,原始数据数量远远超过了曲线展示界面可以展示的最大数据数量,此时计算重采样周期为T1=T/1000=31536秒,根据重采样周期统计处理后输出给曲线展示界面的最终数据数量为1000组,每一组包含一个最大值、最小值及平均值,曲线展示界面绘制曲线耗时只需2秒左右。例如,图2中曲线A表示最大值曲线,曲线B表示最小值曲线,曲线C表示平均值曲线,曲线展示界面通过最大值、最小值曲线一起显示,可以看出井下温度传感器的两端极值温度数据趋势。
如图1所示,本发明提供的一种长时间周期的数据曲线展示方法还包括:
S105:根据曲线展示界面的功能模块进行曲线展示方式的调整。
需要说明的是,在一实施例中,曲线展示界面的功能模块包括纵坐标调整模块、同坐标显示模块、同屏显示模块、曲线颜色选择模块、曲线类型选择模块。例如,纵坐标调整模块可以进行自动或者手动调整纵坐标的显示范围,使得曲线在曲线展示界面上显示更清晰,便于工作人员更加直观的了解变化趋势。例如,同坐标显示模块和同屏显示模块可以让工作人员自由选择多条曲线是显示在一个坐标内或者显示在同一个屏幕的不同坐标内,便于工作人员可以进行对比。例如,曲线颜色选择模块可以将不同的曲线通过不同的颜色进行展示,使得展示更加清晰直观,易于分辨。例如,曲线类型选择模块可以选择显示最大值曲线、最小值曲线及平均值曲线一一单独显示或者是组合显示。
与前述实施例相对应,本发明还提供了一种长时间周期的数据曲线展示装置。
如图3所示,一种长时间周期的数据曲线展示装置,包括:获取单元10、计算单元20、比较单元30及展示单元40,比较单元30与获取单元10及计算单元20分别连接,展示单元40与比较单元30连接。获取单元10可以用于根据指定的时间周期T从煤矿安全监控系统数据库中获取原始数据,确定原始数据的数量。计算单元20可以用于根据时间周期计算曲线展示界面能展示的最大数据数量。比较单元30可以用于比较原始数据的数量与最大数据数量的大小,若原始数据的数量小于或等于于最大数据数量,则曲线展示界面直接绘制原始数据的曲线;若原始数据的数量大于最大数据数量,则进行重采样周期计算处理。展示单元40可以用于统计每个重采样周期内数据的最大值、最小值及平均值,曲线展示界面获取所有重采样周期内的最大值、最小值及平均值,分别绘制最大值、最小值及平均值的曲线。
在一实施例中,获取单元10指定的时间周期T可以是一年或者几年,时间单位可以精确到秒,可以根据工作人员需要查看的时间范围进行筛选指定,根据指定的时间周期T可以筛选出对应范围内的原始数据,得到原始数据的数量DataNum。
在一实施例中,计算单元20根据时间周期计算曲线展示界面能展示的最大数据数量可以采用公式ResultNum=500+(T.Days-1)×100进行计算,其中,T.Days为时间周期T的天数,当T.Days大于6时,ResultNum为上限值1000。
在一实施例中,比较单元30中的重采样周期T1定义为时间周期除以最大数据数量得到的商值,即T1=T/ResultNum。每个重采样周期T1内无论原始数据的数量有多少,最终每个重采样周期T1内均只输出一组最大值、最小值及平均值,也就是说每个重采样周期T1内只包含三个数据,这样大大减少了周期内的数据数量,提高了程序运行效率。
在一实施例中,展示单元40还可以包括一功能模块401,功能模块401包括纵坐标调整模块、同坐标显示模块、同屏显示模块、曲线颜色选择模块、曲线类型选择模块。例如,纵坐标调整模块可以进行自动或者手动调整纵坐标的显示范围,使得曲线在曲线展示界面上显示更清晰,便于工作人员更加直观的了解变化趋势。例如,同坐标显示模块和同屏显示模块可以让工作人员自由选择多条曲线是显示在一个坐标内或者显示在同一个屏幕的不同坐标内,便于工作人员可以进行对比。例如,曲线颜色选择模块可以将不同的曲线通过不同的颜色进行展示,使得展示更加清晰直观,易于分辨。例如,曲线类型选择模块可以选择显示最大值曲线、最小值曲线及平均值曲线一一单独显示或者是组合显示。
如图4所示,本发明还提供了一种电子设备500,包括存储器501及处理器502,存储器501与处理器502连接,其中,处理器502用于控制该电子设备500的整体操作,以完成上述的长时间周期的数据曲线展示方法中的全部或部分步骤。存储器501用于存储各种类型的数据以支持在该电子设备500的操作,该存储器501可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
在一实施例中,电子设备500可以被一个或多个应用专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的长时间周期的数据曲线展示方法。
在另一实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述长时间周期的数据曲线展示方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器501,上述程序指令可由电子设备500的处理器502执行以完成上述的长时间周期的数据曲线展示方法。
本发明实施例提供的一种长时间周期的数据曲线展示装置、电子设备及计算机可读存储介质中相关部分的说明请参见本发明实施例提供的一种长时间周期的数据曲线展示方法中对应部分的详细说明,在此不再赘述。
综上所述,本发明提供了一种长时间周期的数据曲线展示方法,首先通过根据选定的时间周期获取原始数据,计算最大数据数量,然后将时间周期进行重采样周期计算,划分为有限个重采样周期,统计每个重采样周期内原始数据的最大值、最小值及平均值放在内存中,最后通过曲线展示界面将曲线快速绘制出来。本方法对任意时间周期、任意数据量的数据,在保证数据趋势精准度的同时通过较小的数据量实现数据曲线的快速绘制和展示,提高了曲线绘制效率。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
- 一种长时间周期的数据曲线展示方法、装置、设备及介质
- 数据展示方法、数据排序方法、装置、设备及介质