手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

TRMM数据.nc格式IDL批量转换为.tif格式

时间:2024-10-11 19:56:35

1、首先将下载的需要批量转换为tif格式的TRMM数据放到一个文件夹下,我这里共72条TRMM 3B43月产品数据,这里需要使用的是其中的降水数据(precipitation),因此 在转换保存时根据需要保存相应的数据。

TRMM数据.nc格式IDL批量转换为.tif格式

2、打开IDL软件,在IDL软件下通过编写代艨位雅剖码实现TRMM数据.nc格式批量转换为tif 格式,转换前得囗寝嗵若先准备好存放文件夹。转换的代码如下所示:pro batch ;reftif = read_tiff('E:\2018\GIS Spacial anlayse\GISkeshe\Point\precipitation_Layer1.tif',geotiff=geo);filelist = file_search('F:\TRMM\trmm\','*.nc'); for i=0,n_elements(filelist)-1 do begin name = strsplit(file_basename(filelist[i]),'_',/Extract);3B43.20120101.7.HDF.nc tifname = name[0] + '_' + name[0] data_SMOS = ncdf_readv(filelist[i],varname = 'precipitation') index = where(data_SMOS ge 1e+020) & data_SMOS[index]=0 data_AOT = ncdf_readv(filelist[i],varname = 'precipitation') index = where(data_AOT ge 1e+020) & data_AOT[index]=0 ;data_SH = ncdf_readv(filelist[i],varname = 'Qair_GDS0_SFC') ;index = where(data_SH ge 1e+020) & data_SH[index]=0 dim = size(data_SMOS) data_SMOS2 = fltarr(dim[1],dim[2]) data_AOT2 = fltarr(dim[1],dim[2]) data_SMOS3 = fltarr(dim[2],dim[1]) data_AOT3 = fltarr(dim[2],dim[1]) ;data_SH2 = fltarr(dim[1],dim[2]) for m = 0,dim[1]-1 do begin for n = 0,dim[2]-1 do begin data_SMOS2[m,n] = data_SMOS[m,abs(n-dim[2]+1)] data_AOT2[m,n] = data_AOT[m,abs(n-dim[2]+1)] ;data_SH2[m,n] = data_SH[m,abs(n-dim[2]+1)] endfor endfor for n = 0,dim[2]-1 do begin for m = 0,dim[1]-1 do begin data_SMOS3[n,m] = data_SMOS2[m,n] data_AOT3[n,m] = data_AOT2[m,n] ;data_SH2[m,n] = data_SH[m,abs(n-dim[2]+1)] endfor endfor for n = 0,dim[2]-1 do begin for m = 0,dim[1]-1 do begin data_SMOS3[n,m] = data_SMOS2[m,dim[2]-1-n] data_AOT3[n,m] = data_AOT2[m,dim[2]-1-n] ;data_SH2[m,n] = data_SH[m,abs(n-dim[2]+1)] endfor endfor ; write_tiff,'E:\2018\GIS Spacial anlayse\GISkeshe\Point\'+tifname+'.tif',data_AOT3,geotiff=geo,/FLOAT endforend;function ncdf_readv, ncdf_file, varname = varnameif (n_params() ne 1) then $ message, 'USAGE: result = ncdf_readv(ncdf_file, varname=varname)';if (keyword_set(varname) eq 0) then begin print, 'Keyword VARNAME not supplied, returning array of variable names' cdfid = ncdf_open(ncdf_file) namearr = ncdf_vardir(cdfid) ncdf_close, cdfid return, namearrendif; Get datacdfid = ncdf_open(ncdf_file);varid = ncdf_varid(cdfid,GRIB_name)varid = ncdf_varid(cdfid,varname)ncdf_varget,cdfid,varid,data; Close netCDF filesncdf_close, cdfidreturn, dataend

TRMM数据.nc格式IDL批量转换为.tif格式

3、点击“运行”,IDL软件自动将数据批量转换为tif格式的,结果如图所示。

TRMM数据.nc格式IDL批量转换为.tif格式
© 手抄报圈