Hi All
I have created a zonal plot of precip against latitude and my legend came out top to bottom, but I cant just switch the labels around I need to switch the data array accordingly.
Please can someone help me on how to reverse or invert the array so that I can have my model list in alphabetical order next to my graph.
Many thanks!
Kind Regards
Melissa
Code:
;************************************************
; zonal_1.ncl
;
; Concepts illustrated:
; - Drawing a zonal means plot
;************************************************
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
;************************************************
begin
;************************************************
; variable and file handling
;************************************************
in = addfile("/mnt/geog/ml382/melphd/zonal/cmap_pr_safrica_1979-1999_climDJF.nc","r")
pr = in->precip(:,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_ACCESS1-0_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr1 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_ACCESS1-3_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr2 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_bcc-csm1-1_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr3 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_bcc-csm1-1-m_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr4 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_BNU-ESM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr5 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CanESM2_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr6 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CCSM4_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr7 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CESM1-BGC_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr8 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CESM1-CAM5_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr9 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CESM1-FASTCHEM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr10 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CESM1-WACCM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr11 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CMCC-CESM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr12 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CMCC-CM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr13 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CMCC-CMS_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr14 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CNRM-CM5_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr15 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_CSIRO-Mk3-6-0_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr16 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_EC-EARTH_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr17 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_FGOALS-g2_historical_safrica_1979-1999_climDJF_seasmean2.nc","r")
pr18 = in->pr(:,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_FGOALS-s2_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr19 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_FIO-ESM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr20 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GFDL-CM3_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr21 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GFDL-ESM2G_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr22 = in->pr(:,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GFDL-ESM2M_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr23 = in->pr(:,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GISS-E2-H_p1_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr24 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GISS-E2-H-CC_p1_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr25 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GISS-E2-R_p1_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr26 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_GISS-E2-R-CC_p1_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr27 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_HadGEM2-AO_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr28 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_HadGEM2-CC_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr29 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_HadGEM2-ES_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr30 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_inmcm4_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr31 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_IPSL-CM5A-LR_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr32 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_IPSL-CM5A-MR_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr33 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_IPSL-CM5B-LR_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr34 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MIROC4h_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr35 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MIROC5_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr36 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MIROC-ESM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr37 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MIROC-ESM-CHEM_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr38 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MPI-ESM-LR_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr39 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MPI-ESM-MR_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr40 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MPI-ESM-P_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr41 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_MRI-CGCM3_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr42 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_NorESM1-M_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr43 = in->pr(:,0,:,:)
in = addfile("/mnt/geog/ml382/melphd/zonal/pr_Amon_NorESM1-ME_historical_safrica_1979-1999_climDJF_seasmean.nc","r")
pr44 = in->pr(:,0,:,:)
lat =in->lat
time =in->time
;************************************************
; data processing
;************************************************
zave = dim_avg(pr)
zave1 = dim_avg(pr1) ; calculate zonal ave
zave2 = dim_avg(pr2)
zave3 = dim_avg(pr3)
zave4 = dim_avg(pr4)
zave5 = dim_avg(pr5)
zave6 = dim_avg(pr6)
zave7 = dim_avg(pr7)
zave8 = dim_avg(pr8)
zave9 = dim_avg(pr9)
zave10 = dim_avg(pr10)
zave11 = dim_avg(pr11)
zave12 = dim_avg(pr12)
zave13 = dim_avg(pr13)
zave14 = dim_avg(pr14)
zave15 = dim_avg(pr15)
zave16 = dim_avg(pr16)
zave17 = dim_avg(pr17)
zave18 = dim_avg(pr18)
zave19 = dim_avg(pr19)
zave20 = dim_avg(pr20)
zave21 = dim_avg(pr21)
zave22 = dim_avg(pr22)
zave23 = dim_avg(pr23)
zave24 = dim_avg(pr24)
zave25 = dim_avg(pr25)
zave26 = dim_avg(pr26)
zave27 = dim_avg(pr27)
zave28 = dim_avg(pr28)
zave29 = dim_avg(pr29)
zave30 = dim_avg(pr30)
zave31 = dim_avg(pr31)
zave32 = dim_avg(pr32)
zave33 = dim_avg(pr33)
zave34 = dim_avg(pr34)
zave35 = dim_avg(pr35)
zave36 = dim_avg(pr36)
zave37 = dim_avg(pr37)
zave38 = dim_avg(pr38)
zave39 = dim_avg(pr39)
zave40 = dim_avg(pr40)
zave41 = dim_avg(pr41)
zave42 = dim_avg(pr42)
zave43 = dim_avg(pr43)
zave44 = dim_avg(pr44)
print(zave)
data = new((/45,dimsizes(time),dimsizes(lat)/), "float")
data(0,:,:) = zave(:,:)
data(1,:,:) = zave1(:,:)
data(2,:,:) = zave2(:,:)
data(3,:,:) = zave3(:,:)
data(4,:,:) = zave4(:,:)
data(5,:,:) = zave5(:,:)
data(6,:,:) = zave6(:,:)
data(7,:,:) = zave7(:,:)
data(8,:,:) = zave8(:,:)
data(9,:,:) = zave9(:,:)
data(10,:,:) = zave10(:,:)
data(11,:,:) = zave11(:,:)
data(12,:,:) = zave12(:,:)
data(13,:,:) = zave13(:,:)
data(14,:,:) = zave14(:,:)
data(15,:,:) = zave15(:,:)
data(16,:,:) = zave16(:,:)
data(17,:,:) = zave17(:,:)
data(18,:,:) = zave18(:,:)
data(19,:,:) = zave19(:,:)
data(20,:,:) = zave20(:,:)
data(21,:,:) = zave21(:,:)
data(22,:,:) = zave22(:,:)
data(23,:,:) = zave23(:,:)
data(24,:,:) = zave24(:,:)
data(25,:,:) = zave25(:,:)
data(26,:,:) = zave26(:,:)
data(27,:,:) = zave27(:,:)
data(28,:,:) = zave28(:,:)
data(29,:,:) = zave29(:,:)
data(30,:,:) = zave30(:,:)
data(31,:,:) = zave31(:,:)
data(32,:,:) = zave32(:,:)
data(33,:,:) = zave33(:,:)
data(34,:,:) = zave34(:,:)
data(35,:,:) = zave35(:,:)
data(36,:,:) = zave36(:,:)
data(37,:,:) = zave37(:,:)
data(38,:,:) = zave38(:,:)
data(39,:,:) = zave39(:,:)
data(40,:,:) = zave40(:,:)
data(41,:,:) = zave41(:,:)
data(42,:,:) = zave42(:,:)
data(43,:,:) = zave43(:,:)
data(44,:,:) = zave44(:,:)
printVarSummary(data)
;data_reverse = data(-1::)
;printVarSummary(data_reverse)
;printVarSummary(zave)
zave!0 = "lat"
zave!1 = "time"
;zave&lat = lat
;zave&time= time
data!0 = "member"
data!1 = "time"
data!2 = "lat"
data&time = in->time
data&lat = in->lat
;************************************************
; plotting
;************************************************
wks = gsn_open_wks("X11","zonalnew1") ; Opens a ps file
res = True
res@tiXAxisString = "Precipitation (mm/month)" ; x-axis label
res@tiYAxisString = "Latitude" ; y-axis label
;res@xyFillOn = True ; color on
;res@xyLineLabelsOn = True ; no contour line labels
res@trXMinF = 0 ; min level
res@trXMaxF = 500 ; max level
;res@trXSpacingF = 50 ; contour spacing
res@xyLineThicknessF = 1.3
res@gsnDraw = False ; do not draw the plot
res@gsnFrame = False
res@pmLegendDisplayMode = "Always" ; Display a legend.
res@pmLegendParallelPosF = 1.19 ; move units right
res@pmLegendOrthogonalPosF = -1.3 ; move units down
res@lgBoxMinorExtentF = 0.05
res@pmLegendWidthF = 0.14
res@lgLabelFontHeightF = 0.010
res@pmLegendHeightF = 0.8
res@lgLabelFontHeightF = 0.012 ; Change the font size
res@xyLineColors = (/"black","blue","red","green","yellow","blueviolet", "aquamarine","cadetblue1","brown","azure4","chartreuse","coral","darkgreen","cornflowerblue","darkorange","magenta","maroon4","navy","moccasin","lightcoral","lightpink","limegreen","lightslateblue","lightseagreen","lightgoldenrod2","firebrick","darkviolet","dodgerblue4","deeppink","darkturquoise","darkorchid4","firebrick1","wheat1","thistle","tomato","yellowgreen","violet","slateblue","hotpink","snow4","sienna","slategray3","lawngreen","lightblue1","indianred4"/)
; an array of color index
res@xyExplicitLegendLabels = (/"CMAP(OBS)","ACCESS1-0","ACCESS1-3","bcc-csm1-1","bcc-csm1-1-m","BNU-ESM","CanESM2","CCSM4","CESM1-BGC","CESM1-CAM5","CESM1-FASTCHEM","CESM1-WACCM","CMCC-CESM","CMCC-CM","CMCC-CMS","CNRM-CM5","CSIRO-Mk3-6-0","EC-EARTH","FGOALS-g2","FGOALS-s2","FIO-ESM","GFDL-CM3","GFDL-ESM2G","GFDL-ESM2M","GISS-E2-H_p1","GISS-E2-H-CC_p1","GISS-E2-R_p1","GISS-E2-R-CC_p1","HadGEM2-AO","HadGEM2-CC","HadGEM2-ES","inmcm4","IPSL-CM5A-LR","IPSL-CM5A-MR","IPSL-CM5B-LR","MIROC4h","MIROC5","MIROC-ESM","MIROC-ESM-CHEM","MPI-ESM-LR","MPI-ESM-MR","MPI-ESM-P","MRI-CGCM3","NorESM1-M","NorESM1-ME"/)
plot=gsn_csm_xy(wks,data(:,0,:),data&lat,res) ; plot zonal ave
draw(plot)
frame(wks)
;***********************************************
end
_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Thu Apr 3 09:06:18 2014
This archive was generated by hypermail 2.1.8 : Thu Apr 03 2014 - 13:36:27 MDT