Hi,
I have data for a set of analytes and I want to create a scatter plot for each analyte.
I would like to have four plots (one plot from each of four analytes) per page in a pdf file.
When I use the code below it creates the plots that I want and it puts them in the right position on the page; however, it puts four plots of analyte 1 on page 1, four plots of analyte 2 on page 2, etc., etc.
After it puts the plot for the first analyte in position on the first page, how do I make it move to the plot for the next analyte for the next position on the first page?
Thanks,
fastb
%MACRO SGPLOT; %DO i=1 %TO &total;
ODS NORESULTS; ODS PDF STARTPAGE=NOW NOTOC STYLE=lit_range;
ODS GRAPHICS ON / ANTIALIASMAX=1400;
ODS LISTING STYLE=lit_range GPATH =
'C:\Corn.Literature.Ranges\QC Plots' IMAGE_DPI=300;
ODS PDF FILE="C:\Corn.Literature.Ranges\QC Plots\QC Plots.pdf"
BOOKMARKGEN = NO;
title;/*TITLE "&&CROP_TYPE&i& &&TISSUE_TYPE&i &&ANALYTE&i";*/
OPTIONS NODATE NONUMBER ORIENTATION=Portrait;
ODS LAYOUT START HEIGHT=11in WIDTH=8.5in;
ODS REGION COLUMN_SPAN=2 x=0.5in y=0.5in WIDTH=3.3in HEIGHT=3.3in;
PROC SGPLOT DATA=prepped_plots /*NOAUTOLEGEND NOCYCLEATTRS*/;
WHERE Matrix="&&Matrix&i" AND Category="&&Category&i" AND
ANALYTE="&&ANALYTE&i";
*BAND X=x UPPER=Upper_99pct_Tol_Int LOWER=Lower_99pct_Tol_Int / x2axis FILL
FILLATTRS=(COLOR=GRAYCC);
YAXIS label="&&unit&i&" /*min =0*/ OFFSETMIN = 0.08 OFFSETMAX = 0.08;
XAXIS DISPLAY=(noticks novalues nolabel) OFFSETMIN=0.05 OFFSETMAX=0.05;
TITLE1 HEIGHT = 10pt "&&matrix&i";
TITLE2 HEIGHT = 10pt "&&category&i";
TITLE3 HEIGHT = 10pt "&&analyte&i";
SCATTER x=result_name y=result / NOMISSINGGROUP MARKERATTRS=(SIZE=10px) GROUP = reference;
KEYLEGEND / location = outside position = right; RUN;
ODS REGION COLUMN_SPAN=2 x=4.25in y=0.5in WIDTH=3.3in HEIGHT=3.3in;
PROC SGPLOT DATA=prepped_plots /*NOAUTOLEGEND NOCYCLEATTRS*/;
WHERE Matrix="&&Matrix&i" AND Category="&&Category&i" AND
ANALYTE="&&ANALYTE&i";
*BAND X=x UPPER=Upper_99pct_Tol_Int LOWER=Lower_99pct_Tol_Int / x2axis FILL
FILLATTRS=(COLOR=GRAYCC);
YAXIS label="&&unit&i&" /*min =0*/ OFFSETMIN = 0.08 OFFSETMAX = 0.08;
XAXIS DISPLAY=(noticks novalues nolabel) OFFSETMIN=0.05 OFFSETMAX=0.05;
TITLE1 HEIGHT = 10pt "&&matrix&i";
TITLE2 HEIGHT = 10pt "&&category&i";
TITLE3 HEIGHT = 10pt "&&analyte&i";
SCATTER x=result_name y=result / NOMISSINGGROUP MARKERATTRS=(SIZE=10px) GROUP = reference;
KEYLEGEND / location = outside position = right; RUN;
ODS REGION COLUMN_SPAN=2 x=0.5in y=3.8in WIDTH=3.3in HEIGHT=3.3in;
PROC SGPLOT DATA=prepped_plots /*NOAUTOLEGEND NOCYCLEATTRS*/;
WHERE Matrix="&&Matrix&i" AND Category="&&Category&i" AND
ANALYTE="&&ANALYTE&i";
*BAND X=x UPPER=Upper_99pct_Tol_Int LOWER=Lower_99pct_Tol_Int / x2axis FILL
FILLATTRS=(COLOR=GRAYCC);
YAXIS label="&&unit&i&" /*min =0*/ OFFSETMIN = 0.08 OFFSETMAX = 0.08;
XAXIS DISPLAY=(noticks novalues nolabel) OFFSETMIN=0.05 OFFSETMAX=0.05;
TITLE1 HEIGHT = 10pt "&&matrix&i";
TITLE2 HEIGHT = 10pt "&&category&i";
TITLE3 HEIGHT = 10pt "&&analyte&i";
SCATTER x=result_name y=result / NOMISSINGGROUP MARKERATTRS=(SIZE=10px) GROUP = reference;
KEYLEGEND / location = outside position = right; RUN;
ODS REGION COLUMN_SPAN=2 x=4.25in y=3.8in WIDTH=3.3in HEIGHT=3.3in;
PROC SGPLOT DATA=prepped_plots /*NOAUTOLEGEND NOCYCLEATTRS*/;
WHERE Matrix="&&Matrix&i" AND Category="&&Category&i" AND
ANALYTE="&&ANALYTE&i";
*BAND X=x UPPER=Upper_99pct_Tol_Int LOWER=Lower_99pct_Tol_Int / x2axis FILL
FILLATTRS=(COLOR=GRAYCC);
YAXIS label="&&unit&i&" /*min =0*/ OFFSETMIN = 0.08 OFFSETMAX = 0.08;
XAXIS DISPLAY=(noticks novalues nolabel) OFFSETMIN=0.05 OFFSETMAX=0.05;
TITLE1 HEIGHT = 10pt "&&matrix&i";
TITLE2 HEIGHT = 10pt "&&category&i";
TITLE3 HEIGHT = 10pt "&&analyte&i";
SCATTER x=result_name y=result / NOMISSINGGROUP MARKERATTRS=(SIZE=10px) GROUP = reference;
KEYLEGEND / location = outside position = right; RUN;
ODS LAYOUT END; %END; %MEND SGPLOT; %SGPLOT;
ODS PDF CLOSE;
... View more