- 积分
- 7
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2020-2-14
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
close all;
clc;
clear;
cd ('E:\TUXIANG\') ; %待处理的数据文件所在文件夹
Allname=struct2cell (dir) ; %得到上述文件夹下的所有文件名
[m, n]=size (Allname) ;
data= [];
for i=1:n %前两个不是文件名
name=Allname{1,1}
filename=strcat(name);
ncidsst=netcdf.open('TU.nc','NOWRITE'); %打开HDF文件
lonID=netcdf. inqVarID(ncidsst,'lon') ;%返回经度变量ID
lon=netcdf.getVar(ncidsst, lonID); %读入经度值
latID=netcdf. inqVarID(ncidsst,'lat');%返回维度变量ID
lat=netcdf. getVar (ncidsst, latID) ; %读入纬度值
sstID=netcdf. inqVarID(ncidsst,'sst') ;%返回sst变量ID
sst=netcdf.getVar(ncidsst,sstID); %读入sst值
netcdf. close (ncidsst) ; %关闭HDF文件
longl=(0+0)*4;
long2=(10+0)*4;
lati1=(50+90)*4;
lati2=(60+90)*4;
就是这后面一句一直显示说不是整数或者逻辑型变量
RSsst=sst(longl: long2,lati1:lati2) %截取sst
RSsst(RSsst==-999)=0;%陆地部分为零
RSsstnew=double(RSsst)*0.01;%变成正确的温度
RSsstnew=imrotate(RSsstnew,90) ;%把图像旋转摆正
%imshow(RSsstnew) ;%显示看下是否颠倒
%下步用图像处理滑动邻域操作
fun=inline('mean (mean (x))') ; %做矩阵平均
%B=nlfilter(RSsstnew, [2 2], fun);
B=blkproc (RSsstnew,[4 4],fun) ; %分块矩阵平均
Bl=B(:)';%把矩阵变为一行, 是按照一列一列的方式变成一行
data(i,:)=Bl;%有多少天都放在一起
end
xlswrirte ('D: \englangweather.xls', data) ;
|
|