请选择 进入手机版 | 继续访问电脑版
爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

新浪微博登陆

只需一步, 快速开始

QQ登录

只需一步,快速开始

搜索
查看: 327|回复: 3

NCL中两图叠加问题!!!跪求解答疑惑,谢谢大家!!!

[复制链接] |关注本帖

新浪微博达人勋

NCL
系统平台:
问题截图:
问题概况: NCL位势高度场叠加在风场上的过程中出现上图纬度的问题,导致叠加时与风场(纬度是正常的)中区域不对应。风场区域为(lat:-10到70,lon:20到200)。不知道要怎么改!!!跪求各位帮忙看看,十分感谢!非常感谢!
我看过提问的智慧: 看过
自己思考时长(天): 1

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x

脚本为:
begin
  fils = systemfunc("ls ./data/Trad*.nc")
  f = addfiles(fils,"r")
  ListSetType (f,"cat")
  u=f[:]->U(:,{110.6387},:,:)
  v=f[:]->V(:,{110.6387},:,:)
  z=f[:]->Z3(:,{110.6387},:,:)
  printVarSummary(u)
  printVarSummary(v)
  printVarSummary(z)
  utim  = dim_avg_n(u,0)
  vtim  = dim_avg_n(v,0)
  ztim  = dim_avg_n(z,0) /10

  wks  = gsn_open_wks("png","uv_wsgd")
  res  = True         
  res@gsnLeftString  = ""
  res@gsnRightString  = ""

  res@pmTickMarkDisplayMode = "Always"
  res@mpFillOn     = False
  res@mpMinLatF = -10         
  res@mpMaxLatF = 70
  res@mpMinLonF = 20
  res@mpMaxLonF = 200
  res@mpOutlineOn  = True

  res@vcGlyphStyle = "LineArrow"  
  res@vcMinMagnitudeF =1.0
  res@vcMinDistanceF =0.03
  res@vcLineArrowThicknessF = 2.5
  res@vcLineArrowHeadMaxSizeF =0.01

  res@vcRefAnnoOn = True  
  res@vcRefMagnitudeF = 20      
  res@vcRefAnnoString1On = True        
  res@vcRefAnnoString2On = False         
  res@vcRefAnnoString1 = "20m/s"
  res@vcRefAnnoSide = "Top"
  res@vcRefLengthF = 0.03
  res@vcRefAnnoOrthogonalPosF = -0.12
  res@vcRefAnnoParallelPosF = 0.999

  sres  = True         
  sres@cnLevelSelectionMode = "ManualLevels"  
  sres@cnLevelSpacingF = 10            

  plot = gsn_csm_vector_map(wks, utim, vtim, res)
  plot_ov = gsn_csm_contour(wks,ztim,sres)

  overlay(plot,plot_ov)                     
  draw(plot)                              
  frame(wks)                             
end


密码修改失败请联系qq:937062711

新浪微博达人勋

发表于 2018-1-13 09:10:42 | 显示全部楼层 |取消关注该作者的回复
ncl 画图是这样:画图函数不止看数据,还看数据的coordinate和attributes。有些操作会使得数据的coordinates和attribute弄丢。那三行可以改成这四行。
  utim  = dim_avg_n_Wrap(u,0)
  vtim  = dim_avg_n_Wrap(v,0)
  ztim  = dim_avg_n_Wrap(z,0)
  ztim  = ztim /10
加上 _Wrap的函数会保留coordinate 和 attributes
分开两步,在第一步给好coord和att以后,在第二步再除以10,这样才能保留ztim的coord 和 att
可以在画图语句前 printVarSummary(ztim)确认一下数据有没有经纬度信息。
其他建议:mpMinLatF 等等目前没起作用。如果你不想画出全部数据,需要 res@mpLimitMode ="LatLon",这样 mpMinLatF才起作用。
密码修改失败请联系qq:937062711

新浪微博达人勋

 楼主| 发表于 2018-1-13 10:23:29 | 显示全部楼层 |取消关注该作者的回复
packard 发表于 2018-1-13 09:10
ncl 画图是这样:画图函数不止看数据,还看数据的coordinate和attributes。有些操作会使得数据的coordinate ...

您说的没错!我刚试了一下,已经解决问题了!谢谢您,这是我第一次发帖子求助,就有这么详细的解释,非常开心!!!超级感谢您哦!!!
密码修改失败请联系qq:937062711

新浪微博达人勋

发表于 2018-1-13 11:50:00 | 显示全部楼层 |取消关注该作者的回复
肉粽子 发表于 2018-1-13 10:23
您说的没错!我刚试了一下,已经解决问题了!谢谢您,这是我第一次发帖子求助,就有这么详细的解释,非常 ...

不用那么客气。我也是论坛的新人啦。大家互相交流,共同进步嘛!
密码修改失败请联系qq:937062711
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表