巴西每日气象网格数据(BR-DWGD)

举报
此星光明 发表于 2023/08/27 17:56:01 2023/08/27
【摘要】 ​简介巴西每日气象网格数据(BR-DWGD),1961-2020巴西综合气象网格数据集是气象研究的一大进步,它满足了人们对精确、广泛的气象数据日益增长的需求。该数据集在前一个数据集的基础上,将空间分辨率提高到 0.1° x 0.1°,并将时间覆盖范围从 1961 年 1 月扩大到 2020 年 7 月。数据集纳入了海拔高度和温度变化率,改进了最低和最高温度的网格插值,同时还包括降水、太阳辐射...

简介

巴西每日气象网格数据(BR-DWGD),1961-2020
巴西综合气象网格数据集是气象研究的一大进步,它满足了人们对精确、广泛的气象数据日益增长的需求。该数据集在前一个数据集的基础上,将空间分辨率提高到 0.1° x 0.1°,并将时间覆盖范围从 1961 年 1 月扩大到 2020 年 7 月。数据集纳入了海拔高度和温度变化率,改进了最低和最高温度的网格插值,同时还包括降水、太阳辐射、风速和相对湿度等其他重要变量。

该数据集将 11,473 个雨量计和 1,252 个气象站的数据进行了细致的融合,从而实现了精确的插值。通过排序交叉验证统计确定的最佳插值方法的选择,彰显了该数据集对精确性的承诺。由于提供了两类网格控制,研究人员获得了根据站点数据评估插值精度的工具。作为一种综合资源,巴西综合气象网格数据集可促进气候、气象和农业研究的进步,为多方面的科学研究提供细致入微的见解。

这些数据集展示了巴西的日气象网格数据集(BR-DWGD)。变量包括降水量(pr,毫米);最高和最低温度(Tmax,tmin,℃);太阳辐射(Rs,兆焦耳/平方米);相对湿度(RH,%);2 米处风速(u2,米/秒)和蒸散量(ETo,毫米)。时间覆盖范围为 1961/01/01-2020/07/31(降水除外:1961/01/01-2022/12/31),空间分辨率为 0.1° x 0.1°,仅针对巴西领土。您可在此处找到该数据集的链接

数据集后处理
数据集以多波段 netcdf 文件的形式提供,每个文件代表 1961 年以来的一天,然后按 20 年的时间间隔分割。然后,数据集被转换并分割成单个 geotiff 图像并进行合并,使其成为连续的数据集,每个数据集约有 21762 个图像,但降水量数据集除外,该数据集一直延续到 2022 年。雨量计和气象站位置数据被进一步添加到资产中。这些数据集必须经过缩放和偏移处理才能代表真实值,它们都包含在下表和示例脚本中。

Variable Variable name Units Offset Scale
pr Precipitation mm 255 0.006866665
Eto evapotranspiration mm 0 0.051181102
Tmax maximum temperature C 15 0.001068148
Tmin minimum temperature C 15 0.001068148
RH Relative humidity Percentage 0 0.393700787
RS Solar radiation MJ/m2 0 0.157086614
U2 Wind speed m/s 0 0.059055118

引用Citation

Xavier, A. C., Scanlon, B. R., King, C. W., & Alves, A. I. (2022). New improved Brazilian daily weather gridded data (1961–2020).
International Journal of Climatology, 42( 16), 8390– 8404. https://doi.org/10.1002/joc.7731

代码Earth Engine Snippet

var ET = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/ET");
var PR = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/PR");
var RH = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/RH");
var RS = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/RS");
var TMAX = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/TMAX");
var TMIN = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/TMIN");
var U2 = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/U2");
var RAIN_GAUGES = ee.FeatureCollection("projects/sat-io/open-datasets/BR-DWGD/RAIN_GAUGES");
var WEATHER_STATIONS = ee.FeatureCollection("projects/sat-io/open-datasets/BR-DWGD/WEATHER_STATIONS");

代码链接Sample code: https://code.earthengine.google.com/?scriptPath=users/sat-io/awesome-gee-catalog-examples:weather-climate/BR-DWDG-EXAMPLE

单一最大温度代码

/*
|Variable|Variable name      |Units     |Offset|Scale      |
|--------|-------------------|----------|------|-----------|
|pr      |Precipitation      |mm        |255   |0.006866665|
|Eto     |evapotranspiration |mm        |0     |0.051181102|
|Tmax    |maximum temperature|C         |15    |0.001068148|
|Tmin    |minimum temperature|C         |15    |0.001068148|
|RH      |Relative humidity  |Percentage|0     |0.393700787|
|RS      |Solar radiation    |MJ/m2     |0     |0.157086614|
|U2      |Wind speed         |m/s       |0     |0.059055118|
*/
var tmax = ee.ImageCollection("projects/sat-io/open-datasets/BR-DWGD/TMAX");
// Define a scaling factor

