Matlab如何打开nc文件?

纯干货,请收下!

%Matlab程序读取sst数据: 
close all
clear all

oid=’sst.mnmean.nc’              %将oid设置为nc文件名,防止nc文件名过长导致不必要的麻烦 以下用oid代替nc文件名
ncinfo(‘sst.mnmean.nc’);        %读取nc文件的属性值 必须保证nc文件和.m程序在同一文件夹下
sst=double(ncread(oid,’sst’));  %读取文件类型为sst类型的nc文件 
nlat=double(ncread(oid,’lat’)); %读取经度变量
nlon=double(ncread(oid,’lon’)); %读取纬度变量
 
mv=ncreadatt(oid,’/sst’,’missing_value’);  %缺少值和对应精度
sst(find(sst==mv))=NaN;         %将缺少值设置为空值
 %% 显示数据
[x,y]=meshgrid(lon,lat);%根据经纬度信息产生格网,
[Nlt,Nlg]=meshgrid(nlat,nlon);  
%Plot the SST data without using the MATLAB Mapping Toolbox
%用Plot方法对sst文件进行画图不使用MATLAB自带的地图工具  结果:显示不出来对应的横纵坐标和轮廓
figure
pcolor(Nlg,Nlt,sst(:,:,1));shading interp;
load coast;hold on;plot(long,lat);plot(long+360,lat);hold off
colorbar
%用Plot方法对sst文件进行画图不使用MATLAB自带的地图工具  结果:显示不出来对应的横纵坐标和轮廓
%Plot the SST data using the MATLAB Mapping Toolbox
 
figure
axesm(‘eqdcylin’,’maplatlimit’,[-80 80],’maplonlimit’,[0 360]);  % Create a cylindrical equidistant map  %根据nc文件创建相应的图,此处创建eqdcylin即创建柱面等距地图  还可创建其他类型图 自行查找axesm属性资源
pcolorm(Nlt,Nlg,sst(:,:,1))           % pseudocolor plot “stretched” to the grid   用matlab自带工具伪彩色图“拉伸”到网格  
load coast                                 % add continental outlines  可以用matlab自带工具添加大陆轮廓
plotm(lat,long)
colorbar

    原文作者:浪潮之巅的小萝卜头
    原文地址: https://blog.csdn.net/qq_38691107/article/details/101121692
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