;********************************** ; taylor_11.ncl ; ; Half-circle version the Taylor Diagram ; Source: Rashed Mahmood (UVIC): Feb 2018 ;********************************** ; The following function has to be explicitly loaded load "./taylor_diagram_cam_uvic.ncl" ; corrected version [Feb 1, 2018] ;********************************** ;---Brief example TDdir = "./" ; Taylor Diagram plot directory TDname = "taylor_11" ; plot name TDpath = TDdir + TDname TDtype = "png" CASES = (/"ANN","DJF","JJA","SON","MAM"/) nCase = dimsizes(CASES) VAR_TEST = (/"V1","V2","V3","V4","V5"/) nVar = dimsizes( VAR_TEST ) TEST_COLORS = (/"red","orange","magenta","yellowgreen","royalblue1"/) ratio = new((/nCase,nVar/),float) cc = ratio ; same size and shape bias = ratio ; ---Dummy data for example: ; Assume the following have already been computed: ; ratio: Case_Variance/Reference_Variance ; cc : Cross correlation coef of Case to Reference ; bias : Bias estimates ddt = fspan(0.4,0.9,5) ratio(0,:) = ddt ratio(1,:) = ddt*0.8 ratio(2,:) = ddt*0.6 ratio(3,:) = ddt*0.2 ratio(4,:) = ddt*0.5 ccd = fspan(-0.8,0.8,5) cc(0,:) = ccd cc(1,:) = ccd+0.1 cc(2,:) = ccd+0.1/2. cc(3,:) = ccd+0.1/3. cc(4,:) = ccd+0.14 bsd = fspan(-22,22,5) bias(0,:) = bsd bias(1,:) = bsd+3 bias(2,:) = bsd-0.1/2. bias(3,:) = bsd+0.1/3. bias(4,:) = bsd-14. ;---PLOT wks = gsn_open_wks(TDtype,TDpath) plot = new(nCase,graphic) ;---Options used with taylor_diagram_cam_uvic opt = True opt@tdBiasMarkerScale = (/0.60,0.85,1.10,1.35,1.60/)-0.10 ; NEW select bias marker sizes opt@tdBiasLabels = (/"<5%","5-10%","10-15%","15-20%",">20%"/) ;NEW opt@tdBiasLevels = (/5.,10.,15.,20./) ; NEW opt@tdLegendOn = False ; NEW: Case legend opt@tdBiasLabelOn = True ; NEW opt@varLabelsOn = True opt@varLabelsXloc = 0.55 opt@varLabelsYloc = 0.87 ; Move location of variable labels [default 0.45] opt@varLabelsFontHeightF = 0.013 ; changed to ndc ; id rmm opt@ccRays = (/ -0.9,-0.6,-0.3,0.3,0.6,0.9 /) ; correlation rays ;;opt@stnRad = (/ 0.5, 1.5 /) ; additional standard radii opt@caseLabelsXYloc = (/0.7,0.8/) ; Case label location,x,y [default=(/0.7,0.8/)] opt@caseLabelsFontHeightF = 0.14 ; make slight larger [default=0.12 ] opt@centerDiffRMS = True ; RMS 'circles' opt@markerTxYOffset = 0.05 ; offset btwn marker & label ;opt@gsMarkerSizeF = 0.01 ; marker size opt@txFontHeightF = 0.015 ; text size opt@ccRays_color = "LightGray" ; default is "black" opt@centerDiffRMS_color = "LightGray" ; default is "black" opt@Colors = TEST_COLORS opt@varLabels = VAR_TEST pp = 0.4 ; initial bias labels location op = -0.45 opt@tdBiasLabelPP = pp ; NEW ...-0.45 opt@tdBiasLabelOP = op ; NEW ...-0.28 opt@taylorDraw = False opt@taylorFrame = False do m=0,nCase-1 ; plot each season separately if(m.gt.0) opt@tdBiasLabelOn = False opt@varLabelsOn = False end if ; opt@caseLabels = CASES(m) opt@tiMainString = CASES(m) plot(m) = taylor_diagram_cam_uvic(wks,ratio(m:m,:),cc(m:m,:),bias(m:m,:),opt) end do ;................................ panel ............................. resP = True resP@gsnPanelCenter = False ; =True .... must move labels resP@gsnPanelRowSpec = True ; tell panel what order to plot gsn_panel(wks,plot,(/1,2,2/),resP)