Kaitlyn McConville, Rho ®, Inc. Kristen Much, Rho ®, Inc. PharmaSUG 2015 Paper #DV02.

Slides:



Advertisements
Similar presentations
Summary Statistics/Simple Graphs in SAS/EXCEL/JMP.
Advertisements

Taking the Leap - Using ODS Statistical Graphics for Data Visualization Wei Cheng, Isis Pharmaceuticals, Inc.
Converting SAS/GRAPH to ODS Graphics
Stem and leaf diagrams and box plots Statistics. Draw a stem and leaf diagram using the set of data below
Start up Excel. Notice that each row has a number, and each column has a letter. Click in A1 (column A, row 1), and type in a title for your data.
Statistics for clinicians l Biostatistics course by Kevin E. Kip, Ph.D., FAHA Professor and Executive Director, Research Center University of South Florida,
Increase Pattern Detection in SAS® GTL with New Categorical Histograms and Color Coded Asymmetric Violin Plots Perry Watts, Stakana Analytics,
1 Graphics – Part 3 HRP223 – 2013 December 2, 2013 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation.
Excel Graphing Tutorial Lauren Ottaviano Fall 2012.
1 Graphics in EG and R HRP223 – 2009 November, 2010 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation.
Graphics in EG and R HRP223 – 2009 November, 2010
1 Is Spatial Memory Age-Related? There is a commonly-held belief that it is more difficult for the Elderly than for the Young to learn and remember new.
Graph these numbers. 1. Highlight the rows you need for your axes 2. Click on the chart wizard icon.
Data Model Examples USER SPECIFICATIONS.
Copyright © 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks.
1 Graphics – Part 2 HRP223 – 2013 November 20, 2013 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation.
1 Graphics HRP223 – 2013 November 18, 2013 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation is.
Week 3 Topic - Descriptive Procedures Program 3 in course notes Cody & Smith (Chapter 2)
Copyright © 2008, SAS Institute Inc. All rights reserved. SAS Graphics on ODS v9.2 Performance Enhancing Steroids Daniel O’Connor Systems Developer, SAS.
Graphical Reporting of Clinical Trial Data with SAS ODS Graphics
1 Graphics HRP223 – 2011 November 28, 2011 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation is.
Bay Area SUG June SAS ® 9.2 Implications for Biotech SAS ® 9.2 Implications for Biotech Bay Area SAS User’s Group June 7 th 2010 Sarmad Pirzada,
PCA Example Air pollution in 41 cities in the USA.
Copyright © 2004, SAS Institute Inc. All rights reserved. Paul Kent VP SAS Platform Research & Development Forthcoming Changes in SAS.
Niraj J. Pandya, Element Technologies Inc., NJ.  Summarize all possible combinations of class level variables even if few categories are altogether missing.
TS02 SAS GTL - Injecting New Life into Graphs
DEPARTMENT OF FOREST BIOMATERIALS. Department of Forest Biomaterials Shipping Address Department of Forest Biomaterials Shipping Address NC State University.
ODS Statistical Graphics in SAS 9.2 January 17, 2010.
1 Graphics HRP223 – 2012 November 28, 2012 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation is.
First Slide – Put presentation title here Put presentation subtitle here.
Introduction to SAS/Graph 9.2 Ken Barz Colorado Prevention Center 22Oct2009 Ken Barz Colorado Prevention Center.
Excel Charts. Column Chart The Column Chart will show the comparison of one or more series of data points. It is specially useful in comparing multiple.
Learning R hands on. Organization of Folders: Class Data folder has datasets (end in.csv or.rda) Rcode has the scripts of R commands that can cut and.
1 Graphics in EG and R HRP223 – 2009 November, 2010 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation.
Lecture 3 Topic - Descriptive Procedures Programs 3-4 LSB 4:1-4.4; 4:9:4:11; 8:1-8:5; 5:1-5.2.
1 Graphics – Part 2 HRP223 – 2013 November 20, 2013 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation.
1 Graphics HRP223 – 2011 November 28, 2011 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This presentation is.
Types of Graphs.
Mr. Magdi Morsi Statistician Department of Research and Studies, MOH
Sec. 3-5 Exploratory Data Analysis. 1.Stem & Leaf Plots: (relates to Freq. Dist) Look at examples on page Box Plot: (Relates to Histograms)
A GUI framework for PySAL Team members: Dae-hyun You, Sanjay Paul, Jianhua Huang, Ki-hwan Seo, Evan Palmer GPH 598: Geocomputation, Fall 2011.
#pharmasug About OMICS Group OMICS Group is an amalgamation of Open Access Publications and worldwide international science conferences and events. Established.
Module 8 Test Review. Find the following from the set of data: 6, 23, 8, 14, 21, 7, 16, 8  Five Number Summary: Answer: Min 6, Lower Quartile 7.5, Median.
Introduction to SAS ODS Graphics September 16, 2015 Rocio Lopez.
Does a Person’s Income Relate to Their Age?. Variables  Annual Income Measured in Dollars per Year  Age of Individual Measured in Years.
Using Appropriate Displays. The rabbit’s max speed is easier to find on the ________. The number of animals with 15 mph max speed or less was easier to.
SAS GTL. What we’re going to cover… Some basics Layouts Plots Examples.
Kaplan-Meier Survival Plotting Macro %NEWSURV Jeffrey Meyers Mayo Clinic, Rochester, Minnesota 1 BB-13.
Forest Plotting Analysis Macro %FORESTPLOT (Paper 3419)
Introduction to the SPSS Interface
Introduction to Graphing in SAS
Using Excel to Construct Basic Tools for Understanding Variation
Using R Graphs in R.
GRAPHS.
Stem and leaf diagrams and box plots
Building Dashboards with ODS and PROC Layout
Lesson 3 Overview Descriptive Procedures Controlling SAS Output
Chapter 8: ODS Graphics ODS graphics were not available prior to SAS 9.2 They have been implemented across a wide range of procedures Functionality isn’t.
Jeopardy Final Jeopardy Chapter 1 Chapter 2 Chapter 3 Chapter 4
AA-08: Kaplan-Meier Survival Plotting Macro %NEWSURV
Use of SAS® Graph Template Language and HIGHLOWPLOT to Create a Next-Generation Sequencing Multi-Gene Panel Grid John Bennett Statistical Programmer Genomic.
Kriss Harris, SAS Programmer, SAS Specialists Limited
Click Headings Above to View Content
Building Dashboard with Base SAS®
What Month Were You Born In?
Introduction to the SPSS Interface
Number Summaries and Box Plots.
AQA specification Lesson 1: Time series and interpreting graphs
ADME Study PK SDTM/ADAM And Graph
Presentation transcript:

Kaitlyn McConville, Rho ®, Inc. Kristen Much, Rho ®, Inc. PharmaSUG 2015 Paper #DV02

2  Step 1 GTL Overview  Step 2

3  TMPLOUT Shortcut!

GTL_Code.sas 4

5 Scatter Plot Overlaid on Box Plot Example 1 5

6

The Motivation 7

The Code proc template; define statgraph scatterbox; begingraph; entrytitle "Area Under the Curve (pmol/mL) over Time by Treatment Group"; layout overlay / xaxisopts=( ) yaxisopts=( ); drawtext textattrs=(size=8pt) "Treatment Difference: &treat_auc." / ; drawtext textattrs=(size=8pt) "Time Trend: &time_auc." / ; drawtext textattrs=(size=8pt) "Treatment by Time: &trtbtime_auc." / ; drawtext textattrs=(size=8pt) "N = &n0_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p0_auc." / ; drawtext textattrs=(size=8pt) "N = &n6_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p6_auc." / ;; drawtext textattrs=(size=8pt) "N = &n12_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p12_auc." / ; drawtext textattrs=(size=8pt) "N = &n18_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p18_auc." / ; drawtext textattrs=(size=8pt) "N = &n24_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p24_auc." / ; scatterplot x=eval(0.4*rannor(57)+visitn2) y=auc / group=trt name="trt1" ; boxplot x=visitn2 y=auc / group=trt display=(caps mean median connect) connect=mean name="trt2"; mergedlegend "trt1" "trt2" / title="Treatment"; endlayout; endgraph; end; run; proc sgrender data=datasetname template=scatterbox; run; 8

