7

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

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;

代码基于这篇文章

4

1 回答 1

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;
于 2011-02-19T03:29:30.060 回答