SAS Graphics on ODS v9.2 Performance Enhancing Steroids Daniel O’Connor Systems Developer, SAS Institute Inc. Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Professional Athletes Accused of Abuse Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Styles Colors Fonts Overall appearance Theme Symbols Line Patterns Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. SAS 9.2 Graphs honor Styles SAS 9.1 Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. SAS 9.2 SAS 9.2 Graphs honor Styles title "Perceived Harmfulness of Steroids"; footnote "Source: 2005 Monitoring the Future Survey."; goptions device=png hsize=3in vsize=3in border; proc gchart; axis1 label=none; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1; ;run;quit; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. GSTYLE Option Options <GSTYLE | NOGSTYLE> <GSTYLE = < ON | OFF>>; Default: GSTYLE Graphs will automatically honor the active ODS Style for each output destination. Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Default Styles Output Destination Listing HTML RTF Measured RTF PDF Postscript PCL Printer Default Style Listing (Graphics ONLY) Default RTf RTF Printer Printer MonochromePrinter Printer Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Changing the Default Styles Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. How do ODS Styles effect my output? Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Overriding the Default Style title "Perceived Harmfulness of Steroids"; footnote "Source: 2005 Monitoring the Future Survey."; goptions device=png hsize=3in vsize=3in border; ods listing style=< MonochromePrinter or Default > ; proc gchart; axis1 label=none; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1; ;run;quit; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Creating your own style Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Creating your own style proc template; define style Styles.SGFImage; parent=Styles.science; style GraphBackground "Graph background attributes" / backgroundimage = "pillsLighten4.jpg"; end; run; ods listing style=SGFImage; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Customizing your own style Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Gradient Colors style GraphBackground "Graph background attributes" / startcolor = cx4a495a endcolor = cx000000 gradient_direction = "YAxis"; style GraphData1 “Graph Data attributes” / startcolor=GraphColors("gcdata1") endcolor=cxd6deef gradient_direction="yaxis"; [ snip….] style GraphData8 “Graph Data attributes” / startcolor=GraphColors("gcdata8") endcolor=cxf7dee7 gradient_direction="yaxis"; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Free Type Font Engine SAS TrueType Font Albany AMT Thorndale AMT Cumberland AMT Symbol MT Monotype Sorts Type Face sans-serif serif fixed serif Symbol Symbol Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Metric Compatibility Arial Times New Roman Courier New Symbol Wingding Graphic Devices DPI Default Sizes Orientation Catalog Grseg Image Type Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Default Graphic Devices Output Destination Listing Default Device Host Specific Display Device ( PC - WIN; UNIX - XCOLOR; MVS - Display Device) HTML RTF Measured RTF PNG SASEMF PNG SASPRTC (Color Output) * PDF Postscript PCL Printer SASPRTC (Color Output) * SASPRTM (Monochrome Host Specific Default Printer * * Does not support changing the Default Device in the SAS Registry. Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Changing Graphic Devices Options device=png Goption device=png Ods <destination> device=png Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Valid Image Formats Output Destination Default Device Listing PNG, GIF, BMP, JPEG, PBM, PS, PDF, TIFF, EMF, EPS, DIB, PCL, PICT, WMF, XBM, XPM, SVG HTML PNG, GIF, JPEG, SVG RTF PNG, EMF, JPEG Measured RTF PNG, EMF, JPEG PDF PNG, PS, PDF, PCL, JPEG, GIF Postscript PNG, PS, PDF, PCL, JPEG, GIF PCL PNG, PS, PDF, PCL, JPEG, GIF Printer PNG, PS, PDF, PCL, JPEG, GIF Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Scalable Vector Graphics Device Driver Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Scalable Vector Graphics Device Driver goptions device=svg; title "Perceived Harmfulness of Steroids"; footnote "Source: 2005 Monitoring the Future Survey."; ods html file="Example5.html"; proc gchart; axis1 label=none; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1; run;quit; ods html close; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Destination Interactions Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Destination Interactions ods html file=”SketchOutput.html” style=Sketch; ods pdf ” file=”BankerOutput.pdf” style=Banker; goptions hsize=3.25in vsize=3in border; proc gchart data=sashelp.class; vbar age; run; quit; ods pdf close; ods html close; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Graphic Catalog Entries Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Altering the position and size of the graph Hsize Vsize Horigin Vorigin Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with Multiple Columns Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with Multiple Columns ods pdf file="Example7.pdf" columns=2; title "Perceived Harmfulness of Steroids"; footnote "Source: 2005 Monitoring the Future Survey."; axis1 label=none; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; ods pdf close; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with Multiple Rows Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with Multiple Rows ods pdf file="Example8.pdf" Startpage=no; goptions vsize=5in; title "Perceived Harmfulness of Steroids"; footnote "Source: 2005 Monitoring the Future Survey."; axis1 label=none; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; ods pdf close; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with Multiple Rows & Columns Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output on a page ods pdf file="Example8.pdf" startpage=no columns=2; goptions vsize=5in border; axis1 label=none; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; proc gchart; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; ods pdf close; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Customizing Date/Timestamp and Page Number Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Customizing Date/Timestamp and Page Number proc template; define style Styles.Pageno; parent=Styles.Printer; class BodyDate / vjust=Bottom just=Right; class Pageno / vjust=Bottom just=Center; end; run; ods pdf file="Example8.pdf" startpage=no style=Pageno; [ same as previous graph code] ods pdf close; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing your Output Width ODS LAYOUT Gridded Absolute Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with ODS Gridded Layout Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Managing Output with ODS Gridded Layout ods layout start columns=2; ods region width=4in; proc gchart; axis1 label=none; vbar year / width=12 outside=sum sumvar=response discrete maxis=axis1 raxis=axis1;run;quit; ods region; proc print;run; ods layout end; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Gridded Layout Syntax: ODS LAYOUT START < Rows = < n > Columns = < n > Width = < dimension > Height = < dimension > Row_span = < n > Column_span = < n > > ; ODS REGION < Width = < dimension > Height = < dimension > Row_span = < n > Column_span = < n > > ; ODS LAYOUT END; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Absolute Layout Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Absolute Layout ods layout start width=7in height=10in; ods region height=3in width=3in x=0in y=.5in; proc print data=sashelp.class(obs=5);run; ods region height=3in width=3in x=5in y=.5in; ods pdf text='~{style [font_size=28pt]To the left is a PROC …}'; ods region height=3in width=3in x=0in y=3.5in; ods pdf text='~{style [font_size=28pt]To the right is a PROC …}'; ods region height=3in width=3in x=5in y=3.5in; proc sgplot data=sashelp.class; scatter x=height y=weight /group=age;run; ods region height=3in width=3in x=0in y=8in; proc gchart data=sashelp.class; vbar age; run;quit; ods region height=3in width=3in x=5in y=8in; ods pdf text='~{style [font_size=28pt]To the left is a PROC ...}'; ods layout end; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Absolute Layout Syntax: ODS LAYOUT START < X = < dimension> Y = < dimension> Width = < dimension > Height = < dimension > > ; ODS REGION < X = < dimension> Y = < dimension> Width = < dimension > Height = < dimension > > ; ODS LAYOUT END; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. ODS Graphics Automatic Graphic Creation Graph Template Language New SAS/GRAPH Procedures ODS Graphics Editor Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Automatic Graphic Creation ods graphics on; /* bread and butter timeseries analysis graphics; */ proc timeseries data=sashelp.workers out=_NULL_ plot = all print=all; id date interval=month; var electric masonry; run; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Automatic Graphic Creation Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Automatic Graphic Creation Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Graph Template Language (GTL) Proc Template Sophisticated Analytical Graphs Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Automatic Graphic Creation ods graphics on; ods trace on; /* bread and butter timeseries analysis graphics; */ proc timeseries data=sashelp.workers out=_NULL_ plot = histogram print=all; id date interval=month; var electric masonry; run; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Automatic Graphic Creation Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Automatic Graphic Creation BeginGraph; EntryTitle TITLE; Layout Overlay / XAxisOpts=(label="Series" linearopts=( tickvalueformat=BEST12.)) yaxisopts=(label="Percent"); Histogram SERIES; DensityPlot SERIES / LegendLabel="Normal" name="Normal"; DensityPlot SERIES / Kernel () LegendLabel="Kernel" name="Kernel“ lineattrs=GRAPHFIT2; DiscreteLegend "Normal" "Kernel" / across=1 location=inside autoalign=(topright topleft top); EndLayout; EndGraph; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. SAS/GRAPH Procedures SGPLOT SGSCATTER SGPANEL SGRENDER Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Heat Map (SGPLOT) Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Heat Map proc sgplot data=heatmap; scatter x=make y=type / group=group markerattrs=(size=.28in symbol=squarefilled); run; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Paneled Plots (SGPanel) Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Paneled Plots (SGPanel) proc sgpanel data=cancer; panelby race sex / columns=5 layout=lattice novarname uniscale=column; hbar cause / response=incidence; colaxis grid label='Incidence per 100,000 People'; rowaxis grid label=' '; run; Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Stacked Band Plots (SGPLOT) Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Butterfly Plots (SGPLOT) Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Paneled Butterfly Plots (SGPANEL) Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. More Paneled Plots Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration.