PyGrADS使用实例入门指南

PyGrADS提供了 gacore 类,容许用户调用任何GrADS 可执行程序,例如: grads, gradsnc, gradshdf, gradsdods, gradsdap等。而且用户可以像使用函数一样,把GrADS命令发给gacore类,请看下面的例子:

from grads.gacore import GaCore
ga = GaCore(Bin='grads') # 如果GrADS的版本小于2.0,可以使用ga = GaCore(Bin='gradsnc')
fh = ga.open("http://monsoondata.org:9090/dods/model")
ga("display ps")

实际上,在GrADS大于2.0的版本中,可以更简洁一点:

import grads #导入库
ga=grads.GrADS() #使用GrADS客户端程序,要求GrADS版本大于2.0.0
fh = ga.open("http://monsoondata.org:9090/dods/model") #读取文件
ga("display ps")   #显示图形
ga("printim D:/x.png white") #保存图形,将背景设为白色

绘制的图形如下:

如果你安装了Numpy,那么可以很方便地在python和GrADS客户端之间传递数据:

  from grads.ganum import GaNum 
  ga = GaNum()
  ts = ga.exp("ts")  # export variable ts from GrADS
  ts = ts - 273      # convert ts to Celsius
  ga.imp("tc",ts)    # send the NumPy array to GrADS
  ga("display tc")   # display the just imported variable
如果你还安装了MatPlotLib,那么绘制图形将非常轻松方便:

  from pylab import contourf
  contourf(ts.grid.lon,ts.grid.lat,tc) 
如果你还安装了Matplotlib/Basemap,那么PyGrADS还提供了galab类,容许你使用basemap绘图:

from grads.galab import GaLab
ga = GaLab()
fh = ga.open("http://monsoondata.org:9090/dods/model") #读取文件
ga.blue_marble('on')
ga("set lon -180 180")
ga.contour('ua')
title('Zonal Wind')
绘制的图形如下:

如果将GrADS、MatPlotLib、Pylab结合起来威力更加强大。在GrADS中做统计分析是很不方便的,但是Python中却非常轻松。

例如计算eof(empirical ortoghonal functions):

 ga.open("slp.nc")
 ga("set t 1 41")
 v, d, pc = ga.eof('slp')
更多的内容可以自己去PyGrADS的官方主页摸索吧!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值