matlab中nc文件,MATLAB读取.nc文件

clc

clear

ncFilePath='E:\批处理读取NC文件-MATLAB语言\1NC文件\VIC_Output_China_evap_1952.nc';

%% 显示结构

% ncdisp(ncFilePath);%显示nc文件的所有结构,以便大概了解里面的内容

% ncdisp(ncFilePath,'evap');%显示指定变量的内容,注意一定要是变量variables才可以

% ncdisp(ncFilePath,'/','min');%简单显示结构以及定义

% ncdisp(ncFilePath,'/','full');%全部显示所有结构和定义信息

%% 读取变量值

% ncid = netcdf.open(ncFilePath,'NOWRITE'); %打开nc文件返回索引ID

% [ndims,nvars,ngglobalatts,unlimdimid] = netcdf.inq(ncid);%获取维数,变量数,全局属性数量,

% [varname,xtype,dimids,natts] = netcdf.inqVar(ncid,0); %根据变量索引号获取变量的名称

lon=ncread(ncFilePath,'lon');%读取经度变量

lat=ncread(ncFilePath,'lat');%读取纬度变量

time=ncread(ncFilePath,'time');%读取时间变量

evap=ncread(ncFilePath,'evap');%获取蒸散发变量数据

evap1=evap(:,:,200);

evap1(evap1==0)=[];

aa=evap1;

[h,l]=find(aa==0);

aa(h,l)=[];

%% 显示数据

% pcolor(lat,lon,evap1);

% [x,y]=meshgrid(lon,lat);%根据经纬度信息产生格网,284列(经度),164列(纬度)

% phandle=pcolor(x,y,evap1');%显示一个矩阵,其中x,y,evap1的行列数必须一致。类似surface函数

% colorbar

% imwrite(evap1','E:\批处理读取NC文件-MATLAB语言\aa.tif','tif')

%% 保存为地理栅格tif格式,以便arcgis读取

data=flipud(evap1');

R = georasterref('RasterSize', size(data),'Latlim', [double(min(lat)) double(max(lat))], 'Lonlim', [double(min(lon)) double(max(lon))]);%地理栅格数据参考对象(类)

geotiffwrite('E:\批处理读取NC文件-MATLAB语言\aa4.tif',data,R);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值