大年初一,无聊...距回城还有5天。
不知道大家刚进入公司的时候会不会培训画图的一些知识,我记得我当初培训的时候一点画图的知识都没讲,都是靠后面自己一点点模仿和自学了解的。你没培训过也没关系,我们一起来培训。给自己2023定的主题目标就是“好好学习”。
今天介绍GTL常用的一些基础选项,可以说画图都会用上大部分选项。
首先我们来比较一下GTL和SGPLOT常画的图的区别,比如散点图在SGPLOT里面是SCATTER,但是在GTL里面就是SCATTERPLOT,其他常用的图我用方框圈出来了。
所以如果你想用SGPLOT画图,在SASHELP搜索对应的选项就行了。
常用的一些options:
①:XAXISOPTS = ( ),X轴选项,Y轴就是YAXISOPTS = ( ),都是通用的,这个可以说是最大的包围,然后在里面定义更多的轴属性。注意是在layout overlay里面使用。
layout overlay/XAXISOPTS = ( )
endlayout;
②:LABEL="",定义X轴/Y轴的标签,这也是常用的,因为画图X轴Y轴都是需要标签的,放在XAXISOPTS = ( )里面。
③:LABELATTRS = (COLOR = SIZE = ),定义标签的属性,同样放在XAXISOPTS = ( )里面。
④:TICKVALUEATTRS = (COLOR = SIZE = ),修改轴上的标记属性,如颜色和大小。同样放在XAXISOPTS = ( )里面。
⑤:LINEAROPTS = ( ),控制轴上的值。
⑥:TICKVALUESEQUENCE = (START = END = INCREMENT = ),给定的值将是绘制的值,只要它们在实际数据范围内。放在LINEAROPTS= ( )里面。
⑦:VIEWMIN = VIEWMAX =,用于缩小或扩展轴数据范围。放在LINEAROPTS= ( )里面。
下面我们将通过实际例子看一看这些选项的作用:代码差不多还是沿用昨天的文章。然后先用一些默认选项看看输出
数据集你们可以自己查看SASHELP.CARS,可以看到8000被挤的快看不见了,这时候我们就可以通过VIEWMAX选项改善这个输出;然后我们通过TICKVALUEATTRS改变一下X轴的属性
代码改动如下:
看下输出,所以这知道VIEWMAX的作用了吧
VIEWMAX:Specifies the maximum data value to include in the display.我觉得可以理解成默认的X轴的范围,但是具体显示什么数字还是通过linearopts里面的tickvaluesequence。接下来我们看看改动VIEWMIN是什么样的:我们把viewmin改成100,发现0不显示了。
所以我们可以认为tickvaluesequence里面的值只有在VIEWMIN,VIEWMAX的范围才会显示(待多次验证)
其他选项没什么好说的,就按照字面意思就行。如果你知道X轴或者Y轴的具体数值,而且数量很少,那么你可以直接通过tickvaluelist=(1 4 12 24 36 48) 和tickdisplaylist=('1' '4' '12' '24' '36' '48')直接列出来,就不用通过TICKVALUESEQUENCE 线性增长了。
最后再讲一个小知识点,我们发现X轴和Y轴的0起点都不是在交点开始,那么如何让0都从交点开始呢?有时候项目会这样要求。
这个我们可以通过offsetmin=0就可以实现了:offsetmin=在轴的最小端保留一个区域。预留区域不显示勾号Reserves an area at the minimum end of the axis. No tick marks are displayed in the reserved area.。
offsetmin=需要注意的地方如下,默认值是AUTO,所以一般项目没有特殊需求,我们都不写这个选项
我们改成0.5看看是什么效果
所以你知道你这个选项的作用了吧,但是在画KM图的时候,这样可能会把AT RISK的只覆盖,这个我们以后有机会再讲。
网友评论