呂 筱,呂品姬,彭懋磊,張 萍,李 垠
(湖北省地震局(地震預(yù)警湖北省重點實驗室),湖北武漢)
中國地震局于2020 年開始推進地震臺站改革,2021 年初,湖北省地震局正式掛牌成立了四個地震監(jiān)測中心站,分別位于武漢、宜昌、襄陽和恩施。地震監(jiān)測中心站履行省地震局賦予的轄區(qū)內(nèi)地震監(jiān)測工作職責(zé),同時承擔(dān)相應(yīng)的地震監(jiān)測設(shè)施運行維護保障任務(wù)以及地震預(yù)報預(yù)警、地震災(zāi)害風(fēng)險防治和地震應(yīng)急響應(yīng)等業(yè)務(wù)工作[1]。
為了全面掌握地震監(jiān)測中心站業(yè)務(wù)工作情況,湖北省地震局業(yè)務(wù)管理部門于2021 年推行了全省每月地震運維通報制度。通過對測震站網(wǎng)和地球物理站網(wǎng)的運行情況、儀器運維保障情況、震情跟蹤會商情況以及信息網(wǎng)絡(luò)通斷情況等業(yè)務(wù)環(huán)節(jié)設(shè)立不同的指標(biāo),動態(tài)了解每個中心站業(yè)務(wù)工作狀況。由于業(yè)務(wù)環(huán)節(jié)多、每個中心站運維強度不同,運維通報文本內(nèi)容冗長,難以實現(xiàn)縱向和橫向的指標(biāo)對比。因此,迫切需要通過可視化技術(shù)提升運維指標(biāo)的可讀性和指導(dǎo)作用。
本文通過ECharts 數(shù)據(jù)可視化圖表庫設(shè)計開發(fā)出具有地圖和圖表數(shù)據(jù)顯示功能的地震監(jiān)測中心站運維指標(biāo)可視化平臺,方便管理部門和中心站對運維情況有更為直觀的認(rèn)識,為提高中心站運維效率進一步打下基礎(chǔ)。
湖北省地震監(jiān)測中心站運維指標(biāo)主要包括站網(wǎng)運行、儀器運維、震情跟蹤和信息網(wǎng)絡(luò)類,基本涵蓋了地震監(jiān)測業(yè)務(wù)的各個環(huán)節(jié)。
站網(wǎng)運行類指標(biāo)根據(jù)站網(wǎng)類型的不同而設(shè)置不同的指標(biāo),如測震類站網(wǎng)(包括測震站網(wǎng)、強震站網(wǎng)、預(yù)警站網(wǎng))主要通過運行率和連通率等指標(biāo)表征站網(wǎng)運行狀況;地球物理類站網(wǎng)(包括地形變站網(wǎng)、電磁站網(wǎng)、地下流體站網(wǎng))主要通過數(shù)據(jù)有效率和資料匯集率等指標(biāo)表征站網(wǎng)運行狀況。
儀器運維類指標(biāo)主要包括各種儀器的數(shù)量情況、備機備件維護以及檢修和管理情況。震情跟蹤類指標(biāo)主要根據(jù)分析預(yù)報中會商技術(shù)方法應(yīng)用情況、異常跟蹤分析情況、數(shù)據(jù)與報告質(zhì)量等指標(biāo)表征震情跟蹤狀況。信息網(wǎng)絡(luò)類指標(biāo)主要包括連通率、網(wǎng)絡(luò)安全維護情況、系統(tǒng)維護情況等指標(biāo)。
本平臺主要實現(xiàn)以下幾點功能:
(1) 規(guī)范化的運維指標(biāo)數(shù)據(jù)的輸入輸出。本平臺提供規(guī)范化的運維指標(biāo)打分表格下載和上傳,并實現(xiàn)圖表數(shù)據(jù)的導(dǎo)出功能。
(2) 運維指標(biāo)的可視化。本平臺分別將測震站網(wǎng)、地球物理站網(wǎng)、分析預(yù)報、信息網(wǎng)絡(luò)與應(yīng)急、技術(shù)保障五個分項下運維指標(biāo)數(shù)據(jù)進行可視化展示。地圖標(biāo)注出四個中心站的位置并用不同顏色表示出不同中心站所管轄區(qū)域。
(3) 平臺用戶的登錄。為管理人員和運維人員提供登錄功能。
用戶可以通過瀏覽器訪問該平臺,圖1 是系統(tǒng)結(jié)構(gòu)圖。
數(shù)據(jù)庫主要負(fù)責(zé)數(shù)據(jù)存儲和訪問[2]。MySQL使用簡單易于維護并且有高可靠性[3]。本平臺通過MySQL存儲、更新、檢索四個地震中心站在不同時間的考核數(shù)據(jù)。
本平臺設(shè)計數(shù)據(jù)表分別用來存儲指標(biāo)得分情況、中心站信息、考核指標(biāo)信息以及用戶信息。數(shù)據(jù)庫結(jié)構(gòu)見圖2 所示。
圖2 數(shù)據(jù)庫關(guān)系圖
本平臺以SpringBoot 框架為基礎(chǔ)、以Vue 為前端框架,配合MySQL數(shù)據(jù)庫來實現(xiàn)。Spring是主流java web 開發(fā)框架[4],Spring Boot 又在Spring 框架的基礎(chǔ)上簡化了配置過程和開發(fā)流程[5],能夠快速搭建基于Spring 框架的項目,極大提高了開發(fā)和部署效率[6]。Vue 是輕量的、易開發(fā)的前端框架[3],用vue-cli 腳手架能夠快速搭建前端框架[5]。
ECharts 是一個基于Zrender 繪制庫,使用JavaScript開發(fā)的開源可視化庫[7]。它可以提供多種豐富的數(shù)據(jù)統(tǒng)計圖表,能夠提供直觀、生動、可交互、可高度個性化定制的數(shù)據(jù)可視化圖表[8]。近年來,ECharts 技術(shù)逐步應(yīng)用于地震、水文及氣象等數(shù)據(jù)可視化系統(tǒng)[9-11]。本平臺在vue 項目的main.js 文件中通過import * as echarts from'echarts' 來引入echarts,使用Vue.prototype.$echarts =echarts 來設(shè)置全局echarts。地震中心站運維指標(biāo)顯示頁面利用DataV 結(jié)合ECharts 來顯示運維數(shù)據(jù)。DataV 能夠為平臺提供全屏容器和各種邊框組件。
系統(tǒng)分別部署后端和前端。在服務(wù)器上安裝、配置并部署jdk、mysql、node.js 和nginx,開啟mysql 和nginx服務(wù)。本文使用IntelliJ IDEA 下maven 的package 對后端代碼進行打包,并將target 文件夾下生成的jar 包文件移動到服務(wù)器的目錄下并運行jar 包。在IntelliJ IDEA的控制臺下使用npm run build 命令將前端代碼打包成dist 目錄,將打包完成的文件移動到服務(wù)器的文件夾下。然后對nginx.conf 配置文件的路由映射、請求位置、首頁等進行配置。
使用SpringBoot、Vue 和MySQL 能夠輕易實現(xiàn)Java Web 開發(fā)的前后端分離。分別對前端和后端進行開發(fā),通過數(shù)據(jù)接口來請求和獲取數(shù)據(jù),就能輕松實現(xiàn)前后端的解耦合,極大提升開發(fā)效率。
本平臺主要分為以下三個頁面:
(1) 登錄模塊。登錄模塊是平臺默認(rèn)首頁,用戶登錄成功后能夠顯示ECharts 中心站運維平臺頁面。登錄頁面如圖3 顯示。
圖3 登錄頁面
(2) ECharts 中心站運維平臺模塊。ECharts 中心站運維平臺模塊主要從數(shù)據(jù)庫中獲取各模塊相關(guān)數(shù)據(jù),利用ECharts 不同類型圖表進行多角度、多維度展示。將鼠標(biāo)移動到數(shù)據(jù)上方時能夠顯示各項對應(yīng)數(shù)據(jù)。也可以對圖例進行勾選只顯示想要的數(shù)據(jù)進行圖例交互。各模塊還提供保存為圖片的功能。不同模塊可視化的展現(xiàn)方式不同,ECharts 中心站運維平臺頁面如圖4 顯示。
圖4 中心站運維平臺頁面
圖5 打分表頁面
(3) 打分表模塊。打分表模塊頁面提供中心站運維打分表的下載和上傳。打分表模板設(shè)置有測震預(yù)警站網(wǎng)、地球物理站網(wǎng)、信息網(wǎng)絡(luò)、震情跟蹤會商、儀器運維保障五個分項下運維指標(biāo)共50 余項。每個月可以下載打分表模板并且按照模板文件的固定格式要求填寫四個中心站的得分情況并上傳填寫好的運維表格文件。
本平臺首先驗證文件內(nèi)容是否符合格式要求并且是否已經(jīng)存在于數(shù)據(jù)庫中。如果格式正確并且數(shù)據(jù)庫中尚未有對應(yīng)數(shù)據(jù),則能夠成功上傳。本平臺把打分表中的各項數(shù)據(jù)解析并提交到數(shù)據(jù)庫,再分別獲取各個模塊所需要的各項數(shù)據(jù)并將格式化的數(shù)據(jù)提供給表示層。以下是打分表模塊頁面。
ECharts 中心站運維平臺模塊包括以下八個顯示模塊,每個模塊都使用不同的可視化展現(xiàn)方式。
(1) 測震預(yù)警臺套數(shù)模塊 該模塊主要功能是顯示四個中心站目前在測震類站網(wǎng)分別擁有的設(shè)備臺套數(shù)。該模塊選取堆疊柱狀圖來實現(xiàn),不僅能夠反映各中心站整體臺套數(shù)與各部分的關(guān)系也能直觀反映各中心站之間的數(shù)量差異。
(2) 測震預(yù)警站網(wǎng)運行率模塊 該模塊主要是顯示四個中心站當(dāng)前月份一般站、基本站、基準(zhǔn)站等平均運行率的情況。該模塊使用折線圖來反映不同中心站的運行率情況,用不同顏色標(biāo)識不同類別的運行率。動態(tài)選擇運行率的最大值和最小值作為y 軸的取值范圍,方便查看。
(3) 地球物理臺套數(shù)模塊 該模塊顯示四個中心站目前在地球物理站網(wǎng)方面分別擁有的設(shè)備臺套數(shù)。該模塊使用柱狀圖反映不同中心站的數(shù)量上的對比。
(4) 地球物理站網(wǎng)運行情況模塊 該模塊顯示四個中心站當(dāng)前月份地球物理站網(wǎng)資料匯集率和數(shù)據(jù)有效率的情況。動態(tài)選擇資料匯集率的最大值和最小值作為y軸的取值范圍,方便查看。
(5) 分項指標(biāo)統(tǒng)計圖模塊 該模塊顯示四個中心站當(dāng)前月份分別在五項分項中的得分情況和總分情況。該模塊既能直觀比較四個中心站的總分情況又能比較各分項的情況。因為總分一般都在85 分以上,所以選擇85 分到最高分作為y軸的取值范圍,方便查看。
(6) 分項情況模塊 該模塊使用雷達圖顯示四個中心站當(dāng)前月份在五項分項中的得分情況。雷達圖能夠更直觀顯示出五項指標(biāo)的得失分情況。
(7) 總分統(tǒng)計模塊 該模塊主要功能是使用折線圖顯示四個中心站最近半年的總分走勢。折線圖方便縱向和橫向?qū)Ρ炔榭纯偡智闆r。
(8) 湖北省中心站分布顯示模塊 該模塊在湖北省地圖上標(biāo)注出四個中心站的位置和各中心站所轄市州行政區(qū)域。該模塊使用ECharts 中的geo 組件引入的湖北地圖json 文件, 并在地理坐標(biāo)系上對中心站繪制帶有漣漪效果的散點圖以突出中心站的位置。該模塊還設(shè)置了鼠標(biāo)滾動縮放和鼠標(biāo)移入?yún)^(qū)域變色等交互功能。
本平臺已經(jīng)成功上傳2023 年各類考核項目的部分打分情況,管理人員和運維人員可以通過該平臺縱向和橫向?qū)Ρ炔榭此膫€地震監(jiān)測中心站的各項業(yè)務(wù)的最新信息和各考核項的得失分情況。應(yīng)用效果良好。
本文設(shè)計并實現(xiàn)了一種基于ECharts 的地震中心站運維指標(biāo)可視化平臺。根據(jù)地震中心站運維指標(biāo)管理的需求,實現(xiàn)了各項指標(biāo)多維度的可視化管理,能夠極大提高工作效率,為管理人員和運維人員提供了更方便、更直觀的服務(wù)。本文提出的可視化平臺后續(xù)還可以進一步完善,為地震中心站運維管理工作提供更多支持。