MeteoInfo-Java解析與繪圖教程(一)
已經進入開發行業很多年了,這兩年一直從事氣象開發行業,為此對氣象繪圖有了新的見解
像色斑圖與衛星圖一直都有python去繪制,在偶然的情況下,我接觸到了meteoInfo,在對其使用過程中,也可以做到用java繪制格點散點圖,色斑圖,等值圖,衛星圖,風場圖
所以趁這個機會我開始記錄自己的探索過程,方便你我他
對於繪圖,我們唯一需要關注的點就是數據格式,只有我們可以將數據解析出來,並格式成格點(GridData)值,我們就可以按照固定方法去繪圖
對於數據,meteoInfo提供了多個文件解析方式,我們可以直接調用
1.首先我們要將meteoInfo的lib包引用
我用的是4.6.11版本,自己可以找到就盡量自己找,不行的話私聊我,我發送出來,由於我用的版本有點低,所以方法更復雜一些,但大體不會有改動
2.使用方法解析
解析方法很簡單,只要對應格式就可以解析,當沒有對應格式的解析方法或者自己組成的數據,那需要單獨塞值,之后我會更新到,請期待
以下目前我接觸到數據格式
MeteoDataInfo meteo = new MeteoDataInfo(); // AWX 文件:meteo.openAWXData("數據文件路徑"); // NetCDF、NC、NCF 文件:meteo.openNetCDFData ("數據文件路徑"); // GRIB1 文件:meteo.openGRIBData ("數據文件路徑", 1); // GRIB2 文件:meteo.openGRIBData ("數據文件路徑", 2); // micaps 文件:meteo.openMICAPSData ("數據文件路徑");
當然在強大的MeteDataInfo中有更多的可以解析的文件格式,那就需要自己引用去測試了
3.格式化GridData
只要解析成功即可從MeteoDataInfo中提取GridData格點值
MeteoDataInfo meteo = new MeteoDataInfo();
meteo.openAWXData("D:\\Download\\ANI_VIS_R04_20210812_0800_FY2G.AWX"); GridData grid = meteo.getGridData();
第一節主要說的是簡單的數據解析這方面,第二節就是簡單的繪圖
從簡單數據解析->簡單繪圖->數據全解析->自定義繪圖