【NCL】nc文件读入数据需处理

 【addfile读入nc文件的数据后:真实数据=读入数据*scale_factor+add_offset】

做毕设的时候,需要对西北太平洋画海表温度数据(sst)图,但是NCL的addfile读入数据后画出来的数值特别大特别奇怪,但是用ncview或panoply看的数据又是正常的。所以不是nc数据问题,后来发现NCL读入数据不会像python一样自动处理。

sst数据来源:data.remss.com - /SST/daily/mw_ir/v05.1/netcdf/2023/

ncl命令读入数据:

filepath = "C:/data/"
filename2 = "20231001120000-REMSS-L4_GHRSST-SSTfnd-MW_IR_OI-GLOB-v02.0-fv05.1.nc"

sstfile= addfile(filepath+filename2,"r")
print(sstfile) ;7varible:lat,lon,time,analysed_sst,analysis_error,sea_ice_fraction,mask
sst =sstfile->analysed_sst ;用sst接收analysed_sst变量的信息,就是我们需要的sst

用print(sstfile)的原因就是打印看看:1、有哪些变量,需要的变量具体的名字是什么;2、变量的具体数据信息

重点看数据的add_offset和scale_factor

接下来对读入的数据进行处理:

  sst=sstdata*0.000839259+295.65 ;真实sst = 读入sst*scale + offset
  copy_VarMeta(sstdata, sst) ;将读入的数据的源信息都赋值给处理后的数据

不使用copy_VarMeta会让处理后的数据丢失掉源信息(比如坐标信息等)

接下来就可以使用sst正常画图了。

希望有帮助~(ps:CSDN居然还没有NCL的标签)

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值