饼图是将值表示为具有不同颜色的圆的切片。 片被标记,并且对应于每个片的数字也在图表中表示。
在SAS中,饼图使用PROC TEMPLATE创建,它采用参数来控制百分比,标签,颜色,标题等。
基本的语法来创建一个饼图的SAS是:
PROC TEMPLATE;
DEFINE STATGRAPH pie;
BEGINGRAPH;
LAYOUT REGION;
PIECHART CATEGORY = variable /
DATALABELLOCATION = OUTSIDE
CATEGORYDIRECTION = CLOCKWISE
START = 180 NAME = 'pie';
DISCRETELEGEND 'pie' /
TITLE = ' ';
ENDLAYOUT;
ENDGRAPH;
END;
RUN;
以下是使用的参数的描述:
在这个饼图中,我们从数据集中获取单个变量。 创建饼图时,使用表示变量计数相对于变量总值的分数的切片值。
在下面的例子中,每个切片代表汽车类型与汽车总数的比例。
PROC SQL;
create table CARS1 as
SELECT make,model,type,invoice,horsepower,length,weight
FROM
SASHELP.CARS
WHERE make in ('Audi','BMW')
;
RUN;
PROC TEMPLATE;
DEFINE STATGRAPH pie;
BEGINGRAPH;
LAYOUT REGION;
PIECHART CATEGORY = type /
DATALABELLOCATION = OUTSIDE
CATEGORYDIRECTION = CLOCKWISE
START = 180 NAME = 'pie';
DISCRETELEGEND 'pie' /
TITLE = 'Car Types';
ENDLAYOUT;
ENDGRAPH;
END;
RUN;
PROC SGRENDER DATA = cars1
TEMPLATE = pie;
RUN;
当我们执行上面的代码,我们得到以下输出:
在此饼图中,我们表示每个切片的分数值以及百分比值。 我们还将标签的位置更改为图表内。 使用DATASKIN选项修改图表的外观样式。 它使用SAS环境中提供的内置样式之一。
PROC TEMPLATE;
DEFINE STATGRAPH pie;
BEGINGRAPH;
LAYOUT REGION;
PIECHART CATEGORY = type /
DATALABELLOCATION = INSIDE
DATALABELCONTENT=ALL
CATEGORYDIRECTION = CLOCKWISE
DATASKIN= SHEEN
START = 180 NAME = 'pie';
DISCRETELEGEND 'pie' /
TITLE = 'Car Types';
ENDLAYOUT;
ENDGRAPH;
END;
RUN;
PROC SGRENDER DATA = cars1
TEMPLATE = pie;
RUN;
当我们执行上面的代码,我们得到以下输出:
在该饼图中,图中呈现的变量的值相对于相同数据集的另一变量分组。 每个组变为一个圆,并且该图具有与可用组的数量一样多的同心圆。
在下面的示例中,我们将图表相对于名为“Make”的变量分组。 由于有两个可用的值(“Audi”和“BMW”),所以我们得到两个同心圆,每个代表自己的车类型的切片。
PROC TEMPLATE;
DEFINE STATGRAPH pie;
BEGINGRAPH;
LAYOUT REGION;
PIECHART CATEGORY = type / Group = make
DATALABELLOCATION = INSIDE
DATALABELCONTENT=ALL
CATEGORYDIRECTION = CLOCKWISE
DATASKIN= SHEEN
START = 180 NAME = 'pie';
DISCRETELEGEND 'pie' /
TITLE = 'Car Types';
ENDLAYOUT;
ENDGRAPH;
END;
RUN;
PROC SGRENDER DATA = cars1
TEMPLATE = pie;
RUN;
当我们执行上面的代码,我们得到以下的输出: