GEE代碼實例教程詳解:長時間序列風速分析

簡介

在本篇博客中,我們將使用Google Earth Engine (GEE) 對長時間序列的風速數據進行分析。通過ERA5再分析數據集,我們可以計算2010年至2024年間的平均風速,并與1980年至2020年的風速數據進行比較。

背景知識

ERA5數據集

ERA5是ECMWF(European Centre for Medium-Range Weather Forecasts,歐洲中期天氣預報中心)提供的全球氣候再分析數據集,具有高空間和時間分辨率。

風速計算

風速是風向的兩個分量(u和v分量)的矢量合成,通常使用平方和的平方根來計算。

完整代碼

// 定義研究區域的坐標點
var cor = [[52.24091120672926, 28.94538993989301],[59.00848933172926, 28.94538993989301],[59.00848933172926, 33.89295282767506],[52.24091120672926, 33.89295282767506],[52.24091120672926, 28.94538993989301]
];// 創建多邊形區域
var roi = ee.Geometry.Polygon(cor);// 加載ERA5數據集并選擇風速分量
var era5 = ee.ImageCollection("ECMWF/ERA5/DAILY").select('u_10m', 'v_10m').filterDate('2010', '2024');// 計算風速
var windspeed = era5.map(function (img) {var u = img.select('u_10m');var v = img.select('v_10m');var wind_speed = u.pow(2).add(v.pow(2)).sqrt().rename('wind_speed');return wind_speed.copyProperties(img, img.propertyNames());
});// 繪制風速時間序列圖表
print(ui.Chart.image.series(windspeed, roi, ee.Reducer.mean(),27000, 'system:time_start')
);// 加載1980年至2020年的ERA5數據集
var wind40 = ee.ImageCollection("ECMWF/ERA5/DAILY").select('u_10m', 'v_10m').filterDate('1980', '2020');// 計算風速
var windspeed40 = wind40.map(function (img) {var u = img.select('u_10m');var v = img.select('v_10m');var wind_speed = u.pow(2).add(v.pow(2)).sqrt().rename('wind_speed');return wind_speed.copyProperties(img, img.propertyNames());
});// 定義函數提取風速平均值和日期
function get_value(img) {var date = ee.Date(img.get('system:time_start')).format().slice(0, 10);var value = img.reduceRegion({reducer: ee.Reducer.mean(),geometry: roi,scale: 27000}).get('wind_speed');return [date, value];
}// 提取風速數據列表
var size = windspeed40.size();
var windlist = windspeed40.toList(size).map(get_value);// 將風速數據轉換為特征集合
var wind_feature = ee.FeatureCollection(windlist.map(function (el) {el = ee.List(el);return ee.Feature(null, {'date': el.get(0),'windspeed': el.get(1).getInfo()});
}));// 導出風速數據表至Google Drive
Export.table.toDrive({collection: wind_feature,description: 'windspeed40',fileFormat: 'CSV'
});

代碼詳解

1. 定義研究區域

創建一個多邊形區域roi,用于限定分析的地理范圍。

2. 加載ERA5數據集

加載ERA5數據集,并選擇風速的u和v分量。

3. 計算風速

使用平方和的平方根公式計算風速,并為結果重命名。

4. 繪制風速時間序列圖表

使用ui.Chart.image.series繪制風速的時間序列。

5. 加載更長時間序列的ERA5數據集

加載1980年至2020年的ERA5數據集,用于更長時間尺度的風速分析。

6. 提取風速平均值和日期

定義函數get_value提取每張圖像的日期和平均風速。

7. 導出風速數據表

將風速數據轉換為特征集合,并導出為CSV格式的表格。

結論

本教程展示了如何使用GEE對ERA5數據集進行風速分析。通過計算風速分量的矢量合成,我們可以了解特定區域內風速的時空變化。

進一步探索

GEE提供了多種工具和方法來進行氣象數據分析。在后續的教程中,我們將繼續探索GEE在不同領域的應用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/43289.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/43289.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/43289.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

