数据介绍
2001年-2020年降水数据
数据名称:中国区域1km分辨率逐月降水量数据集(2000-2020年)
数据来源:http://www.geodata.cn/data/datadetails.html?dataguid=2329433&docid=2688
时间分辨率:1 month
原数据时间范围:2000-01-2020-12
拟用数据时间范围:2001-01-2020-12
空间分辨率:1km
空间范围:china
单位:mm
缩放因子:暂无

IPCC第4 次评估报告指出,1906——2005年全球平均气温升高了0.74 ℃。在这个背景下,全球范围内特大干旱、高温等极端天气气候事件发生频率和强度呈增加趋势;而不断变化的气候又可能导致极端天气气候事件在发生时间、频率、强度、空间范围和持续时间上产生变化。据世界气象组织的统计数据﹐气象灾害约占自然灾害的70%,而干旱灾害又占气象灾害的50%。作为全球最为常见的自然灾害,干旱具有发生频率高、持续时间长、影响范围广、对农业生产威胁大、对生态环境和社会经济影响深远的特点。
中国大部分地区位于东亚季风的两类子系统——“东亚热带季风(南海季风)”和“东亚副热带季风”共同影响的地区,是干旱严重的国家。近年来,中国干旱事件呈现增长的趋势。具体来说,1951——1990年40年间有8年出现重大干旱事件﹐1991——2000 年10年间有5年出现重大干旱事件﹐2001—2011年11年间有7年出现重大干旱事件。民政部的统计资料显示,1999—2005年,中国干旱灾害发生区域不断扩大,因旱灾造成作物绝收面积急剧增加[3]。位于干旱半干旱区的中国西北部是全球气候变化响应最敏感的地带。随着气候变暖﹐该地区的土地荒漠化现象趋于严重,气象灾害增多,生态环境恶化[6。大量研究表明该地区部分出现暖湿迹象,但总体干旱化趋势已经在中、小时空尺度上得到识别。为了研究干旱的发生和发展规律,科学家们对干旱指标做了大量的研究。总的来说分为单因子指标和多因子指标两类。单因子指标突出降水量这一主要影响因子来反映干旱变化,比较常见的单因子指标有降水距平百分率、无雨日数、Z指数和标准化降水指数(Standardized precipitation index,SPI)等,这类指标资料获取比较容易,计算简单,而且由于指标不涉及具体的干旱机理,所以具有较强的时空适应性;而多因子指标多从水分平衡角度出发,主要强调干旱形成的机理和过程,包括Palmer干旱指标﹑综合气象干旱指数和相对湿润度指数等,这类指标的物理机制较为明确,计算复杂,对资料要求高,有些参数需要实验来确定,还有一些参数不能依靠实验获得,只有通过经验获取,从而大大降低了计算精度。国内外很多学者对不同指标监测干旱事件的效果做了比较,发现基于降水资料的SPI指数计算简单,稳定性好,具有多时间尺度和时空可比性等优势,在国内外的干旱监测中得到广泛应用。
本文采用SPI指数对某地区地区干旱情况进行时空分析

SPI指数是McKee等在评估美国科罗拉多州干旱状况时提出的。对于某一地区而言,确定时间段内的降水量一般呈规律性的波动变化。基于这个事实,认为某一地区确定时间段内的降水量若比该时间段内多年平均降水量(可以认为是正常降水量)偏少到一定程度,就认为该地区该时段发生了干旱;反之﹐若偏多到一定程度﹐则发生洪涝。假定降水量的变化服从gamma分布,运用数学方法将降水量的累计频率分布转化为标准正态分布﹐最后求得SPI。SPI指数具有无量纲﹑标准化的特点﹐能够比较不同地区、不同时段的降水水平,可较好地反映干旱强度和持续时间。SPI指数具有多时间尺度的优势,不仅可以反映短时间尺度内降水量的变化,也可以反映长时间尺度的水资源演变情况。本文计算了1个月、3个月、6个月和12个月的SPI值﹐分别用SPI,SPI3.SPI6和 SPI12代表。

具体原理如下:

根据SPI指数的正态分布曲线,参照国家气候中心的划分标准划分旱涝等级,并确定相应的SPI指数界限值(表1)。


实验结果如下

这个地区不太会干旱呢 都还挺湿润呢 哈哈

整理出SPI趋势图如下,选择的时间尺度为3个月:


导入ArcMap可更改颜色

代码:

clear all;
[a,R]=geotiffread('C:\Users\yuanyuan\Desktop\栅格数据SPI计算\某地区降水数据\2001_01.tif'); %先导入投影信息
info=geotiffinfo('C:\Users\yuanyuan\Desktop\栅格数据SPI计算\某地区降水数据\2001_01.tif');%先导入投影信息
[m,n]=size(a);datasum=[];   %生成一个像素个数*月数的矩阵
for j=2001:2020for i=1:12      %起止月份if i<10filename=['C:\Users\yuanyuan\Desktop\栅格数据SPI计算\某地区降水数据\',int2str(j),'_0',int2str(i),'.tif'];     %读入文件名   data=importdata(filename);  %导入数据data=reshape(data,m*n,1);   %reshape 改变矩阵形式为m*n行、1列datasum=[datasum  data];          %把每月的数据依次放到datasum的每一列else filename=['C:\Users\yuanyuan\Desktop\栅格数据SPI计算\某地区降水数据\',int2str(j),'_',int2str(i),'.tif'];     %读入文件名   data=importdata(filename);  %导入数据data=reshape(data,m*n,1);   %reshape 改变矩阵形式为m*n行、1列datasum=[datasum  data];          %把每月的数据依次放到datasum的每一列endend
end
%% 数据处理:非负
for i=1:size(datasum,1)for j=1:size(datasum,2)if datasum(i,j)<0datasum(i,j)=0;endend
end
%% SPI计算
% scale 时间尺度
% nseas 季节数量
scale=[1,3,6,12];
nseas=12;
for k=1:240
% 一个月尺度SPI,其他时间尺度与此类似Z(k) = mean(SPI(datasum(:,k),scale(1),nseas)); % 取一下均值
end
figure(2)
subplot(221)
plot(Z)
ylabel('SPI指数')
title('时间尺度为1个月:SPI_1')for k=1:240
% 3个月尺度SPI,其他时间尺度与此类似Z(k) = mean(SPI(datasum(:,k),scale(2),nseas)); % 取一下均值
end
figure(2)
subplot(222)
plot(Z)
ylabel('SPI指数')
title('时间尺度为3个月:SPI_3')for k=1:240
% 6个月尺度SPI,其他时间尺度与此类似Z(k) = mean(SPI(datasum(:,k),scale(3),nseas)); % 取一下均值
end
figure(2)
subplot(223)
plot(Z)
ylabel('SPI指数')
title('时间尺度为6个月:SPI_6')for k=1:240
% 12个月尺度SPI,其他时间尺度与此类似Z(k) = mean(SPI(datasum(:,k),scale(4),nseas)); % 取一下均值
end
figure(2)
subplot(224)
plot(Z)
ylabel('SPI指数')
title('时间尺度为12个月:SPI_12')
%%
for k=1:240
% 3个月尺度SPI,其他时间尺度与此类似Z1{k} = SPI(datasum(:,k),scale(1),nseas); % 取一下均值
end
Z2=cell2mat(Z1');
% 求趋势图
Z2M=mean(Z2);
Trend=reshape(Z2M,[m,n]);
geotiffwrite(strcat('结果/','Trend1.tif'),Trend,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag);%注意修改路径

代码下载链接:
https://download.csdn.net/download/qq_45047246/86248543

【MATLAB项目实战】基于SPI指数的某地区地区干旱时空特征分析相关推荐

  1. 自动化运维-----项目实战: 基于Ansible的云平台自动化运维系统

    文章目录 项目实战: 基于Ansible的云平台自动化运维系统 一.项目介绍 1.项目介绍 2.项目背景 二.项目环境搭建 1.项目目录的配置 2.远程服务器虚拟环境的配置 3.MySQL数据库配置 ...

  2. 嵌入式项目实战——基于QT的视频监控系统设计(二)

    嵌入式项目实战--基于QT的视频监控系统设计(二) 昨天我分享了关于QT的基本使用方法,掌握了这些基本的方法就可以设计一个简单的视频监控界面.下面我们开始分享完成这个嵌入式项目同样重要的知识点--UD ...

  3. 嵌入式项目实战——基于QT的视频监控系统设计(三)

    嵌入式项目实战--基于QT的视频监控系统设计(三) 进入到五一假期第三天,继续我们的项目.本来五一假期还是想好好休息一下的,因为最近学习的状态不太好,刷题都没有思路了,但是身边的同学太卷了,不过我还是 ...

  4. 嵌入式项目实战——基于QT的视频监控系统设计(四)

    嵌入式项目实战--基于QT的视频监控系统设计(四) 进入到五一假期的第四天,通过前三天的分享,相信你应该已经掌握了QT的基本使用.UDP网络编程.v4l2视频处理模块.多线程编程等基本的知识点.其实昨 ...

  5. 嵌入式项目实战——基于QT的视频监控系统设计(一)

    嵌入式项目实战--基于QT的视频监控系统设计(一) 这个五一因为疫情,只能待在家里,想了想不如将我之前做的一个小的嵌入式的练习项目分享出来,供入门嵌入式的同学们学习.基于QT的视频监控系统设计虽然是个 ...

  6. 项目实战——基于计算机视觉的物体位姿定位及机械臂抓取(单目标定)

    项目实战--基于计算机视觉的物体位姿定位及机械臂抓取(单目标定) 请各位读者朋友注意,这里面很多东西涉及到我的毕设,写作辛苦,请勿滥用,转载请务必注明出处!         单目标定主要分为两个部分, ...

  7. Arduino项目实战——基于Arduino【智能垃圾桶】设计

       Arduino项目实战        -基于Arduino[智能垃圾桶]设计 第一次接触Arduino是在大一的时候,距离现在已经五年,当时一个简单的"电子琴"项目就让我抓耳 ...

  8. 马震宇 php,马震宇出品360问答系统项目实战 基于HDPHP

    马震宇出品360问答系统项目实战xa0xa0基于HDPHP 学了一大堆理论及基础知识,找工作之前总得先实战一下吧? 抽出一点时间来吧,各位,好好的研究一下自己学习的相关项目 相信在你找工作的时候一定会 ...

  9. 大数据项目实战——基于某招聘网站进行数据采集及数据分析(四)

    大数据项目实战 第四章 数据预处理 文章目录 大数据项目实战 学习目标 一.分析预处理数据 1)salary 2)city 3)skillLabels 4)companyLabelList.posit ...

  10. 【MATLAB项目实战】基于RGB特征的火焰检测

    首先数据转换为帧图像 clc; clear all;obj = VideoReader('1.mp4');%输入视频位置 numFrames = obj.NumberOfFrames;% 帧的总数 f ...

