You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

从WorldClim按国家提取未来气候情景数据的问题(当前与未来数据下载结果疑似重复)

WorldClim按国家提取未来气候情景数据的问题(当前与未来数据下载结果疑似重复)

最近我在处理WorldClim的气候数据,想下载南非(ZAF)的当前气候数据和未来情景数据,结果发现两段不同代码跑出来的数据居然一模一样,这可把我愁坏了!

先给大家看看我下载当前数据的代码和输出:

# 下载当前气候生物变量数据
BIO1_current_data <- geodata::worldclim_country('ZAF', var='bio', 
                                               res=10, path = tempdir())
# 查看数据信息
BIO1_current_data

输出结果是这样的:

class       : SpatRaster 
dimensions  : 1560, 2040, 19  (nrow, ncol, nlyr)
resolution  : 0.008333333, 0.008333333  (x, y)
extent      : 16, 33, -35, -22  (xmin, xmax, ymin, ymax)
coord. ref. : lon/lat WGS 84 (EPSG:4326) 
source      : ZAF_wc2.1_30s_bio.tif 
names       : wc2.1~bio_1, wc2.1~bio_2, wc2.1~bio_3, wc2.1~bio_4, wc2.1~bio_5, wc2.1~bio_6, ... 
min values  :    4.454167,    5.708333,    44.58333,    143.0743,        13.9,        -6.7, ... 
max values  :   24.941666,   18.741667,    68.93939,    707.2878,        39.3,        14.0, ...

然后我尝试下载未来数据,但结果和上面的完全一致,后来才发现是自己漏了关键参数!

问题根源

worldclim_country函数默认下载的是当前基线气候数据,如果要获取未来情景数据,必须手动指定三个关键参数:

  • scenario:未来社会经济情景(比如SSP系列)
  • model:气候模式(比如CMIP6里的各种模式)
  • time:未来时段(比如2070-2099)

正确的未来数据下载代码示例

这里以CMIP6的SSP5-8.5高排放情景、MIROC-ES2L模式、2070-2099时段为例:

# 下载未来气候生物变量数据
BIO1_future_data <- geodata::worldclim_country(
  country = 'ZAF', 
  var = 'bio', 
  res = 10, 
  path = tempdir(),
  scenario = 'ssp585',  # 可选ssp126、ssp245、ssp370、ssp585等
  model = 'MIROC-ES2L', # 可用模式可通过geodata::worldclim_models()查看
  time = '2070-2099'    # 可选'2021-2040'、'2041-2060'、'2061-2080'、'2070-2099'
)
# 查看未来数据信息
BIO1_future_data

额外小提示

  • 要确认当前数据和未来数据的res参数一致,避免分辨率不匹配
  • geodata::worldclim_scenarios()可以查看所有支持的未来情景
  • 不同的模式和情景组合对应不同的气候预测结果,记得根据自己的研究需求选择

备注:内容来源于stack exchange,提问作者Ditiro Moloto

火山引擎 最新活动