The Code proc template; define statgraph scatterbox; begingraph; entrytitle "Area Under the Curve (pmol/mL) over Time by Treatment Group"; layout overlay / xaxisopts=( ) yaxisopts=( ); drawtext textattrs=(size=8pt) "Treatment Difference: &treat_auc." / ; drawtext textattrs=(size=8pt) "Time Trend: &time_auc." / ; drawtext textattrs=(size=8pt) "Treatment by Time: &trtbtime_auc." / ; drawtext textattrs=(size=8pt) "N = &n0_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p0_auc." / ; drawtext textattrs=(size=8pt) "N = &n6_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p6_auc." / ;; drawtext textattrs=(size=8pt) "N = &n12_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p12_auc." / ; drawtext textattrs=(size=8pt) "N = &n18_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p18_auc." / ; drawtext textattrs=(size=8pt) "N = &n24_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p24_auc." / ; scatterplot x=eval(0.4*rannor(57)+visitn2) y=auc / group=trt name="trt1" ; boxplot x=visitn2 y=auc / group=trt display=(caps mean median connect) connect=mean name="trt2"; mergedlegend "trt1" "trt2" / title="Treatment"; endlayout; endgraph; end; run; proc sgrender data=datasetname template=scatterbox; run; 9

The Code proc template; define statgraph scatterbox; begingraph; entrytitle "Area Under the Curve (pmol/mL) over Time by Treatment Group"; layout overlay / xaxisopts=( ) yaxisopts=( ); drawtext textattrs=(size=8pt) "Treatment Difference: &treat_auc." / ; drawtext textattrs=(size=8pt) "Time Trend: &time_auc." / ; drawtext textattrs=(size=8pt) "Treatment by Time: &trtbtime_auc." / ; drawtext textattrs=(size=8pt) "N = &n0_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p0_auc." / ; drawtext textattrs=(size=8pt) "N = &n6_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p6_auc." / ;; drawtext textattrs=(size=8pt) "N = &n12_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p12_auc." / ; drawtext textattrs=(size=8pt) "N = &n18_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p18_auc." / ; drawtext textattrs=(size=8pt) "N = &n24_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p24_auc." / ; scatterplot x=eval(0.4*rannor(57)+visitn2) y=auc / group=trt name="trt1" ; boxplot x=visitn2 y=auc / group=trt display=(caps mean median connect) connect=mean name="trt2"; mergedlegend "trt1" "trt2" / title="Treatment"; endlayout; endgraph; end; run; proc sgrender data=datasetname template=scatterbox; run; 10

11

The Code proc template; define statgraph scatterbox; begingraph; entrytitle "Area Under the Curve (pmol/mL) over Time by Treatment Group"; layout overlay / xaxisopts=( ) yaxisopts=( ); drawtext textattrs=(size=8pt) "Treatment Difference: &treat_auc." / ; drawtext textattrs=(size=8pt) "Time Trend: &time_auc." / ; drawtext textattrs=(size=8pt) "Treatment by Time: &trtbtime_auc." / ; drawtext textattrs=(size=8pt) "N = &n0_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p0_auc." / ; drawtext textattrs=(size=8pt) "N = &n6_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p6_auc." / ;; drawtext textattrs=(size=8pt) "N = &n12_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p12_auc." / ; drawtext textattrs=(size=8pt) "N = &n18_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p18_auc." / ; drawtext textattrs=(size=8pt) "N = &n24_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p24_auc." / ; scatterplot x=eval(0.4*rannor(57)+visitn2) y=auc / group=trt name="trt1" ; boxplot x=visitn2 y=auc / group=trt display=(caps mean median connect) connect=mean name="trt2"; mergedlegend "trt1" "trt2" / title="Treatment"; endlayout; endgraph; end; run; proc sgrender data=datasetname template=scatterbox; run; 12

13

The Code proc template; define statgraph scatterbox; begingraph; entrytitle "Area Under the Curve (pmol/mL) over Time by Treatment Group"; layout overlay / xaxisopts=( ) yaxisopts=( ); drawtext textattrs=(size=8pt) "Treatment Difference: &treat_auc." / ; drawtext textattrs=(size=8pt) "Time Trend: &time_auc." / ; drawtext textattrs=(size=8pt) "Treatment by Time: &trtbtime_auc." / ; drawtext textattrs=(size=8pt) "N = &n0_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p0_auc." / ; drawtext textattrs=(size=8pt) "N = &n6_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p6_auc." / ;; drawtext textattrs=(size=8pt) "N = &n12_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p12_auc." / ; drawtext textattrs=(size=8pt) "N = &n18_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p18_auc." / ; drawtext textattrs=(size=8pt) "N = &n24_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p24_auc." / ; scatterplot x=eval(0.4*rannor(57)+visitn2) y=auc / group=trt name="trt1" ; boxplot x=visitn2 y=auc / group=trt display=(caps mean median connect) connect=mean name="trt2"; mergedlegend "trt1" "trt2" / title="Treatment"; endlayout; endgraph; end; run; proc sgrender data=datasetname template=scatterbox; run; 14

