matlab GOCI水色数据画TSS变化过程+批量读取.he5文件

下载地址:
http://kosc.kiost.ac.kr/eng/

clear all;close all;clc
%%                    读取经纬度
file='COMS_GOCI_L2P_GA_20110524031644.LON_1.he5';
LON=h5read(file,'/HDFEOS/GRIDS/Image Data/Data Fields/Longitude Image Pixel Values');
file='COMS_GOCI_L2P_GA_20110524031644.LAT_1.he5';
LAT=h5read(file,'/HDFEOS/GRIDS/Image Data/Data Fields/Latitude Image Pixel Values');
%%                   读取TSS数据
datadir='/Users/boopstore3/Desktop/5/'; %指定批量数据所在的文件夹
filelist=dir([datadir,'*.he5']); %指定批量数据的类型
a=filelist(1).name; %查看你要读取的文件的编号
b=filelist(2).name; 
k=length(filelist);
TSS=[];TSS2=[];
for s=1:k
  filename=[datadir,filelist(s).name];
  TSS1 = h5read(filename,'/HDFEOS/GRIDS/Image Data/Data Fields/TSS Image Pixel Values'); 
  TSS1(TSS1==-999)=NaN; TSS1(TSS1==0)=NaN;TSS1=double(TSS1);
  TSS2 = cat(3,TSS2,TSS1);
end;
for i=1:3:30
    b=nanmean(TSS2(:,:,i:i+2),3);%日均TSS
   TSS = cat(3,TSS,b);
end;
%%                    TSS动图
time=[datenum('20130902','yyyymmdd'):datenum('20130911','yyyymmdd')];
date=datestr(time,'yyyymmdd');
Ncy_TSS=log10([0.5,1,2,4,8,16]);
k=1;

for i=1:length(time)
    figure(1)
    set(gcf,'visible','off')
    set(gcf,'units','centimeters','position',[0 0 20 15])
    set(gca,'position',[0.05 0.05 0.95 0.9])
    m_proj('Mercator','lon',[120.5 123.5],'lat',[26.5 30.5]);
    TSS(TSS<=0)=NaN;
    m_pcolor(LON,LAT,log10(squeeze(TSS(:,:,i))));%画TSS分布图
    caxis([min(Ncy_TSS),max(Ncy_TSS)]);
    load('/Users/boopstore3/Desktop/matlab/shiyanchengxu/five/GOCIColormaps.mat','mycmap');
    colormap(mycmap);
    colorbar('YTick',Ncy_TSS ,'YTickLabel',{10.^Ncy_TSS});
    shading flat;
    m_gshhs_i('patch',[.5 .8 .0],'edgecolor','none');
    m_grid('box','fancy','xtick',5,'ytick',5,'fontsize',10);
    m_text(122.5,27,date(i,5:8),'color','k','fontsize',30,'FontWeight','bold');
    m_text(121,29.5,'***','fontsize',15)
    frame=getframe(gcf);
    im=frame2im(frame);%制作gif文件,图像必须是index索引图像
    [I,map]=rgb2ind(im,256);
    if k==1
        imwrite(I,map,'eddy_motion_new.gif','gif','Loopcount',inf,...
            'DelayTime',0.2);%loopcount只是在i==1的时候才有用
    else
        imwrite(I,map,'eddy_motion_new.gif','gif','WriteMode','append',...
            'DelayTime',0.2);%DelayTime用于设置gif文件的播放快慢
    end
    clf; k=k+1;
end

经纬度数据
https://download.csdn.net/download/qq_44913577/12379180
https://download.csdn.net/download/qq_44913577/12379173
之前设置的下载所需积分是0,过了一段时间后才发现系统给我改成了3。如果要下载经纬度数据,可以看下面的图
在这里插入图片描述
在这里插入图片描述

  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值