IDL遥感应用入门(9):改进利用QuikScat数据绘制风速矢量图

在之前的文章IDL遥感应用入门(5):利用QuikScat数据绘制风速矢量图中,我绘制了QuikScat的风速矢量图,但是有一个缺陷就是没有实现没有实现图例和和说明信息,为此我特意请教了IDL的@杨铭伦大神,整理下了这篇文章。

QuikScat数据说明

QuikScat提供3个方面数据信息:表面风速,表面风向和降雨信息。

其中数据在0到250属于有效信息,大于250的值均属于无效信息。

计算风速的时候需要乘以0.2,风向需要乘以1.5

更多详细信息可以查看这里

代码实现

;Author:杨铭伦
;2014-01-13

pro yangminglun
filename=file_search('D:\3','*.gz')
device,decomposed=1
!p.color=0
!p.background='FFFFFF'xl
;读取某一目录下的所有数据
for data=0,0 do begin
  a=bytarr(1440,720,3)
  openr,lun,filename[data],/compress,/get_lun
  readu,lun,a
  free_lun,lun
  ws=congrid(a(*,*,0),180,90)*0.2
  dir=congrid(a(*,*,1),180,90)*1.5/180*!pi

  ;构建vector函数所需参数
  u=ws*sin(dir)
  v=ws*cos(dir)
  x=findgen(1440)*0.25
  y=findgen(720)*0.25-90
  x=congrid(x,180)
  y=congrid(y,90)

  ;构建图例
  u(50,70)=30
  v(50,70)=0

  ;出图显示
  window,data,xsize=1440,ysize=720
  name=strarr(7)
  name[data]=string(20060700+data+1)
  map_set,0,180,0,title=name(data),/continents,/grid,/label
  velovect,u,v,x,y,missing=250*0.2,/overplot

  xyouts,103,49,'10m/s',color='FF0000'xl
 endfor
end  

效果图

一些说明

文中file_search('D:\3','*.gz') 是定义的数据路径,这里共享下我用的实验数据 。猛击这里下载

声明:本文所有的代码来自@杨铭伦大神,非本人所写,在此表示强烈的感谢之情。

IDL遥感应用入门(8):读取并显示SSMI / SSMIS数据 IDL直接图形法绘制图例的两种方法

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论