15

The Code proc template; define statgraph scatterbox; begingraph; entrytitle "Area Under the Curve (pmol/mL) over Time by Treatment Group"; layout overlay / xaxisopts=( ) yaxisopts=( ); drawtext textattrs=(size=8pt) "Treatment Difference: &treat_auc." / ; drawtext textattrs=(size=8pt) "Time Trend: &time_auc." / ; drawtext textattrs=(size=8pt) "Treatment by Time: &trtbtime_auc." / ; drawtext textattrs=(size=8pt) "N = &n0_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p0_auc." / ; drawtext textattrs=(size=8pt) "N = &n6_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p6_auc." / ;; drawtext textattrs=(size=8pt) "N = &n12_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p12_auc." / ; drawtext textattrs=(size=8pt) "N = &n18_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p18_auc." / ; drawtext textattrs=(size=8pt) "N = &n24_auc." / ; drawtext textattrs=(size=8pt) "p-value = &p24_auc." / ; scatterplot x=eval(0.4*rannor(57)+visitn2) y=auc / group=trt name="trt1" ; boxplot x=visitn2 y=auc / group=trt display=(caps mean median connect) connect=mean name="trt2"; mergedlegend "trt1" "trt2" / title="Treatment"; endlayout; endgraph; end; run; proc sgrender data=datasetname template=scatterbox; run; 16

17

18 Multi-cell Graph with Nested Layout Lattice Example 2 18

19

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 20

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 21

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 22

23

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 24

25

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 26

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 27

28

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 29

The Code proc template; define statgraph mri; begingraph; entrytitle 'Baseline MRI Characteristics'; layout lattice /rows=1 columns=2 columnweights=( ) columngutter=.5cm; layout overlay / yaxisopts=(griddisplay=on); histogram t2vol / binaxis=false; densityplot t2vol / lineattrs=graphfit name='density' legendlabel=’Normal’; discretelegend 'density' / location=inside halign=left valign=top; layout gridded / rows=5 columns=2 opaque=true border=true autoalign=(topright); entry halign=left 'Mean'; entry halign=right "&mean"; entry halign=left 'Std.Dev'; entry halign=right "&std"; entry halign=left 'Median'; entry halign=right "&med"; entry halign=left 'Min'; entry halign=right "&min"; entry halign=left 'Max'; entry halign=right "&max"; endlayout; layout lattice / rows=2 columns=1 rowgutter=.5cm; layout overlay / yaxisopts=(griddisplay=on linearopts=(tickvaluelist=( ))); barchart x=gadc; endlayout; layout overlay / xaxisopts=(linearopts=(viewmax=4)); scatterplot x=t1vol y=t2vol; endlayout; endgraph; end; run; proc sgrender data=datasetname template=mri; run; 30

31

32 Multi-cell Paneled Series Plots Example 3 32

33

The Code proc template; define statgraph twobyone; begingraph / designwidth=11in designheight=8.5in; layout gridded / rows=2 columns=1 rowgutter=15; drawtext textattrs=(size=30pt) "A" / ; drawtext textattrs=(size=30pt) "B" / ; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=cpep / legendlabel="Baseline Visit" name="y0“ lineattrs=( ); seriesplot x=visit6 y=cpep / legendlabel="Month 6 Visit" name="y1" lineattrs=( ); seriesplot x=visit12 y=cpep / legendlabel="Month 12 Visit" name="y2" lineattrs=( ); seriesplot x=visit18 y=cpep / legendlabel="Month 18 Visit" name="y3" lineattrs=( ); seriesplot x=visit24 y=cpep / legendlabel="Month 24 Visit" name="y4" lineattrs=( ); endlayout; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=glucose / lineattrs=( ); seriesplot x=visit6 y=glucose / lineattrs=( ); seriesplot x=visit22 y=glucose / lineattrs=( ); seriesplot x=visit18 y=glucose / lineattrs=( ); seriesplot x=visit24 y=glucose / lineattrs=( ); endlayout; discretelegend "y0" "y1" "y2" "y3" "y4" / across=5 border=true valueattrs=(size=10pt); endlayout; endgraph; end; run; proc sgrender data=datasetname template=twobyone; run; 34