代碼隨想錄-Day53

739. 每日溫度 給定一個整數數組 temperatures ,表示每天的溫度,返回一個數組 answer ,其中 answer[i] 是指對于第 i 天,下一個更高溫度出現在幾天后。如果氣溫在這之后都不會升高,請在該位置用 0 來代替。 示例 1: …

【Linux】目錄的相關命令——cd,pwd,mkdir,rmdir

1.相對路徑與絕對路徑 在開始目錄的切換之前,你必須要先了解一下所謂的路徑(PATH),有趣的是:什么是相對路 與絕對路徑? 絕對路徑:路徑的寫法“一定由根目錄/寫起”,例如:/usr/shar…

Java版Flink使用指南——定制RabbitMQ數據源的序列化器

大綱 新建工程新增依賴數據對象序列化器接入數據源 測試修改Slot個數打包、提交、運行 工程代碼 在《Java版Flink使用指南——從RabbitMQ中隊列中接入消息流》一文中,我們從RabbitMQ隊列中讀取了字符串型數據。如果我們希望讀取的數據被自動化轉換為一個對象&#x…

Linux C++ 043-機房預約系統

Linux C 043-機房預約系統 本節關鍵字:Linux、C、機房預約系統 相關庫函數:for_each、open、close、write 系統簡介 學校現在有幾個規格不同的機房,由于使用經常出現撞車現象,現開發一套機房預約系統,解決這一問題。…

Java進階---抽象方法abstract

抽象方法 案例引入: 在某個寵物店的寵物資源管理系統中有: 狗類:屬性(姓名),行為(吃飯) 貓類:屬性(姓名),行為(吃飯)利用…

智慧科技照亮水利未來:深入剖析智慧水利解決方案如何助力水利行業實現高效、精準、可持續的管理

目錄 一、智慧水利的概念與內涵 二、智慧水利解決方案的核心要素 1. 物聯網技術:構建全面感知網絡 2. 大數據與云計算:實現數據高效處理與存儲 3. GIS與三維可視化:提升決策支持能力 4. 人工智能與機器學習:驅動決策智能化 …

LibreOffice的國內鏡像安裝地址和node.js國內快速下載網站

文章目錄 1、LibreOffice1.1、LibreOffice在application-conf.yml中的配置2、node.js 1、LibreOffice 國內鏡像包網址:https://mirrors.cloud.tencent.com/libreoffice/libreoffice/ 1.1、LibreOffice在application-conf.yml中的配置 jodconverter:local:enable…

Java面試八股之MySQL中int(10)和bigint(10)能存儲讀的數據大小一樣嗎

MySQL中int(10)和bigint(10)能存儲讀的數據大小一樣嗎 在MySQL中,int(10)和bigint(10)的數據存儲能力并不相同,盡管括號內的數字(如10)看起來似乎暗示著某種關聯,但實際上這個數字代表的是顯示寬度,而不是…

vue學習day03-指令修飾符、v-bind對于樣式控制的增強、v-model應用于其他表單元素

7、指令修飾符 (1)概念: 通過“.”指明一些指令后綴,不同后綴封裝了不同的處理操作->簡化代碼 (2)按鍵修飾符 keyup.enter->鍵盤回車監聽 (3)v-model修飾符 v-model.tri…

vue + element ui 實現側邊欄導航欄折疊收起

首頁布局如下 要求點擊按鈕,將側邊欄收縮, 通過 row 和 col 組件&#xff0c;并通過 col 組件的 span 屬性我們就可以自由地組合布局。 折疊前 折疊后 <template><div class"app-layout" :class"{ collapse: app.isFold }"><div class&…

Onekey正版steam分流下載工具

今天給大家介紹的是一款下載steam游戲的工具。Onekey工具&#xff0c;是一款游戲下載器&#xff0c;可以下載steam正版分流游戲。下載正版分流的網站很多&#xff0c;但是都是網盤或者迅雷下載&#xff0c;或者游戲盒子下載&#xff0c;速度都很慢。這款軟件是用steam下載的&am…

