SAS:如何使用ODS布局在8个PDF页面上放置8个图表?

时间:2011-02-18 19:59:15

标签: pdf graph sas sas-ods

我正在使用SAS ODS创建PDF文档。下面的代码可以将4个图形放在1页上。但是,如果我尝试在2页上放置8个图形,我得到的就是1页上的4个图形。我尝试在星号行之间复制部分并在“ods pdf close”上面再次粘贴它。但那没用。我也尝试添加“ods startpage = now;”两者之间,但也没有用。如何在2页上放置8个图形?

goptions reset=all;

data test;
input x y @@;
datalines;
1 2 2 4 3 8 4 10 5 15
;
run;
ods pdf file="[path]/output.pdf" ;

****
ods layout Start width=10in height=8in ;
ods region x=0 y=5% width=45% height=45%;
proc gplot data=test;
title2 'PLOT #1';
plot y*x /name="mygraph1" noframe;
run;
ods region x=55% y=5% width=45% height=45%;
title2 'PLOT #2';
plot y*x /name="mygraph2" noframe;
run;
ods region x=0 y=51% width=45% height=45%;
title2 'PLOT #3';
plot y*x / name="Mygraph3" noframe;
run;
ods region x=55% Y=51% width=45% height=45%;
title2 'PLOT #4';
plot y*x / name="Mygraph4" noframe;
run;
quit;
ods layout end;
****

ods pdf close;

代码基于this article

1 个答案:

答案 0 :(得分:4)

很好的问题,在我看来,这是在任何地方都很难记录的东西。

你快到了:你需要关闭你的布局“容器”,强制一个新的页面,然后为下一页打开一个新的布局:

ods pdf file="file.pdf" startpage=never;

* page 1;
ods layout start <dimensions>;
ods region <dimensions>;
proc whatever; run;
ods region <dimensions>;
proc whatever; run;
ods layout end;

*<etc. for page 1 content>;

* start page 2;
ods pdf startpage=now;

* page 2;
ods layout start <dimensions>;
ods region <dimensions>;
proc whatever; run;
ods region <dimensions>;
proc whatever; run;
ods layout end;

*<etc. for page 2 content>;

ods pdf close;