Macros sas ods.rtf输出标题w/in宏

Macros sas ods.rtf输出标题w/in宏,macros,sas,output,title,ods,Macros,Sas,Output,Title,Ods,我很难获得宏的标题,因为出于某种原因,gplot例程生成的标题会覆盖预定义的标题(标题1)。我缺少什么 data one; input state $2. sales @@; datalines; VA 5200 SC 9800 NC 7500 GA 12500 NY 17600 ; run; goptions reset=all ftext='calibri' htext=2 gunit=pct; symbol1 i=none f='calibri' v='$' h=4 c

我很难获得宏的标题,因为出于某种原因,gplot例程生成的标题会覆盖预定义的标题(标题1)。我缺少什么

data one;
input state $2. sales @@;
datalines;
VA  5200 
SC  9800 
NC  7500 
GA  12500 
NY  17600
;
run;

goptions reset=all ftext='calibri' htext=2 gunit=pct;
symbol1 i=none f='calibri' v='$' h=4 c=green;
axis1 order=(0 to 20000 by 5000) offset=(0,0) label=none;
axis2 minor=none offset=(3,3) label=none;

* place white space above the title using the LS option;
title1 h=4 'Sales by State --- SAS/Graph-Controlled Order on X-axis' ls=1;

* place white space on left and right of the graph;
title2 a=90 ls=1;
title3 a=-90 ls=1;

footnote1 'BASED ON:  http://support.sas.com/kb/24/916.html' ls=1;
footnote2 ls=1;

%macro gplot2(data);
proc gplot data=&data;
plot sales*state / vaxis=axis1 autovref haxis=axis2;
format sales dollar8.;
run;
quit;
%mend;
OPTIONS nonumber nodate orientation="landscape";
ODS RTF FILE='C:\temp\SAS_output_test.rtf' startpage=no  
    keepn;
ODS RTF NOTOC_DATA;
ODS escapechar='^';
ODS noproctitle;
ODS RTF TEXT='^S={just=left} Dataexport XX-XX-XXXX';
title1 '^S={just=right font=("Arial", 10pt, bold)} test'
   '^S={just=right font=("Arial", 10pt, bold)} Page ^{pageof}';
%gplot2(one);
quit; 
ods rtf close;
页面布局应如下所示:

OPTIONS nonumber nodate orientation="landscape";
ODS RTF FILE='C:\temp\SAS_output_test.rtf' startpage=no  
    keepn;
ODS RTF NOTOC_DATA;
ODS escapechar='^';
ODS noproctitle;
title1 '^S={just=right font=("Arial", 10pt, bold)} test'
   '^S={just=right font=("Arial", 10pt, bold)} Page ^{pageof}';
ODS RTF TEXT='^S={just=left} Dataexport XX-XX-XXXX';
ODS RTF startpage=now; 
ods rtf close;

非常感谢,Fleischfresende

标题/脚注只有在遇到PROC时才会打印出来,因此当遇到GPLOT时,那里的标题会覆盖以前的标题。你可以试试ODS文本。是的,我知道有冲突的标题,它们会被覆盖。所以我的问题是解决问题。或者如何定义它以在没有冲突的情况下获得标题。或者可以在过程模板中定义而不被覆盖?对于这些问题我很抱歉,我是sas的新手…建议:1。改用ODS RTF文本。2.将标题全部向下滑动一个数字-改为从标题2开始?我无法测试你的代码,因为我没有SAD图。如果您在这里没有得到答案,请在communities.sas.com的图形论坛下发布一篇文章,让其中一位sas graph帮助您。好的,谢谢,请尝试文本选项。你知道如何在word文档的标题中体现这一点吗?关于你的第二个建议:我试着把所有的标题降到title4->没有什么区别。至少在我们编写的宏中没有(它与我发布的宏有些不同)。或者可以选择抑制gplot生成的标题1吗?标题/脚注只有在遇到PROC时才会打印,因此当遇到gplot时,标题会覆盖以前的标题。你可以试试ODS文本。是的,我知道有冲突的标题,它们会被覆盖。所以我的问题是解决问题。或者如何定义它以在没有冲突的情况下获得标题。或者可以在过程模板中定义而不被覆盖?对于这些问题我很抱歉,我是sas的新手…建议:1。改用ODS RTF文本。2.将标题全部向下滑动一个数字-改为从标题2开始?我无法测试你的代码,因为我没有SAD图。如果您在这里没有得到答案,请在communities.sas.com的图形论坛下发布一篇文章,让其中一位sas graph帮助您。好的,谢谢,请尝试文本选项。你知道如何在word文档的标题中体现这一点吗?关于你的第二个建议:我试着把所有的标题降到title4->没有什么区别。至少在我们编写的宏中没有(它与我发布的宏有些不同),或者可以选择抑制gplot生成的标题1吗?