最新文章

  1. 什么是ATL? (与COM的关系,及MFC与COM的关系)
  2. 爱立信总裁表示欧洲网络始终趋于落后,网站推广之下5G发展需加快步伐
  3. (转)jQuery选择器总结
  4. Redis BitMap适应场景
  5. 【Demo 0062】目录及文件基本操作
  6. 通过WiFi控制智能小车机器人制作过程详解
  7. linux 批量选中文本删除,教程 | 【七牛云】Qshell Linux下批量删除文件教程
  8. HTML标记语言——表单的详细使用说明
  9. 下划线_Excel添加下划线的快捷键,下划线颜色设置
  10. 删除windows桌面右键出现的无用的菜单项(RegClean工具下载使用自动清理)
  11. Win32编程之基于MATLAB与VC交互的幻方阵(魔方阵)输出
  12. android 判断 飞行模式,Android 判断飞行模式的状态
  13. Win7不支持此接口的修复方法
  14. Spring Core 之 Validation, Data Binding(校验和数据绑定)
  15. 实验二十三——RPL协议仿真实验
  16. 网络协议 18 - CDN:家门口的小卖铺 1
  17. 随机波动率微笑模型及套利
  18. 中国天气网爬虫数据可视化
  19. windows 组策略
  20. y9000p + ubuntu18.04 亮度无法调节问题解决方法(亲测有效)

热门文章

  1. 无人机中的坐标系与相机姿态计算
  2. Maven使用本地jar包(三种方式)
  3. java计算机毕业设计中学教务管理系统源码+mysql数据库+系统+部署+lw文档
  4. cad批量打印_CAD不懂批量打印的进来 详细讲解一下
  5. 匿名者黑页html源码,HACK敲代码黑页源码
  6. PTES标准中的渗透测试阶段
  7. 常用的端口号(port number)
  8. ASS/SSA字幕格式
  9. 如何理解上下文有关文法(1型)和上下文无关文法(2型)
  10. SQL 连接嵌套查询实验报告