免费|中国1km分辨率逐月平均气温数据集(1976-2025,50年600期):附Python/Matlab/R读取代码

免费|中国1km分辨率逐月平均气温数据集(1976-2025,50年600期):附Python/Matlab/R读取代码

摘要:基于CRU全球0.5°气候数据集与WorldClim高分辨率气候数据集,通过Delta空间降尺度方案生成的中国区域1km分辨率逐月平均气温数据。时间跨度1976-2025年共50年600期,NetCDF格式,已用496个独立气象站点验证。本文介绍数据背景、技术规格、使用方法与完整获取方式(50年逐年关键词)。

关键词:中国平均气温、1km分辨率、逐月气温、Delta降尺度、NetCDF、彭守璋、CRU、WorldClim、气候数据

标签GIS 遥感 气候数据 NetCDF 空间数据库 气温


一、数据简介

本数据集是彭守璋 副研究员(西北农林科技大学水土保持研究所)团队开发的中国区域高分辨率长时序气候栅格数据集,基于 CRU 全球 0.5° 气候数据与 WorldClim 高分辨率气候数据,通过 Delta 空间降尺度方案生成。

数据发表于国际顶级数据期刊 Earth System Science Data (ESSD),是开展气候变化研究、农业热量评估、生态区划等领域研究的高质量基础数据。

核心指标一览:

参数 说明
空间分辨率 0.0083333°(约 1km)
时间范围 1976年1月 ~ 2025年12月
时间分辨率 逐月(12期/年)
总期数 600期(50年×12月)
数据格式 NetCDF(.nc)
数据类型 int16(16位有符号整型)
气温单位 0.1℃(实际值 = 存储值 × 0.1)
空间范围 中国主要陆地(含港澳台)
坐标系 WGS84

二、数据获取

数据免费获取,提供两种渠道,每年数据独立成包:

方式一:公众号关键词(推荐)

  1. 关注公众号 YouGIS顽石
  2. 发送关键词:逐月平均气温-{年份}

示例:

复制代码
逐月平均气温-2000   → 2000年全年12期数据
逐月平均气温-2020   → 2020年全年12期数据

每年一个压缩包(约160MB),内含 1 个 nc 文件(含该年12个月数据)。获取下载链接。

50年关键词速查表(1976-2025):

逐月平均气温-1976 逐月平均气温-1977 逐月平均气温-1978 逐月平均气温-1979
逐月平均气温-1980 逐月平均气温-1981 逐月平均气温-1982 逐月平均气温-1983
逐月平均气温-1984 逐月平均气温-1985 逐月平均气温-1986 逐月平均气温-1987
逐月平均气温-1988 逐月平均气温-1989 逐月平均气温-1990 逐月平均气温-1991
逐月平均气温-1992 逐月平均气温-1993 逐月平均气温-1994 逐月平均气温-1995
逐月平均气温-1996 逐月平均气温-1997 逐月平均气温-1998 逐月平均气温-1999
逐月平均气温-2000 逐月平均气温-2001 逐月平均气温-2002 逐月平均气温-2003
逐月平均气温-2004 逐月平均气温-2005 逐月平均气温-2006 逐月平均气温-2007
逐月平均气温-2008 逐月平均气温-2009 逐月平均气温-2010 逐月平均气温-2011
逐月平均气温-2012 逐月平均气温-2013 逐月平均气温-2014 逐月平均气温-2015
逐月平均气温-2016 逐月平均气温-2017 逐月平均气温-2018 逐月平均气温-2019
逐月平均气温-2020 逐月平均气温-2021 逐月平均气温-2022 逐月平均气温-2023
逐月平均气温-2024 逐月平均气温-2025

方式二:YouGIS 数据助手


三、数据来源与技术方法

3.1 原始数据源

数据源 说明
CRU TS 英国东英吉利大学 Climatic Research Unit 全球 0.5° 月值气候数据集
WorldClim 全球高分辨率气候数据集,提供 1km 空间分辨率的气候态场

3.2 Delta 空间降尺度方案

CRU 数据空间分辨率较粗(0.5°,约50km),WorldClim 提供高分辨率(~1km)的气候态场但缺乏年际变化。Delta 方案的核心思想:

  1. 计算 CRU 某月数据相对于多年气候态的距平(Delta值)
  2. 将该距平空间插值到 1km 分辨率
  3. 叠加到 WorldClim 的 1km 气候态场上,得到该月 1km 分辨率气温栅格

这种方案既保留了 CRU 的年际变化信息,又继承了 WorldClim 的空间细节。

3.3 验证

使用 496 个独立气象观测站点对降尺度结果进行验证,数据质量可靠。

3.4 数据作者

彭守璋,副研究员,西北农林科技大学水土保持研究所。长期从事气候变化与生态水文研究,开发了一系列中国区域高分辨率气候数据集。


四、数据使用方法

4.1 Python(xarray)

python 复制代码
import xarray as xr

# 读取nc文件
ds = xr.open_dataset('tmp_2000.nc')

# 气温 = 存储值 × 0.1(单位:℃)
temp = ds['tmp'] * 0.1

# 提取某月(如2000年7月)
july = temp.sel(time='2000-07')
july.plot()  # 快速可视化

# 计算年均温
annual_mean = temp.groupby('time.year').mean(dim='time')

# 计算某区域年均温时间序列
regional_ts = temp.sel(
    lon=slice(100, 120),
    lat=slice(40, 20)  # 注意纬度降序
).mean(dim=['lon', 'lat'])

4.2 批量合并多年数据

python 复制代码
import xarray as xr
import glob

# 合并1976-2025全部nc文件
files = sorted(glob.glob('tmp_*.nc'))
ds_all = xr.open_mfdataset(files, combine='by_coords')

# 50年时间序列
temp_all = ds_all['tmp'] * 0.1

# 计算全国年均温的年际变化趋势
national_mean = temp_all.mean(dim=['lat', 'lon'])
annual_series = national_mean.groupby('time.year').mean(dim='time')

print("全国年均气温序列:")
for year, val in zip(annual_series.year.values, annual_series.values):
    print(f"  {year}: {val:.1f} ℃")

ds_all.close()

4.3 按区域裁切

python 复制代码
import xarray as xr

ds = xr.open_dataset('tmp_2000.nc')
temp = ds['tmp'] * 0.1

# 方式一:经纬度矩形裁切(以四川盆地为例)
basin = temp.sel(
    lon=slice(102, 110),
    lat=slice(32, 29)  # 注意纬度可能降序
)

# 方式二:按矢量边界裁切(需 rioxarray + geopandas)
import rioxarray
import geopandas as gpd

temp.rio.write_crs("EPSG:4326", inplace=True)
shp = gpd.read_file('study_area.shp')
clipped = temp.rio.clip(shp.geometry, shp.crs)

ds.close()

4.4 导出为 GeoTIFF

python 复制代码
import xarray as xr
import rioxarray  # 需安装:pip install rioxarray

ds = xr.open_dataset('tmp_2000.nc')
temp = ds['tmp'].sel(time='2000-07') * 0.1

# 写入空间坐标信息
temp.rio.write_crs("EPSG:4326", inplace=True)
temp.rio.to_raster('temp_2000_07.tif')

print("已导出为 GeoTIFF: temp_2000_07.tif")
ds.close()

4.5 ArcMap / ArcGIS Pro

  1. 打开 Make NetCDF Raster Layer 工具
  2. 输入 nc 文件,变量选 tmp
  3. 设置 X/Y 维度为 lon/lat
  4. time 维度切换月份
  5. 记得在栅格计算器中 × 0.1 转换为实际温度

4.6 MATLAB

matlab 复制代码
% ncread读取nc数据
data = ncread('tmp_2000.nc', 'tmp');
% 实际气温(℃) = data × 0.1
temp = data * 0.1;
% 绘制某月
imagesc(temp(:,:,7));  % 第7层为7月
colorbar;

4.7 R(terra/raster)

r 复制代码
library(terra)
# 读取nc文件
r <- rast("tmp_2000.nc")
# 气温 = 存储值 × 0.1
temp <- r * 0.1
plot(temp[[7]])  # 7月

五、关键注意事项

⚠️ 单位换算

nc 文件存储值为 0.1℃ ,使用时必须 × 0.1 转换为实际摄氏温度。

python 复制代码
# 错误:直接使用存储值
temp_wrong = ds['tmp']

# 正确:乘以0.1转换
temp_correct = ds['tmp'] * 0.1

⚠️ int16 负值处理

气温存在负值(尤其北方冬季),数据采用 int16(有符号整型) 存储,天然支持负数。Python/ MATLAB 读取后无需额外处理负值。

⚠️ 空间范围

数据覆盖中国主要陆地,含港澳台,但不含南海岛礁等远海区域。

⚠️ 文献引用

使用本数据请在论文中引用原文:

Peng Shouzhang, Ding Yongxia, Liu Wenzhao, Li Zhi. 1 km monthly temperature and precipitation dataset for China from 1901 to 2017. Earth System Science Data, 2019, 11, 1931-1946. DOI: 10.5194/essd-11-1931-2019


六、适用场景

领域 典型应用
气候变化 区域增暖趋势分析、极端高温/低温事件识别
农业气象 积温计算、作物热量带划分、物候期推算
生态学 植被分布与气候关系、物种适生区建模(MaxEnt)
水文模拟 蒸散发估算、流域水量平衡
城市热岛 城乡温差分析、热环境评估
公共卫生 传染病传播与气温关系、热浪健康风险评估

七、与同类数据集对比

数据集 分辨率 时间范围 变量 获取难度
本数据集(彭守璋) 1km 1976-2025 气温+降水 免费
CRU TS 0.5° 1901-至今 多要素 免费
WorldClim v2 1km~ 1970-2000气候态 多要素 免费
ERA5-Land 0.1° 1950-至今 多要素 免费
国家气象局站点 点位 1951-至今 多要素 需申请

本数据集的优势在于:1km 高空间分辨率 + 50年长时序 + 逐月时间分辨率 + 免费开放获取


八、常见问题

Q1: 数据是实测的还是模拟的?

数据基于 CRU 和 WorldClim 两个权威数据集通过 Delta 降尺度方法生成,属于降尺度产品,非直接观测数据。但已用496个独立气象站点验证,结果可信。

Q2: 原始数据覆盖1901年至今,为什么只分享1976-2025年?

完整数据集时间范围为1901年至今。本文分享的1976-2025年段覆盖了近50年,满足绝大多数气候变化和研究需求。如需更早数据可从原始数据源获取。

Q3: nc文件怎么打开?

ArcMap(Make NetCDF Raster Layer)、QGIS、Python(xarray/netCDF4)、Matlab(ncread)、Panoply 等均可打开。

Q4: int16存储有什么需要注意的?

气温存在负值(冬季低温),数据采用 int16 有符号整型存储,天然支持负数。读取后乘以 0.1 即可得到实际温度(℃)。

Q5: 和ERA5气温数据有什么区别?

ERA5是再分析数据(数据同化),时间分辨率高(小时级)但空间分辨率低(~31km)。本数据是降尺度产品,空间分辨率高(1km)但时间精度为月尺度。做空间精细分析用本数据,做时间过程分析用ERA5。

Q6: 商业使用是否合规?

数据原始来源标注仅限非商业目的的科学研究与学术交流。商用建议联系原始数据提供方确认许可。


九、总结

这套数据集是目前中国区域最易获取、分辨率最高、时序最长的逐月平均气温栅格数据之一。50年跨度足以支撑气候趋势分析,1km 分辨率可以刻画地形对气温的影响,逐月时间分辨率满足季节性研究需求。


参考文献

  1. Peng S, Ding Y, Liu W, Li Z. 1 km monthly temperature and precipitation dataset for China from 1901 to 2017. Earth System Science Data, 2019, 11, 1931--1946. https://doi.org/10.5194/essd-11-1931-2019
  2. Harris I, Osborn T J, Jones P, Lister D. Version 4 of the CRU TS monthly high-resolution gridded multivariate climate dataset. Scientific Data, 2020, 7, 109.
  3. Fick S E, Hijmans R J. WorldClim 2: new 1-km spatial resolution climate surfaces for global land areas. International Journal of Climatology, 2017, 37(12), 4302-4315.
  4. CRU TS 数据:https://crudata.uea.ac.uk/cru/data/hrg/
  5. WorldClim 数据:http://www.worldclim.org/
  6. 国家地球系统科学数据中心-黄土高原分中心:http://loess.geodata.cn
  7. YouGIS 数据助手:https://yougis.com.cn/res/home

数据来源:国家地球系统科学数据中心-黄土高原分中心(loess.geodata.cn


如果本文对你有帮助,请点赞收藏 ⭐ 支持一下!有问题欢迎评论区交流。

相关推荐
GISBox3 小时前
倾斜摄影逆向反切技术:3DTiles恢复原生OSGB模型全流程
gis·3dtiles·osgb·gisbox·切片转换·倾斜摄影反切
REDcker4 天前
Cesium三维WebGIS入门详解
前端·gis·web·cesium·webgis
weixin_666593997 天前
自然资源时空智能体建设方案:从数字化到智能化的演进路径
大数据·人工智能·大模型·云计算·agent·云平台·空间数据库
新中地GIS开发老师7 天前
零基础WebGIS开发入门 | GeoJSON数据持久化
前端·javascript·gis·webgis·三维gis开发
一个有理想的摸鱼选手8 天前
在三维地球上以另一种视角感受巴威台风
前端·gis·ai编程
YouGIS顽石工坊8 天前
免费|中国1km分辨率逐月降水量数据集(1976-2025,50年600期):附Python/Matlab读取代码
gis·长时间序列·中国降雨量·逐月降水·1km分辨率·气候数据·delta降尺度
GISBox9 天前
告别逐点手动改属性:矢量组件批量编辑全流程
gis·矢量数据·属性表·服务发布·shp·gisbox·批量编辑
新中地GIS开发老师9 天前
地信职业百科④:GIS开发工程师
前端·数据库·gis·webgis·三维gis开发
两点王爷10 天前
一个快速加载面和多面数据的html测试页面(可以导出geojson数据文件)
前端·html·gis