You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将复杂结构的NetCDF数据重构为(time, lat, lon)格式?

问题:将NetCDF数据集转换为(time, lat, lon)格式以绘制CO₂数据地图

数据集说明

我已将文件上传至Dropbox,可下载文件:IASISND02_20240702161759Z_20240702175655Z_epct_d9f95b34_F.nc(不常使用Dropbox,希望可用)

问题描述

我下载了一个NetCDF数据集,用xarray读取后发现结构复杂,无法转换成通用的(time, lat, lon)格式,进而无法在地图上绘制integrated_co2变量的值。

当前操作与变量详情

读取数据集

我使用xarray打开文件的代码:

netcdf = xr.open_dataset(
    'path/tofile/IASISND02_20240702161759Z_20240702175655Z_epct_d9f95b34_F.nc'
)

文件包含77个变量,我重点关注integrated_co2变量,执行以下代码查看该变量信息:

print(netcdf.integrated_co2)

(配图:integrated_co2变量信息截图)

相关变量维度

该变量的坐标并非实际经纬度,而是指向lat和lon变量中实际坐标的索引,同时存在两个时间变量。我通过以下代码打印了相关变量的维度:

# 数据集中的相关变量
var_names = [
    "lat",
    "lon",
    "record_start_time",
    "record_stop_time",
    "across_track",
    "along_track",
    "integrated_co2",
]

for var in var_names:
    print(f"{var}: {netcdf[var].shape} ")

(配图:变量维度信息截图)

各变量的关键信息:

  • lat和lon存储的是度数格式的实际经纬度坐标
  • along_track取值范围为1至742
  • across_track取值范围为1至120
  • 时间变量record_start_time和record_stop_time的值为类似7.732523e+08的格式

核心疑问

我确认所需的经纬度坐标、时间戳、CO₂数据都已存在,但不清楚如何将当前基于索引的坐标结构转换为通用的(time, lat, lon)格式,从而实现integrated_co2数据的地图绘制。我是新手,查阅了不少资料但未找到类似示例,希望得到帮助。

额外变量信息

along_track变量

执行代码查看变量信息:

print(netcdf.along_track)

(配图:along_track变量信息截图)

across_track变量

执行代码查看变量信息:

print(netcdf.across_track)

(配图:across_track变量信息截图)

lat变量

执行代码查看变量信息:

print(netcdf.lat)

(配图:lat变量信息截图)

lon变量

执行代码查看变量信息:

print(netcdf.lon)

(配图:lon变量信息截图)

record_start_time变量

执行代码查看变量信息:

print(netcdf.record_start_time)

(配图:record_start_time变量信息截图)

record_stop_time变量

执行代码查看变量信息:

print(netcdf.record_stop_time)

(配图:record_stop_time变量信息截图)


内容的提问来源于stack exchange,提问作者i.i.k.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 23:24:51