一种生成监测图表的方法、装置及系统转让专利

申请号 : CN201110450121.2

文献号 : CN103186516B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈炳富金永新张伟斌

申请人 : 广州市中海达测绘仪器有限公司

摘要 :

本发明公开了一种生成监测图表的方法,包括:获取存储于数据库中用户所需的监测信息;将所述监测信息转换为数据实例列表并转发至客户端;客户端根据所述数据实例列表生成图表。本发明还公开了一种服务器、客户端及一种监测图表生成系统。采用本发明,服务器与客户端间增加了人机交互及增强了用户体验,更人性化。另外,由客户端根据所述数据实例列表所生成的图表,让用户可以直观的看到尾矿坝当前或历史变化,从而为有效的预防灾害的发生提供参考,满足用户的需求。

权利要求 :

1.一种生成监测图表的方法,其特征在于,包括:获取存储于数据库中用户所需的监测信息;

将所述监测信息转换为数据实例列表并转发至客户端;

客户端根据所述数据实例列表生成图表;

所述将监测信息转换为数据实例列表的步骤包括:把数据库中用于存储监测信息的数据表映射成类,再把类中的字段进行组合以转换为数据实例列表;

所述客户端根据数据实例列表生成图表的步骤包括:根据所述数据实例列表查找关键值并生成矩形区域,所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴;

根据所述数据实例列表生成曲线;

图表显示多条历史变化曲线,当鼠标放置在曲线的点上时,会有该点的详细数据显示。

2.如权利要求1所述的 生成监测图表的方法,其特征在于,所述获取存储于数据库中用户所需的监测信息的步骤包括:获取客户端的查询信息,所述查询信息包括时间范围、时间间隔、查询目标;

根据所述查询信息查询存储于所述数据库中的监测信息。

3.如权利要求1~2任一项所述的生成监测图表的方法,其特征在于,还包括:判断存储于所述数据库中的监测信息是否异常,判断为是时,删除所述监测信息,

判断为否时,存储所述监测信息。

4.一种服务器,其特征在于,包括:用于获取存储于数据库中用户所需的监测信息的获取单元;

与所述获取单元相连,用于将所述监测信息转换为数据实例列表的转换单元;

与所述转换单元相连,用于将所数据实例列表转发至客户端的转发单元;

所述转换单元把数据库中用于存储监测信息的数据表映射成类,再把类中的字段进行组合以转换为数据实例列表;

所述获取单元包括:

用于获取客户端的查询信息的获取子单元,所述查询信息包括时间范围、时间间隔、查询目标;

与所述获取子单元相连,用于根据所述查询信息查询存储于所述数据库中的监测信息的查询子单元。

5.如权利要求4所述的服务器,其特征在于,还包括:用于判断存储于所述数据库中的监测信息是否异常的判断单元;

与所述判断单元相连,用于当所述判断单元的判断出所述监测信息异常时,删除所述监测信息的删除单元;

与所述判断单元相连,用于当所述判断单元的判断出所述监测信息正常时,存储所述监测信息的储存单元。

6.一种客户端,其特征在于,数据实例列表由服务器把数据库中用于存储监测信息的数据表映射成类,再把类中的字段进行组合以转换而成,所述客户端包括用于根据所述数据实例列表生成图表的图表单元;

所述图表单元包括:

用于根据所述数据实例列表查找关键值的查找子单元,所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴;

与所述查找子单元相连,用于根据所述关键值生成矩形区域的第一生成子单元;

与所述第一生成子单元相连,用于根据所述数据实例列表生成曲线的第二生成子单元;

图表显示多条历史变化曲线,当鼠标放置在曲线的点上时,会有该点的详细数据显示。

7.一种监测图表生成系统,其特征在于,包括:用于实时采集坝区的监测信息的设备数据采集器;

与所述设备数据采集器相连,用于存储所述设备数据采集器所采集的监测信息的数据库;

如权利要求4~5任一项所述的服务器;

如权利要求6所述的客户端。

说明书 :

一种生成监测图表的方法、装置及系统

技术领域

[0001] 本发明涉及监测领域,尤其涉及一种生成监测图表的方法、装置及系统。

背景技术

