如何在SAS中的sgplot中将对数线拟合到多个系列?

时间:2016-11-15 20:55:04

标签: plot sas

我在sas中有当前的宏

%macro Plot_Rolling_Avgs(id, ylabel_, xlabel_, title_, avg_1, avg_2, avg_3, avg_4, avg_5, avg_6);
proc Sgplot data=VA_PUR_Cur_Cur_Roll;  
SERIES X = &id Y = &avg_1;
SERIES X = &id Y = &avg_2;
SERIES X = &id Y = &avg_3;
SERIES X = &id Y = &avg_4;
SERIES X = &id Y = &avg_5;
SERIES X = &id Y = &avg_6;
YAXIS LABEL = &ylabel_;
XAXIS LABEL = &xlabel_; 
Title &title_;
keylegend / location=inside position=topleft across=1;

ods graphics on / 
    width=15.0in
    height=5.0in;
run;                                                                                                                                    
quit;      
%mend Plot_Rolling_Avgs;

这给了我结果: enter image description here

我试图在每个时间序列的图表中添加对数平均线。我试图避免创建另一列对数平均值并绘制那些,而是希望有一个内置函数可供使用。

有没有人有这方面的经验?

1 个答案:

答案 0 :(得分:0)

截至9.4,SAS已经内置了两个趋势线选项:

  • REG,它适合基于多项式回归的回归趋势线(可以在0到10度之间,因此1 =线性2 =二次等)。
  • LOESS,适合LOESS平滑曲线(这是局部加权回归)

有关详细信息,请参阅the documentation for SGPLOT。不幸的是,我不相信你在这里描述的多个系列都有效。

如果从SGPLOT迁移到GTL(图形模板语言),您可能会做一些事情;你可以在图形化程序本身内进行一些计算。