亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        喀斯特巖溶環(huán)境水樣關(guān)鍵數(shù)據(jù)可視化分析與研究*

        2023-02-02 03:50:48唐厚炳
        科技與創(chuàng)新 2023年2期
        關(guān)鍵詞:關(guān)鍵

        李 康,唐厚炳,周 燕

        (凱里學(xué)院,貴州 黔東南苗族侗族自治州 556011)

        1 研究背景

        現(xiàn)階段在喀斯特巖溶環(huán)境下研究地下水分布的數(shù)據(jù)模型較少[1],究其原因,主要是當(dāng)前在喀斯特巖溶洞穴環(huán)境下的采樣設(shè)備裝置較為缺乏,研究人員對水樣目標(biāo)信息研究各有不同,研究的深度也是參差不齊,對接云南省地理研究所目前在此方面的需求后,存在當(dāng)前設(shè)備采集的數(shù)據(jù)無法有效提取、數(shù)據(jù)存儲在傳統(tǒng)的傳輸介質(zhì)中而無法與計算機進(jìn)行直接數(shù)據(jù)交互、編碼方式煩瑣無法準(zhǔn)確解析等問題,一個性能良好的數(shù)據(jù)解析與可視化平臺軟件是目前云南地理研究所對數(shù)據(jù)分析的迫切需求。

        2 關(guān)鍵數(shù)據(jù)提取

        針對喀斯特巖溶洞穴環(huán)境下記錄的樣本數(shù)據(jù),其關(guān)鍵信息為樣品瓶的編號、取樣模式、起始時間、結(jié)束時間、降雨量等,不同模式下,不同觀測點水樣降落的速度(在此稱為滴速),在數(shù)據(jù)分析中占據(jù)一個重要的指標(biāo),下面將對樣本數(shù)據(jù)進(jìn)行詳細(xì)分析。

        2.1 原始樣本數(shù)據(jù)處理

        因取樣設(shè)備采用的是32位嵌入式微控制器對數(shù)據(jù)進(jìn)行預(yù)存儲,并且微控制MCU只能處理十六進(jìn)制數(shù)據(jù)[2],原始數(shù)據(jù)沒有任何規(guī)律,缺乏可讀性,具體如表1所示,因此,在程序編寫需求階段,對每個字段都進(jìn)行定義,此代碼為一段機器代碼,完全依賴于微控制的硬件。要對原始數(shù)據(jù)進(jìn)行分析就得預(yù)知關(guān)鍵數(shù)據(jù)的編碼方式、每個字段在控制器內(nèi)存當(dāng)中的存儲特征,解析成研究人員能夠閱讀的文本格式。

        表1 (續(xù))

        表1 SD卡存儲的原始數(shù)據(jù)

        獲取關(guān)鍵字段的解碼方式后,對原始數(shù)據(jù)進(jìn)行解析,可以很容易地將原始數(shù)據(jù)轉(zhuǎn)換成可閱讀的文本格式,具體如表2所示。

        表2 解析后的數(shù)據(jù)

        從表2中可知,滴速關(guān)鍵值無法直觀體現(xiàn),需要進(jìn)行二次處理,在軟件設(shè)計中,初步考慮將起始時間與結(jié)束時間換算成時間戳,然后用降雨量除以2個時間戳差值[3],計算平均滴速關(guān)鍵參考值,將滴速變量設(shè)為V,起始時間的時間戳設(shè)為S,結(jié)束時間的時間戳設(shè)為E,降雨量設(shè)為M,很容易得到樣本的關(guān)鍵數(shù)據(jù)解析成txt格式后,增強了可讀性,但是在數(shù)據(jù)量劇增時,這些變量參考值之間的相互聯(lián)系與變化趨勢仍然無法直觀體現(xiàn),云南省地理研究所目前采用的是將解析的文本格式信息二次錄入Excel表格進(jìn)行存儲,數(shù)據(jù)量較小時在一定程度上可以基本體現(xiàn)其變化趨勢,數(shù)據(jù)的處理操作也較為方便。但面對龐大數(shù)據(jù)的時候,在存儲上Excel是有局限的,會占用較多內(nèi)存資源,變化趨勢只能用單調(diào)的折線圖呈現(xiàn),本身屬性值需要查閱檢索才能獲取[4]。

        2.2 軟件界面設(shè)計

        對樣本數(shù)據(jù)的解析及需求的分析,為了更好直觀地展現(xiàn)特定關(guān)鍵參數(shù)的變化規(guī)律和趨勢,引入直角坐標(biāo)系,如圖1所示,橫坐標(biāo)為時間參數(shù)刻度軸,主要反映樣本數(shù)據(jù)采集的時間節(jié)點,縱坐標(biāo)反映的是樣本的滴速,樣本則以柱狀圖的高低變化趨勢反映滴速的變化,柱狀圖本身附帶固有屬性,在這里主要是指取樣模式和樣本編號。數(shù)據(jù)的展現(xiàn)顯示為最新的數(shù)據(jù)覆蓋前面的數(shù)據(jù),如果某一次數(shù)據(jù)量較大時,在一個展現(xiàn)頁面無法完整呈現(xiàn),則采用刷新按鈕手動觸發(fā)刷新,展示時間可以通過程序設(shè)定。

        圖1 數(shù)據(jù)分析軟件界面設(shè)計

        3 軟件實現(xiàn)

        對數(shù)據(jù)的可視化展現(xiàn),目前使用較多的是基于Python編程語言和Pyecharts的開源數(shù)據(jù)包結(jié)合的方式[5],在web頁面動態(tài)展示有較好的效果,由于樣本數(shù)據(jù)目前在內(nèi)部使用測試,無需嵌入web頁面,無需對外公開發(fā)布,本次在開發(fā)軟件上選擇現(xiàn)在比較成熟的C++框架開發(fā)平臺Qt,因為一次編譯,跨平臺使用的特點被廣泛使用在Widows、Linux等主流操作系統(tǒng)平臺[6],C++語言更接近底層硬件語言,容易移植在各個微控制器嵌入式平臺上,并且運行更加穩(wěn)定流暢。

        3.1 關(guān)鍵代碼分析

        在軟件設(shè)計中通過坐標(biāo)及直方圖來展現(xiàn)其變化規(guī)律,Qt平臺自身不具備坐標(biāo)系,需要引入第三方庫qwt[7],使用Qt Creator編譯,將編譯產(chǎn)生的文件qwt.dll、libqwt.a,qwtd.dll、libqwtd.a分別放入Qt安裝目錄bin文件夾和Qt安裝目錄lib文件夾,最后在sample_01.pro做如下配置:

        TARGET=Sample_01

        TEMPLATE=app

        LⅠBS+=-L"c:/Qt/2022.05/qt/lib"-lqwt

        ⅠNCLUDEPATH+="c:/Qt/2022.05/qt/include/qwt"

        include(E:qwtqwt.prf)

        RC_FⅠLE=SAMPLE.rc

        SOURCES += main.cppmainwindow.cpp archart.cpp

        HEADERS +=mainwindow.harchar.hcommon.h

        OTHER_FⅠLES+=SAMPLE.rcSAMPLE.ico

        工程項目文件中ⅠNCLUDEPATH+="c:/Qt/2022.05/qt/include/qwt"包含第三方庫文件的編譯路徑,barchar.h為直方圖編譯所依賴的的頭文件,SAMPLE.ico是軟件設(shè)計的圖標(biāo)文件。

        在本設(shè)計中最重要的是要將采樣時間進(jìn)行轉(zhuǎn)化,首先對文本進(jìn)行解析得到年、月、日,文本之間的用逗號分割,時間年、月、日之間用短破折號分割,具體代碼如下。

        lineStr=in.readLine();strList=lineStr.split(",");{yearStrList=strList[0].split(":");yearⅠnfoStrList=yearStrList[1].split("-");year=yearⅠnfoStrList[0].toⅠnt();month=yearⅠnfoStrList[1].toⅠnt();day=yearⅠnfoStrList[2].toⅠnt();}{hourSpeedStrList=strList[1].split(":");hour=hourSpeedStrList[0].toⅠnt();minute=hourSpeedStrList[1].toⅠnt();second = hourSpeedStrList[2].mid(0,7).toFloat();if(hourSpeedStrList[3]==""){qDebug()<<"@@@@@@@@@@@@@@@@@";speed = hourSpeedStrList[7].mid(0,7).toFloat();}else{speed = hourSpeedStrList[6].mid(0,7).toFloat();}}

        所有時間數(shù)據(jù)處理完成后,使用函數(shù)ⅠnsetDataToDataBase(year,moth,day,hour,Minute,second,speed)載入SQLⅠTE數(shù)據(jù)庫。所有的樣本數(shù)據(jù)均拷貝至大容量UsbDisk,軟件通過Event-Driver的方式檢測[8]。系統(tǒng)會向窗體發(fā)送WM_DEVⅠCECHANGE,當(dāng)有外部設(shè)備插入或撥出時通過判斷獲取wParam變量的值,wParam=DBT_DEVⅠCEARRⅠVAL在這里表示UsbDisk已被插入,wParam=DBT_DEVⅠCEREMOVECOMPLETE表示UsbDisk被移除[9]。

        3.2 軟件主線程

        主線程是程序運行的軸線,main()即為程序的入口地址,不同于子線程代碼獨立,各個功能的子線程需要依附主線程才能夠得以運行[10],Qt是集成的開發(fā)框架,各個類型的對象窗體完全采用繼承與封裝的機制,主線程主要是調(diào)用應(yīng)用程序的圖形界面,配置軟件在使用過程需要用到的文本編碼格式,給應(yīng)用程序載入一個軟件圖標(biāo),具體代碼如下。

        int main(int argc,char*argv[]){QApplication a(argc,argv);QTextCodec::setCodecForTr(QTextCodec::codecForNa me("system"));QTextCodec::setCodecForLocale(QTextCodec::codecFo rName("system"));QTextCodec::setCodecForCStrings(QTextCodec::codec ForName("system"));MainWindow w;

        猜你喜歡
        關(guān)鍵
        高考考好是關(guān)鍵
        “退不退群”不是問題,“怎么用好”才是關(guān)鍵
        甘肅教育(2020年21期)2020-11-24 18:14:30
        買酸奶,這幾個關(guān)鍵不能不知道
        2020年關(guān)鍵流行色組——自然暢游
        流行色(2020年9期)2020-07-16 08:08:32
        走好關(guān)鍵“五步” 加強自身建設(shè)
        2019年如何靠小龍蝦發(fā)家致富,關(guān)鍵看這幾點
        獲勝關(guān)鍵
        NBA特刊(2014年7期)2014-04-29 00:44:03
        蔣百里:“關(guān)鍵是中國人自己要努力”
        生意無大小,關(guān)鍵是怎么做?
        中國商人(2013年1期)2013-12-04 08:52:52
        內(nèi)燃機的關(guān)鍵零部件
        亚洲熟女少妇精品久久| 日日摸夜夜添夜夜添无码免费视频 | 国产亚洲美女精品久久久2020| 国产成人无码一区二区三区在线| 精品人妻中文av一区二区三区| 亚洲av永久综合网站美女| 日本av亚洲中文字幕| 无码国产69精品久久久久孕妇| 久久婷婷色综合一区二区| 国产网友自拍亚洲av| 日本刺激视频一区二区| 亚洲成a人片在线观看无码3d| 亚洲日韩∨a无码中文字幕| 免费无遮挡毛片中文字幕| 久久亚洲国产精品五月天| 日本女同av在线播放| 日本边添边摸边做边爱喷水| 好男人日本社区www| 高清国产美女一级a毛片在线| 日本一区人妻蜜桃臀中文字幕| 麻豆国产精品久久人妻| 无码任你躁久久久久久| 2021精品综合久久久久| 国产精品久久av色婷婷网站 | 白白色日韩免费在线观看| 一本无码中文字幕在线观| 999国内精品永久免费视频| 亚洲国产成a人v在线观看| 亚洲一区二区三区成人网| 色偷偷av一区二区三区| 激情内射亚洲一区二区三区爱妻 | 曰本女人与公拘交酡免费视频| 无码伊人久久大香线蕉| 亚洲精品在线免费视频| 日韩中文字幕免费视频| 丝袜国产高跟亚洲精品91| 国产三级精品三级在线| 亚洲 欧美 综合 在线 精品| 国产70老熟女重口小伙子| 色窝综合网| 亚洲网站一区在线播放|