var offset = 15
var scale  = 0.001068148

// Function to apply the scaling factor to a specific band
var scaleBand = function(image) {
  var scaledImage = image.select("b1").rename(['TMAX']).multiply(scale).add(offset);
  return scaledImage.copyProperties(image, image.propertyNames());
};
var tmax = tmax.map(scaleBand);


//Standard color palette for tmax
var color_pal = ['000066', '001199', '0044BB', '0077DD', '33AAEE', '66CCFF', 'FFDDCC', 'FFBB99', 'FF9966', 'FF6644']
var vis = {min:20,max:40,palette:color_pal};

var tmax = tmax.filterDate('2010-01-01','2022-12-31').select(['TMAX']);
var composite = tmax.first().visualize(vis);
var compositeLayer = ui.Map.Layer(composite).setName('Temp Max in Degree C');

// Create the main map and set the SST layer.
var mapPanel = ui.Map();
var layers = mapPanel.layers();
layers.add(compositeLayer, 'Temp max Composite');


/*
* Panel setup
*/

// Create a panel to hold title, intro text, chart and legend components.
var inspectorPanel = ui.Panel({style: {width: '30%'}});

// Create an intro panel with labels.
var intro = ui.Panel([
  ui.Label({
    value: 'Temp Max in C - Time Series Inspector',
    style: {fontSize: '20px', fontWeight: 'bold'}
  }),
  ui.Label('Click a location to see its time series of Max temp from gridded data.')
]);
inspectorPanel.add(intro);

// Create panels to hold lon/lat values.
var lon = ui.Label();
var lat = ui.Label();
inspectorPanel.add(ui.Panel([lon, lat], ui.Panel.Layout.flow('horizontal')));

// Add placeholders for the chart and legend.
inspectorPanel.add(ui.Label('[Chart]'));


/*
* Chart setup
*/

// Generates a new time series chart of SST for the given coordinates.
var generateChart = function (coords) {
  // Update the lon/lat panel with values from the click event.
  lon.setValue('lon: ' + coords.lon.toFixed(2));
  lat.setValue('lat: ' + coords.lat.toFixed(2));

  // Add a dot for the point clicked on.
  var point = ee.Geometry.Point(coords.lon, coords.lat);
  var dot = ui.Map.Layer(point, {color: '000000'}, 'clicked location');
  // Add the dot as the second layer, so it shows up on top of the composite.
  mapPanel.layers().set(1, dot);

  // Make a chart from the time series.
  var tmaxChart = ui.Chart.image.series(tmax, point, ee.Reducer.mean(), 500);

  // Customize the chart.
  tmaxChart.setOptions({
    title: 'Tmax Brazil in Temp (C)',
    vAxis: {title: 'Temp (C)'},
    hAxis: {title: 'Date', format: 'yyyy-MM-dd', gridlines: {count: 7}},
    series: {
      0: {
        color: 'blue',
        lineWidth: 0,
        pointsVisible: true,
        pointSize: 2,
      },
    },
    legend: {position: 'right'},
  });
  // Add the chart at a fixed position, so that new charts overwrite older ones.
  inspectorPanel.widgets().set(2, tmaxChart);
};


/*
* Legend setup
*/

/*
* Map setup
*/

// Register a callback on the default map to be invoked when the map is clicked.
mapPanel.onClick(generateChart);

// Configure the map.
mapPanel.style().set('cursor', 'crosshair');


// Initialize with a test point.
var initialPoint = ee.Geometry.Point(-53.02, -8.90);
mapPanel.centerObject(initialPoint, 4);


/*
* Initialize the app
*/

// Replace the root with a SplitPanel that contains the inspector and map.
ui.root.clear();
ui.root.add(ui.SplitPanel(inspectorPanel, mapPanel));

generateChart({
  lon: initialPoint.coordinates().get(0).getInfo(),
  lat: initialPoint.coordinates().get(1).getInfo()
});

License

The datasets are provided under a Attribution 4.0 International (CC BY 4.0) license.

Provided by: Xavier, A. C. et al

Curated in GEE by : Samapriya Roy

Keywords: Brazil, maximum temperature, minimum temperature, precipitation, solar radiation, wind speed, relative humidity, evapotranspiration

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。