爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6186|回复: 4

overlay 组图只有plot(0)成功叠加,不知道是什么原因

[复制链接]

新浪微博达人勋

发表于 2022-5-27 15:35:31 | 显示全部楼层 |阅读模式

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

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

x
overlay画组图,plot(i)是contour_map,plot1、2和plotr叠加在plot(i)上,3种图的设置都是一样的,但只有plot(0)成功叠加了plotr(黑实线区域),不知道是什么原因,以下是相关脚本

  plot = new(6,graphic)
  wks = gsn_open_wks("eps","2")     
  gsn_define_colormap(wks,"BlueDarkRed18")


  res                 = True                                
  res@gsnFrame = False
  res@gsnDraw = False
  res@lbLabelBarOn = True
  res@pmTickMarkDisplayMode = "Always"

  ;; 绘制的地图区域
  res@gsnAddCyclic = False
  res@mpLimitMode = "LatLon"
  res@mpMinLatF    = -23.5         
  res@mpMaxLatF    = 23.5
  res@mpMinLonF    = 180
  res@mpMaxLonF    = 290
  res@mpCenterLonF = 235
  res@gsnLeftStringFontHeightF = 0.02
  res@pmLabelBarOrthogonalPosF = 0.15
  res@lbLabelFontHeightF = 0.02
  res@tmYROn = True
  res@tmYRLabelFontHeightF = 0.02
  res@mpFillOn               = True
  res@mpLandFillColor = "gray"     
  res@mpGridSpacingF         = 10.     ;
  res@mpFillDrawOrder = "PreDraw"
  res@cnFillOn      = True                  
  res@cnLinesOn     = False
  res@cnLineLabelsOn = False
  res@cnInfoLabelOn = False   
  res@lbLabelBarOn = True
;----------------------------------------------------------------------------------------------------------------------------

rel  = True                        
  rel@gsnFrame = False
  rel@gsnDraw = False
  rel@cnFillOn = False
  rel@cnLinesOn     = True
  rell = rel
  rel@cnLineLabelsOn = True
  rel@gsnAddCyclic = False
  rel@lbLabelBarOn = False
  rel@cnInfoLabelOn=False

  rel@cnLineThicknessF = 0.6
  rel@trGridType = "TriangularMesh"
  rel@cnLevelSpacingF=1
  rel@cnLineDashPattern = 2

  rell@cnLineThicknessF = 0.75
  rell@cnLineDashPattern = 0
  rell@cnLinesOn = True
  rell@cnLineLabelsOn = False


  plot(0) = gsn_csm_contour_map(wks,at(0,:,:),res)   
  plot(1) = gsn_csm_contour_map(wks,at(1,:,:),res)


  res@gsnLeftString = "Q/mld"
  plot(2) = gsn_csm_contour_map(wks,a1(0,:,:),res)
  plot(3) = gsn_csm_contour_map(wks,a1(1,:,:),res)


  res@gsnLeftString = "Advection"
  plot(4) = gsn_csm_contour_map(wks,ad(0,:,:),res)  
  plot(5) = gsn_csm_contour_map(wks,ad(1,:,:),res)

  plot1 = gsn_csm_contour(wks,at1(0,:,:),rel)
  plot2 = gsn_csm_contour(wks,at1(1,:,:),rel)

  overlay(plot(0),plot1)
  overlay(plot(1),plot2)

  rel@cnLineThicknessF = 0.66
  rel@cnLineDashPattern = 0
  rel@cnLinesOn = True
  rel@cnLineLabelsOn = False
plotr = gsn_csm_contour(wks,regiony,rel)

do i=0,5
overlay(plot(i),plotr)
end do



lles = True
lles@gsnPanelFigureStrings = (/"-90-(-30)","-60-0","-90-(-30)","-60-0","-90-(-30)","-60-0"/)
;lles@gsnPanelLabelBar = True
lles@amJust = "TopLeft"
gsn_panel(wks,(/plot/),(/3,2/),lles)

1.PNG
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2024-10-18 11:51:01 | 显示全部楼层
请问您现在解决了吗?我也遇到overlay的一些问题
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2024-10-18 19:16:16 | 显示全部楼层
everglow 发表于 2024-10-18 11:51
请问您现在解决了吗?我也遇到overlay的一些问题

我已经解决啦~
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-10-20 10:18:15 | 显示全部楼层

请问您是怎么解决的呀?可以分享一下吗?我也是显著性检验想overlay在相关的图上有60个子图,结果不太对
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2024-10-21 15:20:00 | 显示全部楼层
everglow 发表于 2024-10-20 10:18
请问您是怎么解决的呀?可以分享一下吗?我也是显著性检验想overlay在相关的图上有60个子图,结果不太对

我当时是因为叠加的图只设置了一个,导致后面的图没有叠加,你有60个子图的话应该需要do i=0,59  plotr(i)=...  end do, 需要叠加的图也得有60个才可以
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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