我正在使用SAS 9.3。 我的目标是在每页上创建一个包含2个图形的pdf文件。 我用这段代码取得了部分成功:
data mydata;
var1=1;
var2=2;
run;
%macro pic;
%do i=1 %to 6;
proc sgplot data=mydata;
title "Title &i";
vbar var1 / response=var2;
run;
%end;
%mend pic;
ods pdf file = "&folder\test.pdf" STARTPAGE=NEVER style=SASweb;
%pic;
ods pdf close;
然而,问题是在第2页之后,SAS决定自动使用我的图表标题作为页面标题。双重标题占据空间,看起来很愚蠢。如何摆脱这个页面标题?为什么它没有出现在第一页?
如何保留图表标题但摆脱页面标题?
编辑:我可以通过使用以下语句调整图形大小来调整每页两个图:
ods graphics on / width=580px;
但我真正需要的是摆脱那个双冠军。
我试图指定
title;
在情节之前,它没有帮助。
还
Options noproctitle;
不会让我到那儿。
答案 0 :(得分:1)
将proc sgplot
中的标题声明更改为以下内容对我有用:
%if &i=1 %then %str(title "Title &i";);
%else %str(title;);
希望对你有所帮助。
答案 1 :(得分:1)
我的建议是取出TITLE。相反,使用位于顶部的INSET在图表中为您提供等效的TITLE。 (如果你使用的是GTL,我建议使用EntryTitle
,但你不是。)
它并不完全相同,但它可以解决这个问题。使用带有ENTRYTITLE的GTL可以做得更好。您还可以使用样式模板移除轴周围的框架(我相信改变墙边框)。
data mydata;
var1=1;
var2=2;
run;
%macro pic;
%do i=1 %to 6;
proc sgplot data=mydata;
inset "Title &i";
vbar var1 / response=var2;
yaxis offsetmax=.1; *to leave some room for the inset;
run;
%end;
%mend;
ods pdf file = "&folder\test.pdf" STARTPAGE=NEVER style=SASweb;
%pic;
ods pdf close;