如果是PROC PRINT、PROC REPORT 和PROC TABULATE步则可以在PROC 里面设置OPTIONS,style= 来修改表格样式,此时是对整个表格的样式集中进行调整,在PROC PRINT 步的STYLE OPTIONS选项命令如下:
PROC PRINT STYLE(location-list)={style attribute = value}
如: STYLE(DATA)={BACKGROUND = pink}
location list 指定表格哪个部分需要调整,style attribute指定哪个样式需要调整,value指定调整的形式。可以在PROC PRINT步指定多个STYLE= 选项来对表格不同部分的样式进行调整,也可以在location list内对不同部分设置同一个样式。
以下是常见的location-list :
DATA OBS列或者ID列外所有的表格数据
HEADER 除ID或OBS列外所有的列标题
OBS OBS列数据或ID列数据
OBS OBS列标题或者ID列标题
TOTAL 使用SUM 语句计算的TOTAL行数据
GRANDTOTAL 使用SUM语句计算总TOTAL行数据
如果仅需对某些列的样式进行调整,可以使用:
VAR variable-list/STYLE(location list)={style-attribute=value},若要对不同的变量设置不同样式,可以设置多个VAR 语句。但值得注意的是,此时的location list只有DATA和HEADER两个选项。
以VAR语句添加STYLE OPTIONS 举例如下:
PROC PRINT DATA=skating
STYLE(DATA)={BACKGROUP=GRAY FOREGROUND=WHITE}
TITLE "Women" " 's 5000 Meter Speed Skating";
VAR Name Country Time;
VAR Record/STYLE(DATA) = {FONT_STYLE = ITALIC JUST = CENTER};
ID Year;
RUN;
在PROC REPORT 里面设置STYLE= 来修改输出表格样式,如:
PROC REPORT STYLE(location list)={style attribute=value};location list(位置)、style attribute(样式)、value(形式)的含义和使用方式与PROC PRINT步相同。常见的location list有:
header 列标题
column 表格数据
summary BREAK或者RBREAK计算的总结行(SUMMARIZE)
在proc report 步的定义的STYLE适用于整张表格,可以在DEFINE 语句内定义STYLE= 适用于该DEFINE 设置的变量,
如:break after month/summarize style(summary)={background=red};
举例说明:
proc report data=skating nowindows spanrows(spanrows将相同的group值合并)
style(column)={background=gray foreground=white};
column country name numgold ;
define country/group
style(column)={font_style=italic just=center};
title "olympic women" " 's speed skating"
run;
在proc tabulate 也可以使用STYLE= 对表格进行修饰,与proc report、proc print使用一致性,但是没有location list,语句如下:style={ style attribute=value},以下是可以使用style的proc tabulate 的语句和style的适用范围:
proc tabulate 所有的表格数据
class class variable变量名标题
classlev class variable值标题
table(crossed with elements) 定义的表格数据
var 分析变量名标题
在proc tabulate 里面使用style={ style attribute=value},但是
在table语句里面使用{style={ style attribute=value}}的方式如下,类似于加入cross变量,用*连接:
table city,month all*{style={background=red}};
在class、classlev和var语句后加入斜杠"/" 在使用style={ style attribute=value}选项,在classlev 出现的变量必须在class 中出现,如:classlev month/style={foreground=green};
举例说明:
proc tabulate data=skating
style={background=gray foreground=white just=center};
class year record;
table year=" ",record*N=" ";
title "men's speed skating olympics record";
run;