爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9089|回复: 6

ncl 画图warning

[复制链接]

新浪微博达人勋

发表于 2015-10-14 20:31:29 | 显示全部楼层 |阅读模式

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

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

x
ncl 画水汽通量时,运行计算部分是正确的,但画图就错了,只出了一个地图的地图,出现了如图的4个warning,ncl新手请教

ncl

ncl
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-10-19 10:22:56 | 显示全部楼层
自己顶一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-10-19 10:36:18 | 显示全部楼层
你应该贴出完整的脚本   好让大家帮你看看错在哪
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-10-19 14:56:17 | 显示全部楼层
xiaocaoqiqiao 发表于 2015-10-19 10:36
你应该贴出完整的脚本   好让大家帮你看看错在哪

oad "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/skewt_func.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/wind_rose.ncl"

begin
;**************************************************************************************
;读U风
;**************************************************************************************

a      = addfile("/home/almond/U1979-20141000-100.nc","r")   
u      = short2flt(a->u(5:7,::-1,{0:30},{90:150}))
;读v风
;**************************************************************************************

a1     = addfile("/home/almond/V1979-20141000-100.nc","r")                 
v      = short2flt(a1->v(5:7,::-1,{0:30},{90:150}))
;读shum比湿
;**************************************************************************************

a2        = addfile("/home/almond/SH1979-20141000-100.nc","r")  
q         = short2flt(a2->q(5:7,::-1,{0:30},{90:150}))
;读取地面气压
;**************************************************************************************
a3        = addfile("/home/almond/SP1979-2014.nc","r")
ps1       = short2flt(a3->sp(5:7,{0:30},{90:150}))

time = a3->time
;计算qu = q(比湿)乘以u(u风)
;**************************************************************************************
qu1       = u*q
qv1       = v*q

;**************************************************************************************
;给qu1,qv1赋予属性
;**************************************************************************************
lev       =(/1000,975,950,925,900,875,850,825,800,775,750,700,650,600,550,500,450,400,350,300,250,225,200,175,150,125,100/)
lat       =fspan(0,30,41)
lon       =fspan(90,150,81)

lon!0     = "lon"
lon@units = "degrees_east"
lat!0     = "lat"
lat@units = "degrees_north"
lev!0     = "lev"
lev@units = "hPa"

qu1!0     = "time"
qu1!1     = "lev"
qu1!2     = "lat"
qu1!3    = "lon"
qu1&lon   = u&longitude
qu1&lat   = u&latitude
qu1&lev   = u&level
qu1&time  = u&time

qv1!0     = "time"
qv1!1     = "lev"
qv1!2     = "lat"
qv1!3    = "lon"
qv1&lon   = v&longitude
qv1&lat   = v&latitude
qv1&lev   = v&level
qv1&time  = v&time
;**************************************************************************************
qu11      = qu1(time|:,lat|:, lon|:, lev|:)
delete(qu1)
qv11      = qv1(time|:,lat|:, lon|:, lev|:)
delete(qv1)
;**************************************************************************************
p = (/1000,975,950,925,900,875,850,825,800,775,750,700,650,600,550,500,450,400,350,300,250,225,200,175,150,125,100/)
linlog = 1                                                 ; 1为线性积分 2为对数积分
data11 = (vibeta(p,qu11,linlog,ps1,1000,100))/9.8*100           
data12 = (vibeta(p,qv11,linlog,ps1,1000,100))/9.8*100

qu     = new((/41,81/),float)
qv     = new((/41,81/),float)
mm     = new((/41,81/),float)
mm1    = sqrt(data11^2+data12^2)
;qu!0 = "lev"
qu!0 = "lat"
qu!1 = "lon"
;qu&lev =u&level
qu&lon =u&longitude
qu&lat =u&latitude
;qv!0 = "lev"
qv!0 = "lat"
qv!1 = "lon"
;qv&lev =v&level
qv&lat =v&latitude
qv&lon =v&longitude

data11!0 = "time"
data11!1 = "lat"
data11!2 ="lon"
data11&lon =u&longitude
data11&lat =u&latitude
data11&time =u&time

data12!0 = "time"
data12!1 = "lat"
data12!2 ="lon"
data12&lon =v&longitude
data12&lat =v&latitude
data12&time =v&time

;************************************************************************************************
wks =gsn_open_wks("ps","vf")
gsn_define_colormap(wks,"BlAqGrYeOrReVi200")

map_res = True
map_res@gsnFrame = False
map_res@gsnDraw  = False
map_res@mpDataSetName= "Earth..4"          ; This new database contains
                                           ; divisions for other countries.
map_res@mpDataBaseVersion = "MediumRes"    ; Medium resolution database
map_res@mpFillOn=False
map_res@mpGridMaskMode = "MaskLand"        ; Don't draw grid over land.
map_res@mpGeophysicalLineColor = "black"
map_res@mpGeophysicalLineThicknessF = 1.0
map_res@mpOutlineOn = True                 ; Turn on map outlines

map_res@mpLimitMode="LatLon"
map_res@mpCenterLonF=100
map_res@mpMinLonF=90
map_res@mpMaxLonF=150
map_res@mpMinLatF=0
map_res@mpMaxLatF=32.5
map_res@mpPerimOn=True

map = gsn_csm_map(wks,map_res)
;***************************************************************************
;***************************************************************************
vcres = True; plot mods desired
vcres@gsnAddCyclic = False
vcres@gsnDraw  = False                       ; don't draw yet
vcres@gsnFrame = False                       ; don't advance frame yet

vcres@pmTickMarkDisplayMode = "Always"
vcres@vcMinFracLengthF = 0.33               
vcres@vcRefMagnitudeF = 10              
vcres@vcGlyphStyle = "CurlyVector"           ; turn on curly vectors
vcres@vcMonoLineArrowColor = False
vcres@vcMinDistanceF = 0.013
vcres@vcLineArrowHeadMaxSizeF = 0.008        ;default = 0.012

vcres@lbLabelBarOn = False



vcres@vcMonoFillArrowFillColor = True
vcres@vcLineArrowThicknessF = 1.0
vcres@vcRefAnnoOn =False

vcres@gsnLeftString =""
vcres@gsnRightString =""
vcres@tiMainString =""
qu = qu*100
qv = qv*100
vector = gsn_csm_vector(wks,qu,qv,vcres)      ; create plot
;***************************************************************************
;***************************************************************************
res = True                            ; plot mods desired
res@gsnAddCyclic = False
res@gsnDraw  = False                  ; don't draw yet
res@gsnFrame = False                  ; don't advance frame yet

res@cnFillOn = True                   ; turn on color
res@gsnSpreadColors = True            ; use full colormap
res@gsnSpreadColorStart = 0
res@gsnSpreadColorEnd   = 199
res@cnLinesOn = True                 ; turn off contour lines                     lllllllllllllllllllllllllllllllllllllllll
res@cnLineLabelsOn = False            ; tuen off line labels
res@cnInfoLabelOn = False

res@cnLevelSelectionMode = "ExplicitLevels"
res@cnLevels = (/100,200,300,400,500,600,700,800,900/)  ;(/14,18,22,26,30,34,38,42,46,50,52/)

res@gsnLeftString =""
res@gsnRightString =""
res@tiMainString =""

res@lbLabelBarOn = True

res@lbOrientation = "Vertical"                ; vertical label bars
res@lbAutoManage = True
res@lbLabelFontHeightF = 0.009                ; make labels smaller

mm = smth9(mm,0.5,0.25,False)
mm = mm*100
contour = gsn_csm_contour(wks,mm,res)
overlay(map,contour)
overlay(map,vector)

draw(map)
frame(wks)
end
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-10-19 14:56:38 | 显示全部楼层
脚本在楼上
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-10-21 08:23:11 | 显示全部楼层
好复杂啊{:5_201:}{:5_201:}
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2015-10-21 10:08:48 | 显示全部楼层
赞!!!!!!!!!!!!!
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

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

本版积分规则

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

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

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