SAS编程:Figure输出时,如何反转坐标轴?

最近出一张Figure时,统计师给了一个Comments:Is it possible to flip the graph over the x-axis?,具体是希望Figure输出时,Y轴的刻度反转。比方说,现在Y轴刻度是-50到50统计师希望是50到-50。我看了下当前的Figure输出,两个试验组线图主要集中在0轴下方,看起来可能不太美观。

实现坐标反转,很简单,一个坐标轴选项就可以控制:reverse = true。该选项想效果,我用之前的折线图的代码进行举例。

***Get data for figure put;
data stocks2;
  set sashelp.stocks(where=(date between "1jan02"d and "31dec02"d));
  format date MONNAME3.;
run;

***Create figure template;
proc template;
  define statgraph Seriesplot2;
    begingraph;
      layout overlay/
        yaxisopts=(label="Close")
        xaxisopts=(label="Month" type=discrete);

        seriesplot y = close x = date / group = stock groupdisplay = cluster name = "Seriousplot";
 
      endlayout;
    endgraph;
  end;
run;

***Render template;
proc sgrender data=stocks2 template=Seriesplot2;
run;

未使用revwese选项的输出结果如下:

Output1

在Template过程步中的Y轴选项中,加入reverse = true:

***Create figure template;
proc template;
  define statgraph Seriesplot2;
    begingraph;
      layout overlay/
        yaxisopts=(label="Close" reverse = true)
        xaxisopts=(label="Month" type=discrete);

        seriesplot y = close x = date / group = stock groupdisplay = cluster name = "Seriousplot";
 
      endlayout;
    endgraph;
  end;
run;

加入反转选项后的,结果如下:


Output2

统计师只是希望这次Figure输出时Y轴反转,一般这个选项也不太会用到,就当是一个SAS小技巧的积累。如果不知道这个选项,通过Y轴坐标系数运算实现坐标反转也是可以的。不过,相应的选项还是方便快捷一点。

以上。

若有疑问,欢迎评论区留言讨论。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容