Flask項目搭建及部署 —— Python

flask搭建及部署 pip 19.2.3 python 3.7.5 Flask 1.1.1 Flask-SQLAlchemy 2.4.1 Pika 1.1.0 Redis 3.3.11 flask-wtf 0.14.2 1、創建flask項目&#xff1a; 創建完成后整個項目結構樹&#xff1a; app.py: 項?管理?件&#xff0c;通過它管理項?。 static: 存放靜態…

自定義控件視圖篇(一)測量與布局

在自定義控件的開發過程中&#xff0c;"視圖篇"的測量與布局是非常關鍵的步驟&#xff0c;這直接決定了控件的尺寸、位置以及子視圖的排列方式。下面我將詳細介紹測量和布局的過程&#xff0c;以及如何在自定義控件中正確實現這些步驟。 視圖的測量 (onMeasure) 在…

2021版本的idea熱部署的詳細步驟

背景&#xff1a;我是自己用的是2021版本的idea,然后發現跟2023版本的熱部署不太一樣&#xff0c;所以&#xff0c;今天自己出一期這樣的文章吧&#xff01;&#xff01;&#xff01;其他人配置的時候根據自己的情況&#xff0c;來閱讀吧&#xff01; 第一步&#xff1a;方式一…

MyBatis是如何分頁的及原理

MyBatis 是一種持久層框架&#xff0c;支持通過配置文件和注解將 SQL 映射為 Java 對象。在實際開發中&#xff0c;查詢數據時經常需要進行分頁處理。 MyBatis 也提供了支持分頁的方案&#xff0c;其主要思路是使用 Limit 偏移量和限制個數&#xff0c;來獲取指定數量的數據。下…

音視頻入門基礎:H.264專題(10)——FFmpeg源碼中,存放SPS屬性的結構體和解碼SPS的函數分析

一、引言 FFmpeg源碼對AnnexB包裝的H.264碼流解碼過程中&#xff0c;通過ff_h2645_extract_rbsp函數拿到該H.264碼流中的某個NALU的NALU Header RBSP后&#xff08;具體可以參考&#xff1a;《FFmpeg源碼&#xff1a;ff_h2645_extract_rbsp函數分析》&#xff09;&#xff0c…

【沐風老師】3DMAX建筑體塊生成插件BuildingBlocks使用方法詳解

BuildingBlocks建筑體塊生成插件使用方法詳解 聽說你還在手動建配景樓&#xff1f;有了BuildingBlocks這個插件&#xff0c;一分鐘搞定喔&#xff01; 3DMAX建筑體塊生成插件BuildingBlocks&#xff0c;用于快速自定義街道及生成配景樓區塊。 【適用版本】 3dMax2019及更高版…

空間分析在3D應用中的革命:提升投資回報與業務價值

在3D應用的浪潮中&#xff0c;空間分析技術正成為提升用戶體驗、優化業務決策和解決復雜問題的關鍵工具。本文將深入探討空間分析如何通過提供深度用戶行為洞察和數據可視化&#xff0c;增強3D應用的實際效益和市場競爭力。 一、空間分析的概念與背景 Tony Bevilacqua&#x…

分布式I/O從站的認知

為什么需要分布式I/O從站&#xff1f; 當PLC與控制機構距離過遠時&#xff0c;遠距離會帶來信號干擾&#xff0c;分布式I/O從站只需要一個網絡線纜連接。 ET200分布式I/O從站家族 體積緊湊、功能強大。 ET200SP ET200M ET200S ET200iSP ET200 AL ET200pro ET200 eco PN 通訊協議…

DSSM雙塔特征交互

傳統的DSSM雙塔無法在早期進行user和item側的特征交互&#xff0c;這在一定程度上降低了模型性能。我們想要對雙塔模型進行細粒度的特征交互&#xff0c;同時又不失雙塔模型離線建向量索引的解耦性。下面介紹兩篇這方面的工作。 美團-Dual Augmented Two-tower 在user和item的特…