前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Google Earth Engine(GEE)——2.提取降水值案例(R-GEE版)

Google Earth Engine(GEE)——2.提取降水值案例(R-GEE版)

作者头像
此星光明
发布2024-02-02 08:16:09
2490
发布2024-02-02 08:16:09
举报

安装和负载tidyversesf- [R包,在这之后,初始化地球引擎řAPI。

代码语言:javascript
复制
#先加载库,再进行初始化!
library(tidyverse)
library(rgee)
library(sf)

ee_Initialize()

读取nc形状文件,加载矢量文件。

代码语言:javascript
复制
nc <- st_read(system.file("shape/nc.shp", package = "sf"), quiet = TRUE)

绘制 2001 年的每图像以从Terraclimate 数据集中提取月降水量 (Pr)

代码语言:javascript
复制
terraclimate <- ee$ImageCollection("IDAHO_EPSCOR/TERRACLIMATE") %>%
  ee$ImageCollection$filterDate("2001-01-01", "2002-01-01") %>%
  ee$ImageCollection$map(function(x) x$select("pr")) %>% # 这里遍历或者映射都是只选择降水波段就欧克
  ee$ImageCollection$toBands() %>% # 将集合转换成影像
  ee$Image$rename(sprintf("PP_%02d",1:12)) # 重命名影像波段

从 Terraclimate ImageCollection 通过 提取月降水值ee_extractee_extract工作原理与 类似raster::extract,您只需要定义:ImageCollection 对象 (x)、几何图形 (y) 和一个汇总值的函数 (fun)。

代码语言:javascript
复制
#这个雨打功能真的很简单,只需要输入对应的属性x和y就欧克
ee_nc_rain <- ee_extract(x = terraclimate, y = nc["NAME"], sf = FALSE)

使用ggplot2生成漂亮的静态图!

代码语言:javascript
复制
ee_nc_rain %>%
  pivot_longer(-NAME, names_to = "month", values_to = "pr") %>%
  mutate(month, month=gsub("PP_", "", month)) %>%
  ggplot(aes(x = month, y = pr, group = NAME, color = pr)) +
  geom_line(alpha = 0.4) +
  xlab("Month") +
  ylab("Precipitation (mm)") +
  theme_minimal()

最后结果!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档