Most Popular Links
SAS Paper Tips, HOW |
|
Proc SGPLOT Example book, Two |
|
(By SAS Procedure - Proc GPLOT, etc.) |
(By Visual Examples) |
Galleries: SAS 9.2, SAS 9.3, and SAS 9.4 SAS 9.2 and 9.3 Graph Course Notes |
ODS Statistical Graphics Gallery Bar Chart Gallery Health and Life Sciences Gallery |
Training Videos: |
Below is a collection of SAS® ODS Statistical Graphs papers and Annotate papers. Often graphs are saved as PDF files. See also ODS, Statistical Analysis and Survival Analysis. See SAS/Graph e-book.
Get a jump start on creating custom graphs using SAS code from the galleries. Best to copy sample SAS code and then replace with your dataset and variable names. Note that you may first need to change the dataset structure to summary level from detail level. See SAS reference on drivers. See the SAS GRAPHS, the Final Frontier training session. See Advanced ODS Graphics: Steps to think about when creating a graph blog.
SAS/STAT 14.1 User’s Guide Statistical Graphics Using ODS, Ex1, Ex2, Ex3, Ex4
Steps for applying SAS Graphs |
---|
1) Search (Menu, Visual, SAS procedure) for SAS examples before trying to reinvent the wheel |
2) Plan for simple solutions (options, SAS versions, procedures) instead of complex solutions |
3) Minimize customization as much as possible, explore and use PROC SGPLOT for example |
4) Don't be afraid to contact the SAS Graph experts for help |
5) Take advantage of SAS code/macros such as the forest plots |
6) Use the power of mindmaps (organize, guide, resource) |
7) Be aware of GOPTIONS (GUNIT, ROTATE, GSFNAME, DEVICE, HSIZE, VSIZE) or ODS GRAPHICS, SAS versions (9.2, 9.3) and output options (JPEG, PNG, RTF, PDF, etc.) |
Graph Task |
SAS 9.2 and before |
SAS 9.3 and after |
---|---|---|
General Plots | PROC GPLOT (before SAS 9.2) PROC SGPLOT PROC SGPANEL PROC SGSCATTER (SAS 9.2) |
SAS GTL with 9.3 (See Survival Plots for PROC SGPLOT enhancements) |
Forest Plot | ODS OUTPUT; PROC LOGISTIC; PROC SGPLOT |
|
Combine plots from Proc SGPLOT, Proc SGPANEL or Proc LIFETEST for example |
PROC GREPLAY (Example) | ODS LAYOUT (Tip Sheet) |
See Statistical Analysis for five methods to create survival analysis based on these factors: SAS 9.2 SAS 9.3 BASIC PROC LIFETEST PROC LIFETEST, PROC SGPLOT OPTIONS PROC LIFETEST PROC LIFETEST, PROC SGPLOT CUSTOMIZE PROC LIFETEST , PROC GPLOT PROC LIFETEST, PROC SGPLOT 1) SAS 9.2, BASIC: Standard direct method with PROC LIFETEST in SAS 9.2 2a) SAS 9.2, OPTIONS: Direct method with PROC LIFETEST to include At Risk Table within survival plot in SAS 9.2 2b) SAS 9.2, OPTIONS: Direct method with PROC LIFETEST to include At Risk Table and 95% CI band within survival plot in SAS 9.2 3) SAS 9.2, CUSTOMIZE: Indirect method with output dataset from PROC LIFETEST, annotate dataset for group summary or error bars, PROC GPLOT the output dataset and PROC GREPLAY to combine plots 4) SAS 9.3, BASIC WITH OPTIONS: Indirect method with output data set from PROC LIFETEST, PROC SGPLOT in SAS 9.3 5) SAS 9.3, CUSTOMIZE: Indirect method with output dataset from PROC LIFETEST, annotate dataset, PROC SGPLOT the output dataset, STEP, SCATTER |
PROC LIFETEST ATRISK LOGSURV ODS OUTPUT; PROC LIFETEST; ANNO dataset |
PROC SGPLOT; STEP SCATTER KEYLEGEND; |
Main Factors |
Options / Plot Examples (Line, Scatter, ) |
Overall Distribution |
Distribution of Cholesterol / Histogram of Causes of Cholesterol |
By Group / Clustered |
Cholesterol by Sex / Olympic Countries by Region and Population Group |
Overlay Plots / Scatter Plots |
Two Lab Tests, Overall Mean with Patient plots |
By Panels (Rows / Columns) |
Multiple Lab Tests |
Patient Profiles Savvy Presentation |
Review data by Patient to get big picture of baseline, efficacy and safety: a. Combine data from several domains (DM, LB, AE, etc.) b. Example such as Two Lab Tests by Patient or by Panel with median measurements c. Information used to make clinical decisions (color for severity, dates/days, AE/CM labels, macro variables, boundary symbols, bar sort order) d. Narratives only (readable clinical data as paragraphs) e. Graph annotations (separate dataset) |
Additional Stats / Ellipse |
Standard Errors, Min, Max, Median |
Bars / Bands / Histogram |
Vertical, Horizontal |
Scatter |
COMPARE, MATRIX, PLOT |
ODS Style |
Increase color to red based on severity |
SAS Example (What is the main focus?) |
PROC SGPLOT using 9.3 (See SAS Paper) |
1. Overall distribution of continuous variable |
title 'Distribution of Cholesterol'; proc sgplot data=sashelp.heart; histogram cholesterol; density cholesterol / type=normal; density cholesterol / type=kernel; keylegend / location=inside position=topright across=1; run; |
2. By Group distribution of continuous variable |
title 'Cholesterol by Sex'; proc sgpanel data=sashelp.heart; panelby sex / layout=columnlattice onepanel novarname; histogram cholesterol / fillattrs=graphdata3; run; |
3. Overall frequency of categorical variable |
title 'Deaths by Cause'; proc sgplot data=sashelp.heart; hbar deathcause / datalabel fillattrs=graphdata2; yaxis display=(nolabel); xaxis grid; run; |
4. Timeline Patient Profiles of adverse events as separate episodes |
title "Adverse Events for Patient Id = &pid (SAS 9.3)"; proc sgplot data=AE_Cap dattrmap=attrmap; format aestdate date7.; refline 0 / axis=x lineattrs=(color=black); highlow y=aeseq low=aestdy high=aeendy / type=bar group=aesev lineattrs=(color=black pattern=solid) barwidth=0.8 lowlabel=aedecod highcap=highcap attrid=Severity; scatter y=aeseq x=aestdate / x2axis markerattrs=(size=0); xaxis grid display=(nolabel) offsetmax=0.02 values=(&minday2 to &maxday by 2); x2axis display=(nolabel) offsetmax=0.02 values=(&mindate2 to &maxdate); yaxis grid display=(noticks novalues nolabel); run; |
5. Timeline Patient Profiles of adverse events as single episodes |
title "Adverse Events for Patient Id = &pid (SAS 9.3)"; proc sgplot data=ae_by_name dattrmap=attrmap; format aestdate date7.; refline 0 / axis=x lineattrs=(color=black); highlow y=aedecod low=aestdy high=aeendy / type=bar group=aesev lineattrs=(color=black pattern=solid) barwidth=0.8 lowlabel=aename highcap=aehicap attrid=Severity; scatter y=aedecod x=aestdate / x2axis markerattrs=(size=0); xaxis grid display=(nolabel) offsetmax=0.02 values=(&minday2 to &maxday by 2); x2axis display=(nolabel) offsetmax=0.02 values=(&mindate2 to &maxdate); yaxis grid display=(noticks novalues nolabel); run; |
6. Timeline Patient Profiles of conmeds with adverse event severity lines |
title "Concomitant Medications for Patient Id = &pid (SAS 9.3)"; proc sgplot data=cmmeds noautolegend nocycleattrs; refline 0 / axis=x lineattrs=(thickness=1 color=black); refline mild / axis=x lineattrs=(pattern=solid thickness=2 color=cx00af00) name='mi' legendlabel='Mild'; refline moderate / axis=x lineattrs=(pattern=solid thickness=2 color=cxcfaf00) name='mo' legendlabel='Moderate'; refline severe / axis=x lineattrs=(pattern=solid thickness=2 color=cxaf0000) name='se' legendlabel='Severe'; highlow y=cmseq low=cmstdy high=cmendy / type=bar barwidth=0.8 lowlabel=cmmed lowcap=cmlocap highcap=cmhicap fillattrs=(color=cx9BDCF2); scatter y=cmseq x=cmstdate / markerattrs=(size=0) x2axis; yaxis display=(nolabel noticks novalues) min=0; xaxis grid label='Study Days' offsetmax=0.02 values=(&minday2 to &maxday by 2); x2axis notimesplit display=(nolabel) offsetmax=0.02 tickvalueformat=date7. values=(&mindate2 to &maxdate); keylegend 'mi' 'mo' 'se' / title='Severity'; run; |
7. Timeline Patient Profiles of lab with adverse event severity lines |
title "Vital Statistics for Patient Id = &pid"; proc sgpanel data=vs_with_events noautolegend nocycleattrs; panelby id / onepanel layout=rowlattice uniscale=column novarname spacing=10; band x=x lower=low upper=high / transparency=0.6 fill nooutline fillattrs=(color=lightblue); refline 0 / axis=x lineattrs=(thickness=1 color=black); refline mild / axis=x lineattrs=(thickness=2 color=cx00af00) name='mi' legendlabel='Mild'; refline moderate / axis=x lineattrs=(thickness=2 color=cxcfaf00) name='mo' legendlabel='Moderate'; refline severe / axis=x lineattrs=(thickness=2 color=cxaf0000) name='se' legendlabel='Severe'; series x=vsdy y=vsstresn / group=vstpt lineattrs=(pattern=solid thickness=3) nomissinggroup name='bp' markerattrs=(symbol=circlefilled size=11); scatter x=vsdy y=vsstresn / markerattrs=(symbol=circlefilled size=11) group=vstpt; scatter x=vsdy y=vsstresn / markerattrs=(symbol=circlefilled size=5 color=white) group=vstpt; highlow y=yhigh low=xlow high=xhigh / highlabel=id labelattrs=(size=12); keylegend 'bp' / title='Vitals:' across=3 valueattrs=(size=5) titleattrs=(size=8); keylegend 'mi' 'mo' 'se' / title='Adverse Events:' across=3 valueattrs=(size=7) titleattrs=(size=8); rowaxis grid display=(nolabel) offsetmax=0.1; colaxis grid label='Study Days' offsetmax=0.02 values=(&minday2 to &maxday by 2); run; |
SAS Example (What is the main focus?) |
PROC SGPLOT using SAS 9.2 (See SAS Paper, SAS Blog) |
1. Spaghetti Plots by Lab Test and Patient - useful to compare patient lab trends. |
proc sgplot data = labdata; by labtest; series x = visit y = result / group = subjid; xaxis values = (-6 to 105 by 7); run; |
2. A Panel of Line Plots for one Laboratory Test - useful to compare one lab trend across patients. |
proc sgpanel data = labdata (where = (labtest = "Creatinine")); panelby subjid / rows=4 columns=4; series x = visit y = result; colaxis values = (-6 to 105 by 7); run; |
3. A Panel of Line Plots for one Subject - useful to compare multiple lab trends per patient. |
proc sgpanel data = labdata; panelby labtest / columns = 1 rows = 4 uniscale = column novarname; series x = visit y = result; by subjid;colaxis values = (-6 to 105 by 7); run; |
4. A 2X2 Panel of Line Plots for one Subject - useful to compare multiple lab trends per patient. |
proc sgplot data = labdata (where = (subjid = "1001")); by labtest; series x = visit y = result; run; |
5. A Panel of Line Plots by Subject and Laboratory - useful to compare selected lab trends across patients. |
proc sgpanel data = labdata; panelby subjid labtest / layout = lattice uniscale = column columns = 4 rows = 4 novarname; series x = visit y = result; colaxis values = (-6 to 105 by 7); run; |
6. Two Plots Overlaid in a Single Graph - useful to display two lab trends on the same plot per patient. |
proc sort data = labdata (keep = subjid labtest visit result); by visit; where subjid = "1001" and labtest in ("Creatinine" "Platelet"); run; proc transpose data = labdata out = lab4plot; by visit; var result; id labtest; run; title "Subject 1001"; proc sgplot data = lab4plot; series x = visit y = creatinine; series x = visit y = platelet / y2axis; run; |
7. Group Mean Over - useful to display group mean with range for all patients. |
proc sgplot data = data4plot; band x = visit lower = yerrorlower upper = yerrorupper / legendlabel = "+/- SEM" name = "band"; series x = visit y = mean / legendlabel = "Mean" name = "series"; keylegend "series" "band" / location = inside position = bottomleft; by labtest; xaxis values = (-6 to 105 by 7); run; |
8. Box Plots - useful for box plots for each lab test. |
proc sgplot data = labdata; by labtest; vbox result / category = visit; run; |
9. Scatter Plots - useful to identify trends by plotting baseline values and snapshot followup date values and plotting a line. |
proc sgscatter data = lab4plot; plot creatinine43*creatinine1 platelet43*platelet1 red_blood_cells43*red_blood_cells1 white_blood_cells43*white_blood_cells1/reg; run; |
Traditional Graph |
ODS Statistical Graphics |
---|---|
Graphs are saved in SAS® Graphics Catalog | Graphs are saved in standard image format such as PNG and JPEG |
Graphs are viewed in the Graph window | Graphs are viewed in the standard viewers such as web browser for HTML output |
Can use GOPTIONS statement to control appearance of graphs |
GOPTIONS statement has no effect |
File Type | SAS Code/Tip See SAS Paper |
---|---|
RTF |
ODS _ALL_ CLOSE; (Remove) OPTIONS DEVICE=GIF; GOPTIONS RESET = GLOBAL NOBORDER DEVICE = PNG300 HTITLE = 1.8 HTEXT = 1.5 HSIZE = 8.5IN VSIZE=6IN; |
options orientation=landscape; goptions reset=all device=pdfc /*NOTICE my choice for the PDF destination*/ ftext="Swissb" ; |
|
CGM | * Requires Microsoft word plug-in to insert CGM files in word files; GOPTIONS DEVICE=CGMOF971 GSFNAME=FIGOUT GSFMODE=REPLACE FTEXT=HWCGM001 HTEXT=12PT HTITLE=14PT; |
PROC GPLOT Options:
HAXIS (_) or VAXIS (|) : MINOR, ORDER, VALUE, OFFSET, and REFLABEL
HREF for vertivcal reference lines |
VREF for horizontal reference lines ________
UCLA SAS Examples Proc GPlot Course Notes
SG Beginner Paper Graphing Made Easy with SG Procedures, Susan Slaughter, Lora Delwiche [Proc Reg]
SAS/Graph Beginner Paper Want Quick Results? An Introduction to SAS/GRAPH® Software, Art Carpenter, SAS/GRAPH® Elements You Should Know – Even If You Don’t Use SAS/GRAPH, Art Carpenter
HOW Paper Using the 9.2 Statistical Graphic Procedures, Chuck Kincaid
SAS Reference ODS, ODS Statistical Graphs, PROC GCHART Manual, Overlay, PROC SGPLOT
SAS Graph to MS Office Technical Reference
Introduction to Graphics Using SAS/GRAPH Software, Mike Kalt [Course Notes]
SAS Papers by Sanjay Matange
Patient Profile Graphs Using SAS, Sanjay Matange [SAS 9.3 examples] [Presentation]
Make a Good Graph, Sanjay Matange
Adverse Event Timeliine using SAS 9.2, Sanjay Matange [Macro]
Create Comprehensive Patient Profiles with SAS, Daniel O’Connor and Sanjay Matange [SAS 9.2]
Tips and Tricks for Clinical Graphs using ODS Graphics, Sanjay Matange
Up Your Game with Graph Template Language Layouts, Sanjay Matange
Clinical Graphs Using SAS, Sanjay Matange [9.4]
Graph A Million with the SGPLOT Procedure, Prashant Hebbar and Sanjay Matange
SAS® Statistical Graphics Procedures, Sanjay Matange, Dan Heath
Now You Can Annotate Your Statistical Graphics Procedure Graphs, Dan Heath
Graphs are Easy with SAS® 9.4, Sanjay Matange
ODS Statistical Graphics Course notes, SAS Institute
1. Customizing ODS Statistical Graphs, Cynthia Zender, Catherine Truxillo
2. ODS Statistical Graphics for Clinical Research, Wei Cheng
4. SG Techniques: Telling the Story Even Better, Chuck Kincaid
6. Non-ODS Graph Easy, Elegant, and Effective SAS® Graphs: Inform and Influence with Your Data, LeRoy Bessler
7. Picturing Statistics, Diana Suhr
9. Fonts and Special Characters in SAS – It’s All Greek to Me, Doug Lassman
10. Embedded Special Characters, Kiran Karidi, Mahipal Vanam, and Sridhar Dodlapati
12. An Introduction to ODS for Statistical Graphics in SAS 9.1, Robert Rodriguez [Proc Reg]
13. Building a Better Bar Chart with SAS® Graph Template Language, Perry Watts
14. Clinical Trial Reporting Using SAS/GRAPH® SG Procedures, Susan Schwartz [Dose Response Plot, Cancer Mortality Plot, Mean Percent Change from Baseline]
15. Multiple Graphs on One page, the easy way (PDF) and the hard way (RTF), Kevin P. Delaney
17. A Graphical Approach to Advise an Appropriate Statistical Analysis Bret Moulton, Robin Jeffries
18. Multiple Graphs on One Page Using GREPLAY with “100%-Templates”, Dirk Spruck
20. Multiple Graphs on One Page Using SAS/GRAPH® V9, Hany Aboutaleb
23. Exporting SAS/GRAPH® Output: Concepts and Ideas, Dawn Schrader
24. SAS to PDF and JPEG (or viewing outputs in Windows Explorer), Xavier Passera
25. How to Customize Axes in PROC GPLOT, Iza Peszek
26. Generate a Customized Axis Scale with Uneven Intervals in SAS® Automatically, Perry Watts
28. A Legend is Not Just a Legend, Wendi Wright
29. Graphing in SAS Software, Destiny
30. Tips and Tricks in Creating Graphs Using PROC GPLOT, Qin Lin
31. Graphing Them Together: Overlaying Plots with Macros and SAS/GRAPH®, Lawrence Altmayer
32. An Introduction to PROC GREPLAY,Marc Jacobs
33. MANAGING SAS/GRAPH® DISPLAYS WITH THE GREPLAY PROCEDURE, Perry Watts
34. A Juxtaposition of Tables and Graphs Using SAS® /GRAPH Procedures, Suhas Sanjee, and Sheng Zhang
35. Presentation Quality Graphs With SAS/GRAPH, Michael Eberhart [HOW, Proc GREPLAY, DEVICE=PNG]
36. Using SAS®9 ODS Features to Present Table and Graph Data in an Adobe PDF File, Lori Parsons [Layout]
37. ODS LAYOUT is Like an Onion, Rich Mays
39. Using SAS® GTL with 9.3 Updates to Visualize Data When there is Too Much of It to Visualize
40. Getting Your Hands on Reproducible Graphs, Rebecca Ottesen and Leanne Goldstein [Overview of all plots, Data Science]
41. One at a Time; Producing Patient Profiles and Narratives, J. Hantsch, Janet Stuelpner
42. Creating Graphical Patient Profiles Using SAS, William Garner [SAS 9.2 Macro]
43. Intermediate SAS® ODS Graphics, Chuck Kincaid
44. A Graphical Approach to Examine the Completeness of Epidemiological Data: Patient Profile Plots (PPPs) and Centre Profile Plots (CPPs), Methodios Typou, Joseph Kim [Poster]
46. Patient Profile, a Simple Approach, Sandy Chang
47. Using PROC SGPLOT for Quick High Quality Graphs, Lora Delwiche, Susan Slaughter [PNG, Proc Reg]
48. The Power to Plot: Three Ways to Enhance SG Graphical Outputs, Xiangxiang Meng
49. Scatter Plots Using PROC SGPLOT for that Thursday Presentation, Sharon Hirabayashi
50. Scatterplots: Basics, enhancements, problems and solutions, Peter Flom
52. When Simpler is Better – Visualizing Laboratory Data Using “SG Procedures”, Wei Cheng
53. A Picture is Worth a Thousand Words: Integrated Visualization of Clinical Data, Vikash Jain
55. Creating Graph Collections with Consistent Colors using ODS Graphics?, Philip Holland [Presentation]
56. Graphical Representation of Mean Measurement over Time, Wei Cheng
57. Why Should You Be Using the New SG (Statistical Graphics) Procedures in SAS® 9.2?, Philip Holland
58. Something for Nothing! Converting Plots from SAS/GRAPH® to ODS Graphics, Philip Holland
59. Using the ODS Graphics Designer to Create Your Own Templates, Philip Holland
60. Key Features in ODS Graphics for Efficient Clinical Graphing, Yuxin (Ellen) Jiang
61. The Power of Pictures: Using Image Files with ODS, SAS®, and SAS/GRAPH, LeRoy Bessler
62. Creating Customized Patient Profiles using SAS ODS RTF and PROC TEMPLATE, Andrea Ritter [Patient Narratives, Macro]
63. Highly Customized Graphs Using ODS Graphics, Warren Kuhfeld
64. Get a Quick Start with SAS ODS Graphics By Teaching Yourself, Roger D. Muller
65. Graphical Results in Clinical Oncology Studies, Nora Ruel, Paul Frankel [Survival, Time Plot of Response/Retreatment, Waterfall]
66. Introduction to ODS Graphics, Chuck Kincaid
67. Key Features in ODS Graphics for Efficient Clinical Graphing, Yuxin Jiang
68. Visualizing Laboratory Data Using SAS SG Procedures, Wei Cheng [Presentation]
69. THE AXIS STATEMENT: YOUR ALLY FOR CONTROLLING GRAPHIC TEXT, Arthur Carpenter [Log scale]
70. SGPANEL: Telling the Story Better, Chuck Kincaid [LOGBASE, LOGTYPE]
71. A Different Point of View with ODS PDF in SAS 9.3, Scott Huntley and Woody Middleton [NOGTITLE]
72. An Insider’s Guide to ODS LAYOUT Using SAS 9.4, Scott Huntley [NOGTITLE]
73. Enhancements to Basic Patient Profiles, Scott Burroughs [QC]
74. Creating a Patient Profile using CDISC SDTM, Marc Desgrousilliers, Romain Miralles
75. Data review: To see or not to see …, Estelle Tiemtore, Damian Green
76. Using PROC SGPLOT to Produce Box Plots with Contrasting Colours in SAS
77. Box-and-Whisker Plots with The SAS System, David Shannon
78. Exposure-Response Plots Using SAS, Janette Garner
79. Converting Annotate to ODS Graphics. Is It Possible?, Philip R Holland
81. Plotting Against Cancer: Creating Oncology Plots Using SAS, Debpriya Sarkar
82. Graphical Results in Clinical Oncology Studies, Nora Ruel, Paul Frankel
85. Presentation Quality Forecast Visualization with SAS/GRAPH, Samuel Croker
86. Techniques of Preparing Datasets for Visualizing Clinical Laboratory Data, Amos Shu, Victor Sun
87. Unleashing Potential of Graphs for Oncology Trials, Manoj Pandey [Presentation, Data Science]
88. Data Visualization for Data Monitoring Committees for Clinical Trials, Adam Hamm
91. Getting Started with the SGPLOT Procedure, Joshua Horstman [Proc Reg, Confidence Intervals]
92. Graph Display of Patient Profile Using SAS, Yanwei Han, Hongyu Liu
93. A Simple Method to Generate Patient Profiles, Suwen Li, Daniel Li [Macros]
94. Operational Uses of Patient Profiles … Even in an eCTD and SDTM World, Terek Peterson, Sanjiv Ramalingam [Macro]
95. Programmed Assisted Patient Narratives (PANs) with New SAS® ODS and Graphical Approaches, Faye Yeh [Text, Graphs, Macros]
96. The New STREAM Procedure as a Virtual Medical Writer, Joseph Hinson [Patient Narriatives]
97. Creating Presentation-Quality ODS Graphics Output, Dan Heath
98. Presentation Quality Graphs With SAS/GRAPH, Michael Eberhart
99. Fine-tuning your swimmer plot: another example from oncology, Steve Almond
100. Get in your lane! Building swimmer plots using SAS® 9.4, Sri Talluri, Kristi Garner
101. Combining ODS Graphics Output, John Hendrickx [PNG]
Annotate Examples SAS Annotate Dictionary Macros
Text Appearance Variables
1. Data Driven Annotations: An Introduction to SAS/GRAPH’s® Annotate Facility, Art Carpenter
2. SAS/Graph® Annotate Coordinate Systems by Example, Max Cherny
3. Appending Many Individual Graphs Into One PDF File, With Custom Bookmarks, Scott
Burroughs
4. Using ANNOTATE MACROS as Shortcuts, Arthur Carpenter
5. SAS/Graph Annotate Macro Tutorial, Kathy Shelley
6. A Handy use of the %LINE Annotate Macro, Deena Rorie, Lynette Duncan
7. Creating Customized Spaghetti Plots, Sanjiv Ramalingam
Annotate: Simply the Basics Examples PROC GREPLAY
Graphics Template Language (GTL)
SAS Getting Started with GTL Webinar
SAS Example of overlaying two graphs
SAS Example of two nested graphs SAS Example of side-by-side graphs
1. A Programmer’s Introduction to the Graphics Template Language, Jeff Cartier
3. Innovative uses of ODS and GTL, Qinghua (Kathy) Chen
4. GTL to the Rescue!, Lelia McConnell
5. Make It Possible: Create Customized Graphs with GTL Wen Song, Ge Wu
7. GTL (Graphics Template Language) in SAS 9.2, Philip Holland
9. An efficient way to create graphs in SAS 9.2: Utilizing SG procedures and GTL, Yunzhi Ling
10. Hands-on GTL, Kriss Harris
11. The Graph Template Language: Beyond the SAS/GRAPH® Procedures, Jesse Pratt [XAXISOPTS]
12. Using Axes Options to Stretch the Limits of SAS® Graph Template Language, Perry Watts [XAXISOPTS]
13. Developing ODS Templates for Nonstandard Graphs in SAS 9.2, Philip Holland
Forest Plots
Three methods to create forest plots: 1) Direct from Proc LOGISTIC, Proc SGPLOT, 2) Calling %forestmacro, 3) Custom plot with annotated dataset
Forest Plot with Subgroups Blog
1. A Modular Approach of Reporting Meta Analysis Statistics Using Forest Plots,
Vikash Jain
3. Creating Forest Plots Using SAS/GRAPH and the Annotate Facility, Amanda Tweed
4. Multiple Forest Plots and the SAS® System, Anne Barfield
6. Lost in the Forest Plot? Follow the GTL AXISTABLE Road!, Prashant Hebbar
Quick Results with SAS/Graph Examples
Producing High-Quality Figures Using SAS/GRAPH® and ODS Graphics Procedures by Charlie Liu