The Code proc template; define statgraph twobyone; begingraph / designwidth=11in designheight=8.5in; layout gridded / rows=2 columns=1 rowgutter=15; drawtext textattrs=(size=30pt) "A" / ; drawtext textattrs=(size=30pt) "B" / ; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=cpep / legendlabel="Baseline Visit" name="y0“ lineattrs=( ); seriesplot x=visit6 y=cpep / legendlabel="Month 6 Visit" name="y1" lineattrs=( ); seriesplot x=visit12 y=cpep / legendlabel="Month 12 Visit" name="y2" lineattrs=( ); seriesplot x=visit18 y=cpep / legendlabel="Month 18 Visit" name="y3" lineattrs=( ); seriesplot x=visit24 y=cpep / legendlabel="Month 24 Visit" name="y4" lineattrs=( ); endlayout; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=glucose / lineattrs=( ); seriesplot x=visit6 y=glucose / lineattrs=( ); seriesplot x=visit22 y=glucose / lineattrs=( ); seriesplot x=visit18 y=glucose / lineattrs=( ); seriesplot x=visit24 y=glucose / lineattrs=( ); endlayout; discretelegend "y0" "y1" "y2" "y3" "y4" / across=5 border=true valueattrs=(size=10pt); endlayout; endgraph; end; run; proc sgrender data=datasetname template=twobyone; run; 35

36

The Code proc template; define statgraph twobyone; begingraph / designwidth=11in designheight=8.5in; layout gridded / rows=2 columns=1 rowgutter=15; drawtext textattrs=(size=30pt) "A" / ; drawtext textattrs=(size=30pt) "B" / ; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=cpep / legendlabel="Baseline Visit" name="y0“ lineattrs=( ); seriesplot x=visit6 y=cpep / legendlabel="Month 6 Visit" name="y1" lineattrs=( ); seriesplot x=visit12 y=cpep / legendlabel="Month 12 Visit" name="y2" lineattrs=( ); seriesplot x=visit18 y=cpep / legendlabel="Month 18 Visit" name="y3" lineattrs=( ); seriesplot x=visit24 y=cpep / legendlabel="Month 24 Visit" name="y4" lineattrs=( ); endlayout; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=glucose / lineattrs=( ); seriesplot x=visit6 y=glucose / lineattrs=( ); seriesplot x=visit22 y=glucose / lineattrs=( ); seriesplot x=visit18 y=glucose / lineattrs=( ); seriesplot x=visit24 y=glucose / lineattrs=( ); endlayout; discretelegend "y0" "y1" "y2" "y3" "y4" / across=5 border=true valueattrs=(size=10pt); endlayout; endgraph; end; run; proc sgrender data=datasetname template=twobyone; run; 37

38

The Code proc template; define statgraph twobyone; begingraph / designwidth=11in designheight=8.5in; layout gridded / rows=2 columns=1 rowgutter=15; drawtext textattrs=(size=30pt) "A" / ; drawtext textattrs=(size=30pt) "B" / ; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=cpep / legendlabel="Baseline Visit" name="y0“ lineattrs=( ); seriesplot x=visit6 y=cpep / legendlabel="Month 6 Visit" name="y1" lineattrs=( ); seriesplot x=visit12 y=cpep / legendlabel="Month 12 Visit" name="y2" lineattrs=( ); seriesplot x=visit18 y=cpep / legendlabel="Month 18 Visit" name="y3" lineattrs=( ); seriesplot x=visit24 y=cpep / legendlabel="Month 24 Visit" name="y4" lineattrs=( ); endlayout; layout datapanel classvars=(id) / ; layout prototype; seriesplot x=visit0 y=glucose / lineattrs=( ); seriesplot x=visit6 y=glucose / lineattrs=( ); seriesplot x=visit22 y=glucose / lineattrs=( ); seriesplot x=visit18 y=glucose / lineattrs=( ); seriesplot x=visit24 y=glucose / lineattrs=( ); endlayout; discretelegend "y0" "y1" "y2" "y3" "y4" / across=5 border=true valueattrs=(size=10pt); endlayout; endgraph; end; run; proc sgrender data=datasetname template=twobyone; run; 39

40

Conclusion 41

Name: Kaitlyn McConville Enterprise: Rho, Inc. Address: 6330 Quadrangle Dr. City, State ZIP: Chapel Hill, NC Work Phone: Fax: Name: Kristen Much Enterprise: Rho, Inc. Address: 6330 Quadrangle Dr. City, State ZIP: Chapel Hill, NC Work Phone: Fax: