1

我有一个带有控制文件的GrADS 格式(原始二进制)文件,如下所示:

dset data.bin
undef  -999.
options template
title Example data
xdef 720 linear    0.25    0.50
ydef 360 linear  -89.75    0.50
tdef   1 linear 00Z01JAN1990 1yr
zdef 1 linear 1 1
vars 1
dat 0 99 Estimated data
ENDVARS

有谁知道如何使用 R 或 Python 将其转换或重新格式化为常见的 2D 光栅文件格式?

预期的输出是 2D 地图(通常是光栅文件或 2D 数组),类似于此地图: 输出示例

4

2 回答 2

1

您可以使用 CDO(气候数据运算符)通过一行代码来执行此操作,例如

cdo -f nc import_binary Temp.ctl try.nc

但是在 Windows 中安装 CDO 有点棘手。您可以在 Windows 中安装 Ubuntu 子系统,然后在 Ubuntu 中安装 CDO。之后按照此处提供的步骤在 Ubuntu 子系统中安装 CDO https://zoomadmin.com/HowToInstall/UbuntuPackage/cdo。然后在.ctl文件所在的目录下打开终端,然后执行上面的代码。

于 2020-01-28T06:53:41.110 回答
1

你可能想试试这个 python 包xgrads,它将解析 ctl 文件并将原始二进制数据加载到xarray地球科学中广泛使用的数据结构中:

from xgrads import open_CtlDataset

# load the data into xarray.Dataset
dset = open_CtlDataset('data.ctl')

然后很容易将数据绘制为:

dset['dat'].plot()

请注意,如果 ctl 和二进制文件在同一个文件夹中,则 ctl 的第一行应该是dset ^data.bin. 如果它们不在同一个文件夹中,则应指定.bin文件的绝对路径。

希望这可以帮助。

于 2020-04-29T01:18:48.910 回答