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);
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的matlab中nc文件,MATLAB读取.nc文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 公积金贷款买房流程
- 下一篇: vivo X Fold2 折叠屏手机外观