*
;
options nosource;
%macro ray(data=_LAST_, result=_NEW_, x =x, y =y,
x0=0.0, y0=0.0, add=no);
options nonotes nosymbolgen nostimer nosource;
data &result;
set &data;
output;
&x=&x0; &y=&y0;
output;
run;
%if %upcase(%str(&add)) = %str(YES) %then %do;
proc append base=&result data=&data force; run;
%put macro-note: dataset &data appended to &result;
%end;
options notes;
data &result;
set &result;
run;
options stimer source;
%mend ray; options source;
/*
*Example;
data one;
do x=-10 to 10 ;
y=x**2 -x -10;
k=1;
output;
end;
run;
%ray(data=one,result=two,x=x,y=y,x0=3,y0=20);
symbol i=join;
proc gplot data=two;
plot y*x=k/nolegend;
run;
*End of Example; */
*;