爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 5877|回复: 8

[作图] 【求助】ncl出图如何去除地图以外的填色

[复制链接]

新浪微博达人勋

发表于 2022-2-28 12:08:02 | 显示全部楼层 |阅读模式

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

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

x
求助下,用ncl出WRF结果的图时怎么才能只涂色地图里的,去除掉地图以外海的部分的填色?如图怎么把山东省外面的海的部分填色去除或者填成白色?
这是我的部分脚本(出PBL高度的)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  mpres@mpOutlineOn = False
  mpres@mpFillOn    = False
  mpres@mpDataSetName         = "Earth..4"  
  mpres@mpDataBaseVersion     = "MediumRes"  
  mpres@mpOutlineOn           = True        
  mpres@mpMaskAreaSpecifiers       = (/"China"/)
  mpres@mpOutlineSpecifiers        = (/"China","China:Provinces"/)
  mpres@mpGeophysicalLineColor      = "Black"
  mpres@mpLimbLineColor             = "Blue"
  mpres@mpNationalLineColor         = "Black"
  mpres@mpPerimLineColor            = "Black"
  mpres@mpUSStateLineColor          = "Black"
  mpres@mpNationalLineThicknessF   = 2
  mpres@mpProvincialLineThicknessF = 1
  mpres@mpGridLonSpacingF = 1.0      
  mpres@mpGridSpacingF = 1
  mpres@mpGridLineThicknessF = 0.01
  mpres@mpNationalLineThicknessF   = 2
  mpres@mpProvincialLineThicknessF = 1
  mpres@mpGeophysicalLineThicknessF= 2
  mpres@mpGridAndLimbOn=True      
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  do it = 0,ntimes-1,1             ; TIME LOOP
    print("Working on time: " + times(it) )
    res@TimeLabel = times(it)   ; Set Valid time to use on plots
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
      opts = res
      opts@cnFillOn = True
      opts@cnFillPalette = "BlueYellowRed"
      opts@ContourParameters = (/ -700., 700., 100./)
      gsn_define_colormap(wks,"BlueRedGray")
      contour_pbl = wrf_contour(a,wks,pbl(0,:,:),opts)
      delete(opts)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
      plot = wrf_map_overlays(a,wks,(/contour_pbl/),pltres,mpres)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
end do      
end




PBL高度图

PBL高度图
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2022-2-28 13:22:00 | 显示全部楼层
-700改成1试试咋样
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2022-2-28 13:37:28 | 显示全部楼层
opeveu 发表于 2022-2-28 13:22
-700改成1试试咋样

这个不是调节色阶范围的吗
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-2-28 14:42:31 | 显示全部楼层
res@mpOceanFillColor           = "white"
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2022-2-28 16:02:04 | 显示全部楼层
guoguohh 发表于 2022-2-28 14:42
res@mpOceanFillColor           = "white"

我试了试还是不行
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-2-28 17:14:49 | 显示全部楼层
不二兔 发表于 2022-2-28 16:02
我试了试还是不行

试一下加这个res@mpAreaMaskingOn=True
res@mpOceanFillColor           = "white"
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-2-28 17:19:08 | 显示全部楼层
不二兔 发表于 2022-2-28 16:02
我试了试还是不行

或者你看一下https://www.ncl.ucar.edu/Applications/mask.shtml里面mask_8.ncl的例子,有个res@cnFillDrawOrder             = "PreDraw"  ; Make sure map fill happen last. 应该能解决你的问题
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2022-2-28 21:28:16 | 显示全部楼层
guoguohh 发表于 2022-2-28 17:19
或者你看一下https://www.ncl.ucar.edu/Applications/mask.shtml里面mask_8.ncl的例子,有个res@cnFillDr ...

好的感谢您我试试
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2022-3-1 08:37:58 | 显示全部楼层
本帖最后由 opeveu 于 2022-3-1 08:55 编辑
不二兔 发表于 2022-2-28 13:37
这个不是调节色阶范围的吗

哈哈哈,我是把海的颜色填成蓝色,我画的是高程图
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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