Procedure features: |
DYNAMIC Statement
|
Sample library member: |
GSGREND1
|
This example uses dynamic variables to set values within the
StatGraph template. By using dynamic variables to set the variable names,
variable labels, and other parameters, the StatGraph template can be used
with different data sets.
The first PROC SGRENDER statement generates a graph for the SASHELP.HEART
data set:
![[Example SGRENDER Output With a Dynamic Variable]](images/gsgrendr1a.gif)
![Note about code](../../../../common/63294/HTML/default/images/snbut.gif) |
proc template;
define statgraph distribution;
dynamic VAR VARLABEL TITLE NORMAL _BYLINE_;
begingraph;
entrytitle TITLE;
entrytitle _BYLINE_;
layout lattice / columns=1 rows=2 rowgutter=2px
rowweights=(.9 .1) columndatarange=union;
columnaxes;
columnaxis / label=VARLABEL;
endcolumnaxes;
layout overlay / yaxisopts=(offsetmin=.035);
layout gridded / columns=2 border=true autoalign=(topleft topright);
entry halign=left "Nobs";
entry halign=left eval(strip(put(n(VAR),8.)));
entry halign=left "Mean";
entry halign=left eval(strip(put(mean(VAR),8.2)));
entry halign=left "StdDev";
entry halign=left eval(strip(put(stddev(VAR),8.3)));
endlayout;
histogram VAR / scale=percent;
if (exists(NORMAL))
densityplot VAR / normal( );
endif;
fringeplot VAR / datatransparency=.7;
endlayout;
boxplot y=VAR / orient=horizontal;
endlayout;
endgraph;
end;
run; |
![Note about code](../../../../common/63294/HTML/default/images/snbut.gif) |
proc sgrender data=sashelp.heart template=distribution;
dynamic var="cholesterol" varlabel="Cholesterol (LDL)" normal="yes"
title="Framingham Heart Study";
run; |
The second PROC SGRENDER statement generates multiple graph for the
CARS data set by using BY grouping. The first graph is displayed
here.
![[Graphics output from the SGRENDER procedure]](images/gsgrendr1b.gif)
![Note about code](../../../../common/63294/HTML/default/images/snbut.gif) |
proc sort data=sashelp.cars out=cars;
by origin;
run; |
![Note about code](../../../../common/63294/HTML/default/images/snbut.gif) |
proc sgrender data=cars template=distribution;
by origin;
dynamic var="weight" varlabel="Weight in LBS"
title="Distribution of Vehicle Weight";
run; |
Copyright © 2010 by SAS Institute Inc., Cary, NC, USA. All rights reserved.