SAS到了9.13,应该说作图功能强大了不少。proc gchart命令可以做九种图,分别是:block(方块图)、hbar(水平条图)、hbar3d(3d水平条图)、vbar(垂直条图)、vbar3d(3d垂直条图)、pie(饼图)、pie3d(3d饼图)、dount(环形图)、star(星形图)。我以绘制直方图为例:(参照《卫生统计学第5版》p27)

     首先直方图是针对连续型变量而言的,说离散型变量(discrete variable)和连续性变量(continuous variable)是针对定量变量(quantitative variable)来说的。而定性变量(qualitative variable)则是分为分类变量(catagorical variable)或名义变量(nominative variable)和有序变量(ordinal variable)或等级变量两种。
    绘制直方图时,所用的gchart命令格式主要如下:
    proc gchart;
    vbar x/type=freq space=0;
    run;
    tips:space必须标注为0,否则默认的条块间是有间隔的,就成了直条图了。直条图是针对离散型变量等的。
   当然也可以用另一个命令语句来做直方图的,如下:
   proc capability;
   histogram x;
   run;
   tips:histogram只是proc capability;的一个option,所以proc capability;不能省。
  
    现在说说个别proc gchart;vbar x下的option:
    sumvar:用来计算数值型变量的sum和mean。当使用了sumvar时,type必须是sum或mean,默认情况下type=sum。
    type:用来指定所做直方图的纵坐标。如果sumvar没有使用的话,可以指定以下任意值:freq(默认),cfreq(cumulative frequency),percent pct(percentage),cpercent cpct(cumulative percentage);如果使用了sumvar,就只能使用sum(默认)和mean了。
    midpoints:用来指定分段的组中值。对于数值型变量,即可以指定具体的值,也指定区间(指定区间的增量increment),或者两者可以合用。如:
    n(1,2,3,...,n)
    n1 to n2 (by increment)
    (1,2,3,...,n) n1 to n2 (by increment) (n (1,2,...,n))