极地立体投影到常规纬度/经度网格

时间:2017-03-03 13:31:02

标签: python netcdf matplotlib-basemap nco

这是我之前的问题的后续内容,因为这对示例和数据更加具体。我有一个304乘448的冰数据阵列(在极地立体投影中),其中可以获得netcdf here。可以在此file中找到每个网格框的相应纬度/经度点。我想将这些数据转换为常规的lat / lon网格(比如180x360),其中每个网格框都是一个度数。有没有python方式这样做?等等使用Basemap,或者使用CDO(气候数据运算符)?

非常感谢提前。 詹姆斯

2 个答案:

答案 0 :(得分:1)

如果您首先使用例如

将网格添加到数据文件中
ncks -A -v lat,lon NSIDC_LatLon.nc sample.nc

然后你可以使用NCO的ncremap来修改,例如,

ncremap -i sample.nc -d 1x1.nc -o out.nc

不幸的是,这将需要NCO的当前快照(而不是已发布的版本),因为输入文件包含一个异常顺序的维度,我只是修补了NCO来处理。重新排序的输出样本为here

根据OP的请求,我重新编译了他的文件,然后上传了它(here)。我没有1x1数据集,所以我首先创建一个1x1网格文件,如手册中所示,然后重新编号(使用ncremap -g选项):

ncremap -i ~/NSIDC.nc -g ${DATA}/grids/180x360_SCRIP.20150901.nc -o ~/NSIDC_1x1.nc

答案 1 :(得分:0)

通常在CDO中执行此操作的命令是

cdo remapcon,r360x180 in.nc out.nc 

您可以使用bil = bilinear,nn =最近邻居,con2 = 2阶保守重映射代替con =保守重映射。

根据此帖子,https://code.mpimet.mpg.de/boards/1/topics/8302?r=8326最新版本的cdo应该能够处理极地立体投影。