您好我正在尝试在SAS中使用BY GROUP语句来生成多个图形。我想将每个图形打印到以BY GROUP可变值命名的单个文件中,另外我想在每个图形中添加一个脚注,我希望在图形1中添加文本“此图形为2300-01”,并希望将其增加1为下一个图表“此图是2300-02”等等。
goptions reset=all border;
data grainldr;
length country $ 3 type $ 5;
input year country $ type $ amount;
megtons=amount/1000;
datalines;
1995 BRZ Wheat 1516
1995 BRZ Rice 11236
1995 BRZ Corn 36276
1995 CHN Wheat 102207
1995 CHN Rice 185226
1995 CHN Corn 112331
1995 INS Wheat .
1995 INS Rice 49860
1995 INS Corn 8223
1995 USA Wheat 59494
1995 USA Rice 7888
1995 USA Corn 187300
;
proc sort data=grainldr out=temp;
by country;
run;
proc sgplot data=temp (where=(megtons gt 31));
by country;
series x=type y= amount;
series x=type y=megtons;
title "Leading #byval(country) Producers"
j=c "1995 and 1996";
footnote1 j=r "This graph is 2300-&XY.";
run;
退出;
答案 0 :(得分:1)
如果数据集中有BY变量,则可以使用它。例如,如果您有一个名为CID(国家/地区ID)的变量,并且它具有值“01”,“02”等,那么您可以执行以下操作:
proc sort data=grainldr out=temp;
by country cid;
run;
footnote1 j=r "This graph is 2300-#byval2";
proc sgplot data=temp (where=(megtons gt 31));
by country cid;
...
...
运行;
在这种情况下,#BYVAL2指的是第二个BY变量的值,即CID