[0002] 图表按照一定的规范将数据以视图的方式绘制出来,使得数据直观生动。图表利用几何学上的点、线、面、体等图形,来表示数据的多少、分布,以及变化趋势或相互关系。
[0003] 目前,监控仪器采集的数据保存到数据库后,只能通过简单的图表显示给用户,而简单的图表不支持多曲线显示,不支持多y轴显示、更不支持水平轴和垂直轴上数值的旋转,无法让用户简单、直观、有效的看到复杂的统计结果。
[0004] 而且,国内的图表控件很少,而支持silverlight的图表控件几乎没有,现有的图表控件其实就是微软.net框架下公用的免费控件,该免费控件支持的功能简单,且不稳定,无法满足项目中复杂数据统计的显示要求。

发明内容

[0005] 本发明所要解决的技术问题在于,提供一种生成监测图表的方法、装置及系统,可支持复杂数据的绑定、支持多曲线、支持多y轴、支持水平轴和垂直轴上数值的旋转。
[0006] 为了解决上述技术问题,本发明提供了一种生成监测图表的方法,包括:获取存储于数据库中用户所需的监测信息;将所述监测信息转换为数据实例列表并转发至客户端;客户端根据所述数据实例列表生成图表。
[0007] 作为上述方案的改进,所述获取存储于数据库中用户所需的监测信息的步骤包括:获取客户端的查询信息,所述查询信息包括时间范围、时间间隔、查询目标;根据所述查询信息查询存储于所述数据库中的监测信息。
[0008] 作为上述方案的改进,所述客户端根据数据实例列表生成图表的步骤包括:根据所述数据实例列表查找关键值并生成矩形区域,所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴;根据所述数据实例列表生成曲线。
[0009] 作为上述方案的改进,所述的生成监测图表的方法还包括:判断存储于所述数据库中的监测信息是否异常,判断为是时,删除所述监测信息,判断为否时,存储所述监测信息。
[0010] 相应地,本发明还提供了一种服务器,包括:用于获取存储于数据库中用户所需的监测信息的获取单元;与所述获取单元相连,用于将所述监测信息转换为数据实例列表的转换单元;与所述转换单元相连,用于将所数据实例列表转发至客户端的转发单元。
[0011] 作为上述方案的改进,所述获取单元包括:用于获取客户端的查询信息的获取子单元,所述查询信息包括时间范围、时间间隔、查询目标;与所述获取子单元相连,用于根据所述查询信息查询存储于所述数据库中的监测信息的查询子单元。
[0012] 作为上述方案的改进,所述的服务器还包括:用于判断存储于所述数据库中的监测信息是否异常的判断单元;与所述判断单元相连,用于当所述判断单元的判断出所述监测信息异常时,删除所述监测信息的删除单元;与所述判断单元相连,用于当所述判断单元的判断出所述监测信息正常时,存储所述监测信息的储存单元。
[0013] 相应地,本发明还提供了一种客户端,包括用于根据所述数据实例列表生成图表的图表单元。
[0014] 作为上述方案的改进,所述图表单元包括:用于根据所述数据实例列表查找关键值的查找子单元,所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴;与所述查找子单元相连,用于根据所述关键值生成矩形区域的第一生成子单元;与所述第一生成子单元相连,用于根据所述数据实例列表生成曲线的第二生成子单元。
[0015] 相应地,本发明还提供了一种监测图表生成系统,包括:用于实时采集坝区的监测信息的设备数据采集器;与所述设备数据采集器相连,用于存储所述设备数据采集器所采集的监测信息的数据库;用于将存储于所述数据库中用户所需的监测信息转换为数据实例列表的服务器;用于根据所述数据实例列表生成图表的客户端。
[0016] 实施本发明的有益效果在于:服务器获取客户端的查询信息并根据所述查询信息查询存储于所述数据库中的监测信息,再将所述监测信息转换为数据实例列表并转发至客户端。同时,客户端根据所述数据实例列表生成图表。服务器与客户端间增加了人机交互及增强了用户体验,更加地人性化。另外,由客户端根据所述数据实例列表所生成的图表,可支持复杂数据的绑定、支持多曲线、支持多y轴、支持水平轴和垂直轴上数值的旋转,让用户可以直观的看到尾矿坝当前或历史变化,从而为有效的预防灾害的发生提供参考,满足用户的需求。

附图说明

[0017] 图1是本发明一种生成监测图表的方法的第一实施例流程图;
[0018] 图2是本发明一种生成监测图表的方法的第二实施例流程图;
[0019] 图3是本发明一种生成监测图表的方法的第三实施例流程图;
[0020] 图4是本发明一种生成监测图表的方法的第四实施例流程图;
[0021] 图5是本发明一种监测图表生成系统的结构示意图;
[0022] 图6是本发明一种监测图表生成系统中服务器3的结构示意图;
[0023] 图7是本发明一种监测图表生成系统中服务器3的另一结构示意图;
[0024] 图8是本发明一种监测图表生成系统中服务器3的又一结构示意图;
[0025] 图9是本发明一种监测图表生成系统中客户端4的结构示意图。

