栅格数据Sen_slope趋势检验

clear;
clc;
[a,R]=geotiffread('F:\布尔津\CLOUD\2000.tif');%先导入投影信息
info=geotiffinfo('F:\布尔津\CLOUD\2000.tif');
[m,n]=size(a);
cd=2020-1985+1;%根据自己的数据时间跨度修改
datasum=zeros(m*n,cd)+NaN; 
k=1;
for year=2000:2020 %起始年份
    filename=['F:\布尔津\CLOUD\',int2str(year),'.tif'];
    data=importdata(filename);
    data=reshape(data,m*n,1);
    datasum(:,k)=data;
    k=k+1;
end
result=zeros(m,n)+NaN;
for i=1:size(datasum,1)
    data=datasum(i,:);
    if min(data)>-1 %根据自己数据有效值修改,我这里的有效值必须大于-1
        valuesum=[];
        for k1=2:cd
            for k2=1:(k1-1)
                cz=data(k1)-data(k2);
                jl=k1-k2;
                value=cz./jl;
                valuesum=[valuesum;value];
            end
        end
        value=median(valuesum);
        result(i)=value;
    end
end
filename=['F:\布尔津\WV\cloud_sen.tif'];
geotiffwrite(filename,result,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag)

你可能感兴趣的:(matplotlib)