霍健,陳晨
(北京鑒衡認證中心,北京 100013)
在測試現(xiàn)場,很多時候需要對氣象數(shù)據(jù)進行簡單分析,如風況統(tǒng)計、計算分鐘平均、圖表顯示等。通過對氣象數(shù)據(jù)的分析,初步判斷氣象數(shù)據(jù)是否滿足測試標準[1-2]中的數(shù)據(jù)量要求。如果采用數(shù)據(jù)庫、Matlab等數(shù)據(jù)處理軟件,未免“大材小用”。且對于win7操作系統(tǒng)的筆記本來講,安裝數(shù)據(jù)庫等軟件略顯麻煩,實際應(yīng)用也要看筆記本的性能。
通常的方法是用LoggerNet軟件自帶View工具直接打開氣象文件,此工具只能查看原始數(shù)據(jù)記錄及簡單的曲線圖,要想對指定區(qū)間內(nèi)的數(shù)據(jù)進行查看、統(tǒng)計等工作就“無能為力”了。而且打開幾百兆以上的文件需要時間很長,且含有不在需要分析時間段的數(shù)據(jù)。此工具對數(shù)據(jù)導出的支持也不理想,在數(shù)據(jù)處理過程中,既浪費時間又容易出錯。其實,只用Office自帶的Excel就能滿足這些需求。本文主要論述Excel中VBA[3]處理氣象數(shù)據(jù)方法。
以Excel2007為例,每個工作表最大行數(shù)是1048576,最大列數(shù)是16384,與數(shù)據(jù)處理相關(guān)的主要是行數(shù),以1Hz氣象數(shù)據(jù)采樣為例,一個工作表至多能儲存12天的數(shù)據(jù)。
在氣象數(shù)據(jù)處理中,主要工作分原始數(shù)據(jù)導入及數(shù)據(jù)處理兩部分。
在工作目錄中新建一個Excel,如“氣象數(shù)據(jù).xlsx”,打開Excel,點擊菜單中的“視圖”→“宏”→“查看宏”,在彈出的窗口中輸入宏名,點擊“創(chuàng)建”。
當原始數(shù)據(jù)導入后,接著就可以做數(shù)據(jù)分析處理。如計算平均,有兩種方式,一種是應(yīng)用VBA自帶公式,另一種是用VBA程序運算。
VBA自帶公式:
通過VBA處理后的數(shù)據(jù)直觀整潔,如表1所示。
表1 一分鐘風速平均
VBA還可以實現(xiàn)自動生成曲線圖,主要代碼如下:
ActiveChart.Axes(xlCategory).TickMarkSpacing = 60
ActiveChart.Axes(xlCategory).TickLabelSpacing = 1
ActiveChart.Axes(xlCategory).TickLabelSpacing = 60
ActiveChart.Axes(xlCategory, xlPrimary).AxisTitle.Text = "2012-03-31日一分鐘平均曲線圖"
ActiveChart.Axes(xlValue, xlPrimary).AxisTitle.Text = "風 速 m/s"
…
生成的曲線圖型如圖1所示。
圖1 實時風速平均曲線圖
利用Excel中的VBA還可以實現(xiàn)很多既直觀又實用的功能,其小巧靈便的特點對快速處理氣象數(shù)據(jù)非常適用。把VBA程序模塊化、功能化、集成化后,就可以完全實現(xiàn)利用程序自動處理分析氣象數(shù)據(jù)。
[1] GB/T 18451.2—2003, 風力發(fā)電機組功率特性試驗[S]. 北京:中國標準出版社,2003.
[2] GB/T22516—2008,風力發(fā)電機組噪聲測量方法[S]. 北京:中國標準出版社,2009.
[3] Excel Home. Excel 應(yīng)用大全[M]. 北京:人民郵電出版社, 2008.