具体实施方式

[0026] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
[0027] 图1是本发明一种生成监测图表的方法的第一实施例流程图,包括:
[0028] S100,获取存储于数据库中用户所需的监测信息。
[0029] 需要说明的是,坝区的监测信息由设备数据采集器采集并存储于数据库的字段中,服务器获取存储于数据库中用户所需的监测信息。
[0030] S101,将所述监测信息转换为数据实例列表并转发至客户端。
[0031] 服务器将所述监测信息抽象为数据实例列表,即把数据库中用于存储监测信息的数据表映射成类,再把类中的字段进行组合以转换为数据实例列表。这样,可以把复杂的数据库结构进行非常好的封装,让数据的读取和传递更加方便。
[0032] 同时,服务器利用Windows通讯接口将数据实例列表转发至客户端,具有良好的统一性、互操作性、安全性及兼容性。
[0033] S102,客户端根据所述数据实例列表生成图表。
[0034] 客户端根据所述数据实例列表生成图表,用户根据图表读取所需的信息。图表可显示设备数据采集器所采集的监测信息并显示多条历史变化曲线。另外, X、Y轴坐标随数据实例列表作相应的改变,从而匹配数据,进而不会产生留白现象。
[0035] 图2是本发明一种生成监测图表的方法的第二实施例流程图,包括:
[0036] S200,获取客户端的查询信息。
[0037] 需要说明的是,用户通过客户端发布查询信息,所述查询信息包括时间范围、时间间隔、查询目标。用户可以根据实际需求设置查询信息,同时服务器实时获取客户端的查询信息。
[0038] S201,根据所述查询信息查询存储于所述数据库中的监测信息。
[0039] 坝区的监测信息由设备数据采集器采集并存储于数据库的字段中,服务器获取用户的查询信息后根据查询信息查询存储于数据库中的监测信息。
[0040] S202,将所述监测信息转换为数据实例列表并转发至客户端。
[0041] 服务器将所述监测信息抽象为数据实例列表后通过Windows通讯接口将数据实例列表转发至客户端。
[0042] S203,客户端根据所述数据实例列表生成图表。
[0043] 例如,用户需要查询2010年1月的干滩长度(即坝面与地下水面的高程)变化状态。用户可在客户端设置查询信息的时间范围为2010年1月,时间间隔为6小时,查询目标为干滩长度。服务器实时获取客户端的查询信息,根据查询信息查询并抽取出由设备数据采集器采集并存储于数据库中的监测信息,其中所述监测信息为于2010年1月时间段内,每间隔
6小时的坝面与地下水面的高程。服务器把数据库中用于存储所述监测信息的各个数据表映射成类,再把类中的字段进行组合以转换为统一的数据实例列表。同时,服务器利用Windows通讯接口将数据实例列表转发至客户端。客户端根据所述数据实例列表生成图表以显示干滩长度的历史变化曲线,当鼠标放置在曲线的点上时,会有该点的详细数据显示。
[0044] 更佳地,用户可在时间范围一致的情况下同时选择多个查询目标,服务器根据用户需求生成两组数据实例列表,客户端根据所述数据实例列表同时生成两组曲线以支持多曲线显示。
[0045] 图3是本发明一种生成监测图表的方法的第三实施例流程图,包括:
[0046] S300,获取客户端的查询信息。
[0047] 用户可以根据实际需求在客户端设置查询信息,同时服务器实时获取客户端的查询信息。
[0048] S301,根据所述查询信息查询存储于所述数据库中的监测信息。
[0049] 坝区的监测信息由设备数据采集器采集并存储于数据库的字段中,服务器获取用户的查询信息后根据查询信息查询存储于数据库中的监测信息。
[0050] S302,将所述监测信息转换为数据实例列表并转发至客户端。
[0051] 服务器将所述监测信息抽象为数据实例列表后通过Windows通讯接口将数据实例列表转发至客户端。
[0052] S303,根据所述数据实例列表查找关键值并生成矩形区域。
[0053] 所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴。
[0054] 数据实例列表内包括多组数据值,客户端根据数据实例列表查找最大X轴、最小X轴、最小Y轴及最大Y轴,并根据所述关键值生成图表的矩形区域。
[0055] S304,根据所述数据实例列表生成曲线。
[0056] 所述客户端根据数据实例列表在矩形区域内利用贝塞尔曲线及路径标记语法生成曲线。
[0057] 例如,用户需要查询2011年8月的降雨量。用户可在客户端设置查询信息的时间范围为2011年8月,时间间隔为1天,查询目标为降雨量。服务器实时获取客户端的查询信息,根据查询信息查询并抽取出由设备数据采集器采集并存储于数据库中的监测信息,其中所述监测信息为2011年8月,每天的降雨量。服务器把数据库中用于存储所述监测信息的各个数据表映射成类,再把类中的字段进行组合以转换为统一的数据实例列表。同时,服务器利用Windows通讯接口将数据实例列表转发至客户端。以时间为X轴,降雨量为Y轴,此时客户端根据数据实例列表查找出最大X轴、最小X轴、最小Y轴及最大Y轴,并根据所述关键值生成图表的矩形区域。同时,客户端根据数据实例列表在矩形区域内利用贝塞尔曲线及路径标记语法生成降雨量曲线以显示降雨量的历史变化曲线。
[0058] 需要说明的是,客户端还可有效检测X轴坐标值的长度以控制X轴坐标值可的旋转,使X轴坐标值旋转至适合的角度,进而解决X轴坐标值过长时,所造成的文本叠加显示不清楚的问题。
[0059] 图4是本发明一种生成监测图表的方法的第四实施例流程图,包括:
[0060] S400,判断存储于所述数据库中的监测信息是否异常。
[0061] 需要说明的是,坝区的监测信息由设备数据采集器采集并存储于数据库的字段中。在工作过程中,监测信息会由于设备数据采集器的故障而产生异常值,因此存储于数据库中的监测信息需要进行过滤处理以实现数据的优化。服务器根据拉伊达准则、格拉布斯准则来排除奇异值。
[0062] S401,判断为是时,删除所述监测信息。
[0063] 当服务器判断出监测信息异常时,将异常的监测信息删除,使得最终显示给用户的数据是直观无误的。
[0064] S402,判断为否时,存储所述监测信息。
[0065] 当服务器判断出监测信息正常时,存储监测信息以方便用户进行查询。
[0066] 图5是本发明一种监测图表生成系统的结构示意图,包括:
[0067] 用于实时采集坝区的监测信息的设备数据采集器1。
[0068] 需要说明的是,所述设备数据采集器1的数量至少为1个。
[0069] 与所述设备数据采集器1相连,用于存储所述设备数据采集器1所采集的监测信息的数据库2。
[0070] 用于将存储于所述数据库2中用户所需的监测信息转换为数据实例列表的服务器3。
[0071] 服务器3获取用户所需的查询信息,并根据查询信息查询存储于数据库2中的监测信息,将查询到的监测信息转换为数据实力列表并转发至客户端4。
[0072] 用于根据所述数据实例列表生成图表的客户端4。
[0073] 客户端4根据数据实例列表查找关键值并生成矩形区域,并根据数据实例列表在矩形区域内生成曲线。所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴。
[0074] 例如,设备数据采集器1实时采集坝区的监测信息并存储至数据库2中,用户通过客户端4设置查询信息。服务器3获取客户端4的查询信息,并根据查询信息查询存储于数据库2中的监测信息,将查询到的监测信息转换为数据实力列表并转发至客户端4。客户端4根据数据实例列表查找关键值并生成矩形区域,并根据数据实例列表在矩形区域内生成曲线以图表的形式直观地显示用户所需的信息。
[0075] 图6是本发明一种监测图表生成系统中服务器3的结构示意图,包括:
[0076] 用于获取存储于数据库2中用户所需的监测信息的获取单元31。
[0077] 与所述获取单元31相连,用于将所述监测信息转换为数据实例列表的转换单元32。
[0078] 与所述转换单元32相连,用于将所述数据实例列表转发至客户端4的转发单元33。
[0079] 需要说明的是,获取单元31获取存储于数据库2中用户所需的监测信息,转换单元32将获取单元31所获取的监测信息转换为数据实例列表后并由转发单元33通过Windows通讯接口转发至客户端4。
[0080] 图7是本发明一种监测图表生成系统中服务器3的另一结构示意图,所述获取单元31包括:
[0081] 用于获取客户端4的查询信息的获取子单元311。
[0082] 需要说明的是,用户根据实际需求在客户端4设置查询信息,所述查询信息包括时间范围、时间间隔、查询目标。获取子单元311实时获取客户端4的查询信息。
[0083] 与所述获取子单元311相连,用于根据所述查询信息查询存储于所述数据库2中的监测信息的查询子单元312。
[0084] 获取单元31由获取子单元311实时获取客户端4的查询信息并通过查询子单元312根据所述查询信息查询存储于所述数据库2中的监测信息。转换单元32将查询子单元312所查询出的监测信息转换为数据实例列表,然后转发单元33将数据实例列表通过Windows通讯接口转发至客户端4。
[0085] 图8是本发明一种监测图表生成系统中服务器3的又一结构示意图,服务器3还包括:
[0086] 用于判断存储于所述数据库2中的监测信息是否异常的判断单元34。
[0087] 需要说明的是,坝区的监测信息由设备数据采集器1采集并存储于数据库2的字段中。在工作过程中,监测信息会由于设备数据采集器1的故障而产生异常值,因此存储于数据库2中的监测信息需要进行过滤处理以实现数据的优化。因此服务器3中的判断单元34根据拉伊达准则、格拉布斯准则来排除奇异值。
[0088] 与所述判断单元34相连,用于当所述判断单元34的判断出所述监测信息异常时,删除所述监测信息的删除单元35。
[0089] 当判断单元34判断出监测信息异常时,删除单元35将异常的监测信息删除,使得最终显示给用户的数据是直观无误的。
[0090] 与所述判断单元34相连,用于当所述判断单元34的判断出所述监测信息正常时,存储所述监测信息的储存单元36。
[0091] 当判断单元34判断出监测信息正常时,储存单元36存储监测信息以方便用户进行查询。
[0092] 图9是本发明一种监测图表生成系统中客户端4的结构示意图,包括用于根据所述数据实例列表生成图表的图表单元41。
[0093] 更佳地,所述图表单元41包括:
[0094] 用于根据所述数据实例列表查找关键值的查找子单元411。所述关键值为最大X轴、最小X轴、最小Y轴、最大Y轴。
[0095] 与所述查找子单元411相连,用于根据所述关键值生成矩形区域的第一生成子单元412。
[0096] 需要说明的是,数据实例列表内包括多组数据值,查找子单元411根据数据实例列表查找最大X轴、最小X轴、最小Y轴及最大Y轴,并由第一生成子单元412根据所述关键值生成图表的矩形区域。
[0097] 与所述第一生成子单元412相连,用于根据所述数据实例列表生成曲线的第二生成子单元413。
[0098] 第二生成子单元413根据数据实例列表在第一生成子单元412所生成的矩形区域内利用贝塞尔曲线及路径标记语法生成曲线。
[0099] 例如,用户需要查询2011年8月的降雨量。用户可在客户端4设置查询信息的时间范围为2011年8月,时间间隔为1天,查询目标为降雨量。服务器3中的获取子单元311实时获取客户端4的查询信息,查询子单元312根据查询信息查询并抽取出由设备数据采集器1采集并存储于数据库2中的监测信息,其中所述监测信息为2011年8月,每天的降雨量。服务器3中的转换单元32把数据库2中用于存储所述监测信息的各个数据表映射成类,再把类中的字段进行组合以转换为统一的数据实例列表。同时,转发单元33利用Windows通讯接口将数据实例列表转发至客户端4。以时间为X轴,降雨量为Y轴,此时客户端4中的查找子单元411根据数据实例列表查找出最大X轴、最小X轴、最小Y轴及最大Y轴,并由第一生成子单元412根据所述关键值生成图表的矩形区域。同时,第二生成子单元413根据数据实例列表在矩形区域内利用贝塞尔曲线及路径标记语法生成降雨量曲线以显示降雨量的历史变化曲线。
[0100] 更佳地,用户可在时间范围一致的情况下同时选择多个查询目标,服务器3根据用户需求生成两组数据实例列表,客户端4根据所述数据实例列表同时生成两组曲线以支持多曲线显示。
[0101] 由上可知,服务器3获取客户端4的查询信息并根据所述查询信息查询存储于所述数据库2中的监测信息,再将所述监测信息转换为数据实例列表并转发至客户端4。同时,客户端4根据所述数据实例列表生成图表。服务器与客户端间增加了人机交互及增强了用户体验,更加地人性化。另外,由客户端根据所述数据实例列表所生成的图表,可支持复杂数据的绑定、支持多曲线、支持多y轴、支持水平轴和垂直轴上数值的旋转,让用户可以直观的看到尾矿坝当前或历史变化,从而为有效的预防灾害的发生提供参考,满足用户的需求。
[0102] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。