本帖最后由 general_maeam 于 2016-9-20 21:34 编辑
安装很方面:按照说明文件,先检查下要求的运行环境(matlab > 2008以上; java > 1.6以上),然后解压,进入解压后的文件夹,matlab中执行“setup_nctoolbox”即可
我用fnl的grib2数据测试了下,一些命令供大家参考:
1、读入数据
ds = ncdataset('fnl_20160101_00_00.grib2');
查看数据的类型+属性:
ds.netcdf
查看数据中的变量:
ds.variables
2、读取数据
t = ds.data('Geopotential_height_tropopause');
OR:
t2 = ds.data(ds.variables{8})
获取数据的维度:
ds.size('Geopotential_height_tropopause')
获取部分数据:
FirstIndex = [1, 100, 100];
EndIndex = [1, 150, 150];
t3 = ds.data('Geopotential_height_tropopause',FirstIndex,EndIndex);
Q:如果Matlab提示"Warning: CData must be double or uint8",这是matlab自身精度控制的问题,因为默认用的double精度,可以:
tDouble = double(tSingle);
即可!
3、查看属性
ds.attributes
查看变量的属性:
ds.attributes('Geopotential_height_tropopause')
查看某变量特定的属性:
a = ds.attributes('Geopotential_height_tropopause');
value4key(a,'units')
value4key(a,'long_name')
获取变量维度的名称:
b = ds.axes('Geopotential_height_tropopause');
eg:
GPMData = ds.data('Geopotential_height_tropopause');
GPMData = squeeze(GPMData);
Temp = ds.time('time', ds.data('time', 1));
% Temp = ds.time('time');
lat = ds.data('lat');
lon = ds.data('lon');
surf(lon,lat,GPMData);
shading interp;
view(2);
title(datestr(Temp));
4、扩展功能ncgeodataset
获取数据:
ds = ncgeodataset('fnl_20160101_00_00.grib2')
查看变量:
ds.variables
查看变量内容/读取数据:
ds.data('Geopotential_height_tropopause');
获取数据的维度:
ds.size('Geopotential_height_tropopause');
获取数据的维度信息:
ds.metadata
获取单个物理量的信息:
>> t = ds.geovariable('Geopotential_height_tropopause');
>> t.attributes
获取指定的属性:
>> t.attribute('units') %%这是attribute!!!
还有其他功能,可以直接doc查看。
|