Re: Change the order of the array to suit legend

From: Adam Phillips <asphilli_at_nyahnyahspammersnyahnyah>
Date: Thu Apr 03 2014 - 09:11:07 MDT

Hi Melissa,
Try setting the lgItemOrder resource. See example #9 here:
https://www.ncl.ucar.edu/Applications/legend.shtml#ex9
https://www.ncl.ucar.edu/Document/Graphics/Resources/lg.shtml#lgItemOrder
]If that doesn't work let ncl-talk know..
Adam

On 4/3/14, 9:04 AM, Melissa Lazenby wrote:
> 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

_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Thu Apr 3 09:11:18 2014

This archive was generated by hypermail 2.1.8 : Thu Apr 03 2014 - 13:36:27 MDT