Boxplot是通过四分位数的数字数据组的图形表示.箱形图也可以具有从箱子(胡须)垂直延伸的线,指示上下四分位数之外的可变性.盒子的底部和顶部始终是第一个和第三个四分位数,盒子内的带子总是第二个四分位数(中位数).在SAS中,使用 PROC SGPLOT 创建一个简单的Boxplot,并使用 PROC SGPANEL 创建镶板的boxplot.
请注意我们创建的第一个示例中的数据集名为CARS1,并为所有后续数据集使用相同的数据集.此数据集保留在工作库中,直到SAS会话结束.
语法
在SAS中创建箱图的基本语法是 : 去;
PROC SGPLOT DATA = DATASET; VBOX VARIABLE / category = VARIABLE;RUN; PROC SGPANEL DATA = DATASET;;PANELBY VARIABLE; VBOX VARIABLE> / category = VARIABLE;RUN;
以下是所用参数的说明及减号;
DATASET : 是使用的数据集的名称.
VARIABLE : 是用于绘制Boxplot的值.
简单Boxplot
在一个简单的Boxplot中我们从数据集中选择一个变量,从而形成另一个变量.第一个变量的值被分类为与第二个变量中的不同值的数量一样多的组.
示例
在在下面的示例中,我们选择变量马力作为第一个变量,并键入类别变量.所以我们得到了每种类型汽车的马力值分布的箱形图.
PROC SQL;create table CARS1 asSELECT make, model, type, invoice, horsepower, length, weight FROM SASHELP.CARS WHERE make in ('Audi','BMW');RUN;PROC SGPLOT DATA = CARS1; VBOX horsepower / category = type; title 'Horsepower of cars by types';RUN;
当我们执行上面的代码时,我们得到以下输出 :
垂直面板中的Boxplot
我们可以将变量的Boxplots划分为多个垂直面板(列).每个面板都包含所有分类变量的箱线图.但是箱形图进一步使用另一个第三个变量进行分组,该变量将图形划分为多个面板.
示例
在下面的示例中,我们已经对图表进行了镶嵌使用变量'make'.由于'make'有两个不同的值,所以我们得到两个垂直面板.
PROC SGPANEL DATA = CARS1;PANELBY MAKE; VBOX horsepower / category = type; title 'Horsepower of cars by types';RUN;
当我们执行上面的代码时,我们得到以下输出 :
水平面板中的Boxplot
我们可以将变量的Boxplots划分为多个水平面板(行).每个面板都包含所有分类变量的箱线图.但是,使用另一个第三个变量对箱形图进行进一步分组,该变量将图形划分为多个面板.在下面的示例中,我们使用变量'make'对图表进行了镶嵌.由于'make'有两个不同的值,所以我们得到两个水平面板.
PROC SGPANEL DATA = CARS1;PANELBY MAKE / columns = 1 novarname; VBOX horsepower / category = type; title 'Horsepower of cars by types';RUN;
当我们执行上面的代码时,我们得到以下输出 :