水文分析图件微服务化技术在文档自动生成方面的应用研究

2022-12-17 07:56张振林姬战生孙政轩金辉明
浙江水利科技 2022年6期
关键词:图件等值线图等值线

张振林,姬战生,孙政轩,金辉明

(1·杭州市水文水资源监测中心,浙江 杭州 310016;2·余杭区东苕溪水利工程运管中心,浙江 杭州 311115;3·杭州知水科技有限公司,浙江 杭州 310009)

1 问题的提出

随着水利数字化改革的不断深入,对水文分析成果质量提出越来越高的要求,希望在快讯、快报等实时分析材料中嵌入各类水文分析图件,达到图文并茂的展示效果。而水文图件绘制是一项十分繁琐的任务。水文图件种类繁多,有雨量过程图件、等值线图件、水位图件、水库蓄水图件等,而且绘制时需要整理大量的实时和历史水文资料作为基础,工作量大且容易出错,所以水文图件自动绘制是信息化转换的必然要求,也是水文数字化改革中的重要一环。

水文图件作为文档自动生成的重要组成部分,国内外研究较多,如:姜鹏[1]构建基于云平台的防汛文档智能生成模型,实现水利分析文档的自动构建;曲明成[2]构建基于工作流的文档生成系统,实现电力制造企业中某些复杂计算的自动化;BUCHNER J[3]结合MVC架构设计文档描述模型框架HotDoc;葛芬[4]提出基于VBA、ADO和ASP等多项技术,利用模板建立Word文档的自动生成平台。综上所述,在文档自动生成方面,已有比较完善的研究可供参考,而在水文图件的自动生成方面,目前国内还没有相关研究。

本文根据水利防汛和水文分析的实际应用需要,对水文分析图件进行研究,提取公共分析图件,并基于当前主流的微服务技术,以服务调用方式提供图件生成支持,在完成文档报告“一键生成”的同时,提供水文分析图件的自动生成和插入,大大提高了分析效率和分析质量。

2 服务架构

平台采用4层系统架构(见图1)。

图1 服务架构图

数据服务层:为系统提供基础性数据服务,实时准确地提供各类水文应用相关数据。

服务支撑层:为应用层提供基础性信息服务。

微服务层:通过调用基础性服务,为用户提供应用需要的图件。

应用层:对于图件的调用,目前主要是文档生成时调用和应用系统直接调用。

3 服务关键技术

3.1 基于微服务的数据访问技术

水文分析图件生成的基础是数据,在一个省市级的数据中心,数据量大且种类繁多。为将数据和业务有效隔离,采用微服务技术,对外提供各种高效方便的数据服务,各应用只需通过调用指定服务即可获取各类分析成果,大大提高应用开发效率,并利于系统后期维护。

3.2 水文分析成果服务化

水文分析过程中会产生各类分析成果,由于成果未进行服务化处理,很多固化在某个文档中,很难在各文档间引用或进行成果的定制化处理。本研究将对所有水文分析成果进行分类和抽象化处理,形成公共的水文分析成果服务。

3.3 等值线图件生成

等值线图是水文分析计算中最常用的图形表现形式,是进行雨量空间分布分析和平原河网水位分析的基础。本研究对等值线常用算法的反距离权重法、最小曲率法、三角剖分线性插值法以及克立格法进行比较分析,并综合考虑计算机并行计算的复杂程度、计算效率等,采用逆距离加权法进行等值面计算。通过遮蔽算法对反距离权重法进行优化,充分运用当前主流服务器的并行计算能力对算法进行并行计算,保证等值线图件3 s内返回结果。等值线图件生成需要经过5个步骤:

(1)边界和站点数据获取。在绘制等值线(面)之前,首先要有完整的边界数据和用于参与计算的样本数据,即站点信息,其中包括站点的位置信息和实时降雨量数据,系统可根据边界数据从所有站点中提取边界内和周边的站点信息。

(2)站点数据筛选。综合考虑各站点的位置信息、实时降雨量和历史降雨情况,筛选出布局均匀、数据可靠的站点参与等值面计算。

(3)网格数据生成。采用逆距离加权法,并通过遮蔽算法对网格数据进行优化,生成边界内各网格的雨量数据。对计算过程进行并行化处理,提供网格计算效率,保证数据在规定时间内生成。

(4)等值线生成。采用三角网格化方法对生成的网格进行等值线提取,并对提取的等值线进行光滑处理,删除无效等值线,保证生成的等值线合理、准确、美观。

(5)图片生成。根据水文规范对网格数据进行色块着色,并在画布上绘制等值线和对应的标注,在一张图上生成等值线面图,并对图形以Base64字符格式的接口数据返回。

3.4 统计图形生成服务化

在文档中插入图形是丰富文档内容的重要手段。水文分析计算中会涉及各类图形,如:用于表达雨量同期分析的雨量柱状图,用于表达水位变化过程的水位线性过程图,用于表达水库水量分布的饼状图以及用于表达降雨分布的等值线图等,这些图形只有通过服务化才能实现生成文档时直接调用。本研究通过比较各类组件,最终选用Puppeteer作为统计图形服务化的基础组件,并通过集成ECharts或HighCharts控件对生成的图形包装成微服务,供文档应用程序调用。

4 服务应用与实践

4.1 水文业务分析系统简介

水文业务分析系统是进行水文分析文档自动生成、在线编辑和发布的综合性系统。用户可通过水文分析系统生成各类水文分析文档,包括实时水雨情分析文档、历史同期水雨情分析文档、阶段总结文档、汇报文档以及专题文档等。系统支持一键生成文档,文档内容包括文字描述、统计表格、图形展示等,图文并茂、主题内容突出、结构简洁明了,为生成水文防汛报表、报告提供强大的技术和数据支持。

4.2 文档构建过程

以一个综合性的文档报告生成为例,文档主要由实时雨情、实时河道水情、实时水库水情、洪水预报和气象预测信息5部分组成。各部分均采用文字、表格和图形进行信息表达,涉及文字生成、表格生成和图形生成至少3个服务的调用过程。比如:实时雨情通过文字和图形描述总体降雨情况、分区降雨情况以及同期降雨情况,通过等值线图对全区域的降雨情况进行表达;实时河道水情通过文字和表格对全区域内重点河道的实时水位信息以及超警戒情况进行描述,并对重点河道站以过程图的方式表达。调用结构见图2。

图2 文档构建过程服务调用结构图

4.3 文档生成效果

通过文档构建过程中对各服务的调用,可生成综合性水文分析文档,文档中包括文字和图片,用户可直接打印或导出PDF文档发布分享,效果见图3。

图3 文档生成效果图

5 结 语

针对当前水文分析文档中插入图表繁琐费时、生成的图表样式不标准等问题,本研究通过对文档的综合性分析,提取常用水文分析图件,通过图件生成技术对文档中涉及的各类图件进行微服务化封装,为各类应用文档的生成提供服务支持,为在防汛期间快速、高效地生成高质量的水文分析文档提供技术和案例参考。

猜你喜欢
图件等值线图等值线
一种地质图件数据管理系统设计思路
一种基于IDW 的等值线、等值面前端生成方法
遥感解译成果图件矢量化方法技术研究*
基于规则预计格网的开采沉陷等值线生成算法*
基于GeoProbe地球物理平台的软件等值线追踪算法研究与软件开发
基于MapGIS和ArcGIS的遥感解译成果图件数据库设计与实现
如何来解决等值线问题
“等值线”的数学特征及其应用
Surfer软件在气象资料自动成图中的应用研究
CorelDRAW绘图软件在地学科技期刊中应用探讨