71Scatter and Jittered Scatter Plots
** Produce the Line-up jittered scatter plot;
%macro LineUp_Jitter (idn =, xvar =, yvar =, lvl =, jitter =,
odn =);
** Get the Min and Max values and save them into macro
variables;
PROC MEANS DATA = &idn. MIN MAX maxdec = 2 noprint;
VAR &yvar.;
OUTPUT OUT = tmp_STAT min = min max = max;
RUN;
data _null_;
set tmp_stat;
call symput(‘Min’, min);
call symput(‘Max’, max);
run;
proc sort data = &idn. out = d_tmp;
by &yvar.;
run;
data add_tmp;
set d_tmp;
do i = floor(&min.) to ceil(&max.) by &lvl.;
if i < = &yvar. < i+1 then yvar_int = i;
end;
run;
** get the number of data points at each interval by x-axis
value;
proc freq data = add_tmp noprint;
tables &xvar.*yvar_int/out = freqdata;
run;
data jitter_sum;
retain ...