- 积分
- 20
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2017-7-6
- 最后登录
- 1970-1-1
|
发表于 2017-12-23 22:42:43
|
显示全部楼层
哦哦~我试了下,我不是很明白map该怎么设置。
我把我在网上找的代码贴出来,您能帮我看看该怎么改吗?
; Example script to produce plots for a WRF real-data run,
; with the ARW coordinate dynamics option.
; In this example we first get the entire field over time, which will
; make it easier to calculate tendencies
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
begin
;
; The WRF ARW input file.
; This needs to have a ".nc" appended, so just do it.
a = addfile("/home/WRFV3/test/em_real/wrfout_d02_2005-06-20_00:00:00.nc","r")
; We generate plots, but what kind do we prefer?
type = "png"
; type = "pdf"
; type = "ps"
; type = "ncgm"
wks = gsn_open_wks(type,"plt_Precip2")
; Set some basic resources
res = True
res@MainTitle = "REAL-TIME WRF"
pltres = True
mpres = True
mpres@mpGeophysicalLineColor = "Black"
mpres@mpNationalLineColor = "Black"
mpres@mpUSStateLineColor = "Black"
mpres@mpGridLineColor = "Black"
mpres@mpLimbLineColor = "Black"
mpres@mpPerimLineColor = "Black"
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; First get the variables we will need
slp = wrf_user_getvar(a,"slp",-1) ; slp
wrf_smooth_2d( slp, 3 ) ; smooth slp
; Get non-convective, convective
; Calculate total precipitation
rain_exp = wrf_user_getvar(a,"RAINNC",-1)
rain_con = wrf_user_getvar(a,"RAINC",-1)
rain_tot = rain_exp + rain_con
rain_tot@description = "Total Precipitation"
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; What times and how many time steps are in the data set?
times = wrf_user_getvar(a,"times",-1) ; get all times in the file
ntimes = dimsizes(times) ; number of times in the file
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
do it = 2,ntimes-1,2 ; TIME LOOP - start at hour 6 as we are only interested in 6hourly tendencies
print("Working on time: " + times(it) )
res@TimeLabel = times(it) ; Set Valid time to use on plots
rain_exp_tend = rain_exp(it,:,:) - rain_exp(it-2,:,:)
rain_con_tend = rain_con(it,:,:) - rain_con(it-2,:,:)
rain_tot_tend = rain_tot(it,:,:) - rain_tot(it-2,:,:)
rain_exp_tend@description = "Explicit Precipitation Tendency"
rain_con_tend@description = "Param Precipitation Tendency"
rain_tot_tend@description = "Precipitation Tendency"
; Plotting options for Sea Level Pressure
opts_psl = res
opts_psl@ContourParameters = (/ 900., 1100., 2. /)
opts_psl@cnLineColor = "Blue"
opts_psl@cnInfoLabelOn = False
opts_psl@cnLineLabelFontHeightF = 0.01
opts_psl@cnLineLabelPerimOn = False
opts_psl@gsnContourLineThicknessesScale = 1.5
contour_psl = wrf_contour(a,wks,slp(it,:,:),opts_psl)
delete(opts_psl)
; Plotting options for Precipitation
opts_r = res
opts_r@UnitLabel = "mm"
opts_r@cnLevelSelectionMode = "ExplicitLevels"
opts_r@cnLevels = (/ 0, 50, 100, 150, 200, 250, 300, \
350, 400, 450, 500, 550, 600, 650, 700/)
opts_r@cnFillColors = (/"White","DarkOliveGreen1", \
"DarkOliveGreen3","Chartreuse", \
"Chartreuse3","DarkGreen", \
"Yellow","Orange","Orangered","Red", \
"Red4","SlateBlue1","SlateBlue3", \
"RoyalBlue3","RoyalBlue4", \
"Blue2","Blue4" /)
opts_r@cnInfoLabelOn = False
opts_r@cnConstFLabelOn = False
opts_r@cnFillOn = True
; Total Precipitation (color fill)
contour_tot = wrf_contour(a,wks, rain_tot(it,:,:), opts_r)
; Precipitation Tendencies
opts_r@SubFieldTitle = "from " + times(it-2) + " to " + times(it)
contour_tend = wrf_contour(a,wks, rain_tot_tend,opts_r) ; total (color)
contour_res = wrf_contour(a,wks,rain_exp_tend,opts_r) ; exp (color)
opts_r@cnFillOn = False
opts_r@cnLineColor = "Red4"
contour_prm = wrf_contour(a,wks,rain_con_tend,opts_r) ; con (red lines)
delete(opts_r)
;--- add shp file boundaries to test whether the border overlap---
ShpDir = "/home/shapefile/changjiang/" ;"$NCARG_ROOT/lib/ncarg/nclscripts/cnmap/"
cnres = True
cnres@gsLineThicknessF = 2
cnres@gsLineColor = "black"
; MAKE PLOTS
; Total Precipitation
plot = wrf_map_overlays(a,wks,contour_tot,pltres,mpres)
; Total Precipitation Tendency + SLP
plot = wrf_map_overlays(a,wks,(/contour_tend,contour_psl/),pltres,mpres)
; Non-Convective and Convective Precipiation Tendencies
plot = wrf_map_overlays(a,wks,(/contour_res,contour_prm/),pltres,mpres)
plotshp = gsn_add_shapefile_polylines(wks,map,ShpDir+"basinchangjiang.shp",cnres)
end do ; END OF TIME LOOP
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
end |
|