PyGrADS可以很方便地将GrADS中的变量导入Python内存空间

10 篇文章 2 订阅

请看下面的例子:

from pylab import *
from grads import GrADS

# Start GrADS and open the data file
# ----------------------------------
ga = GrADS(Bin='grads',Echo=False,Port=True,Window=False)
ga.open('../data/model.ctl')

# XY slices
# ---------
ts1 = ga.exp('ts')   #ts1.shape=(46,73)
ts2 = ga.expr('ts')  #ts2.shape=(46,73)
print("XY Skin temperature: ")
print(ts1.data-ts2.data)

# XYT slices
# ----------
ga('set t 2 3')
ts1 = ga.exp('ts') #ts1.shape=(2,46,73)
ts2 = ga.expr('ts')#ts2.shape=(2,46,73)
print("XYT Skin temperature: ")
print(ts1.data-ts2.data)

# XYZ slices
# ----------
ga('set t 3')
ga('set z 5 6')
xx1 = ga.exp('ua')#xx1.shape=(2, 46, 73)
xx2 = ga.expr('ua')#xx2.shape=(2, 46, 73)
print("XYZ Zonal Wind")
print(xx1.data-xx2.data)

# XZT slices
# ----------
ga('set t 2 4')
ga('set z 1 5')
ga('set y 20')
xx2 = ga.expr('ua')#xx2.shape=(3,5,73)
print("XZT Zonal Wind")
print(xx2)

exp()和expr()的区别在于exp()导出的变量可以使用imp('gvarname',pyvarname)再导入回GrADS中,而expr则不行.

这是因为使用exp导出的时候保留了原始变量的所有信息,expr则只导出数据而已.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值