data weather; input Month $ high low; format high low mean 2.0; id=_n_; if mod(id, 2)=0 then ref=month; x1='High'; x2='Low'; x3='Mean'; mean=(high+low)/2; datalines; Jan 49 30 Feb 53 32 Mar 61 40 Apr 71 48 May 78 57 Jun 84 65 Jul 88 69 Aug 86 68 Sep 80 62 Oct 70 49 Nov 61 42 Dec 52 33 ; run; proc sort data=weather out=weather2; by descending id; run; proc template; define style Styles.HtmlblueSF; parent = styles.Htmlblue; style GraphFonts from GraphFonts / 'GraphDataFont' = (", ",8pt) 'GraphValueFont' = (", ",8pt); end; run; /*--Graph with Stat Table--*/ ods listing style=htmlblue image_dpi=200; ods graphics / reset width=4in height=2.5in imagename='Stat_Table_Graph_Bands'; ods escapechar='~'; title "Mean Temperature (~{unicode '00b0'x}F) and Range for MyTown"; proc sgplot data=weather2 noautolegend; refline 90 / axis=x; refline ref / lineattrs=(thickness=18) transparency=0.9; band y=month lower=low upper=high / transparency=0.6; scatter y=month x=mean / markerattrs=(symbol=circlefilled) transparency=0 xerrorlower=low xerrorupper=high; scatter y=month x=x3 / markerchar=mean x2axis; scatter y=month x=x2 / markerchar=low x2axis; scatter y=month x=x1 / markerchar=high x2axis; xaxis display=(nolabel) grid offsetmin=0.1 offsetmax=0.3; x2axis display=(noticks nolabel) offsetmin=0.75 offsetmax=0.08; yaxis display=(nolabel noticks) offsetmin=0.05 offsetmax=0.05; run;