02.07.2013 Views

现代统计图形 - 科学网—博客

现代统计图形 - 科学网—博客

现代统计图形 - 科学网—博客

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

116 第五章 图库<br />

5.23 星状图、蛛网图、雷达图<br />

星状图(Star Plot)、蛛网图(Spider Plot)和雷达图(Radar Plot)本<br />

质上是一类图形,它们都用线段离中心的长度来表示变量值的大小,这三<br />

种图形名称的区别在于星状图用来展示很多个多变量个体,各个个体的图<br />

形相互独立,从而整幅图形看起来就像很多星星,而蛛网图和雷达图将多<br />

个多变量个体放在同一张图形上,看起来就像是蛛网或雷达的形状,这样<br />

重叠的图形就称为蛛网图或者雷达图。简单说来,就是星状图有若干个中<br />

心,而蛛网图和雷达图只有一个中心。<br />

R中星状图的函数为stars(),其用法如下:<br />

1 > usage(stars, w = 0.75)<br />

stars(x, full = TRUE, scale = TRUE, radius = TRUE,<br />

labels = dimnames(x)[[1L]], locations = NULL,<br />

nrow = NULL, ncol = NULL, len = 1, key.loc = NULL,<br />

key.labels = dimnames(x)[[2L]], key.xpd = TRUE,<br />

xlim = NULL, ylim = NULL, flip.labels = NULL,<br />

draw.segments = FALSE, col.segments = 1L:n.seg,<br />

col.stars = NA, axes = FALSE, frame.plot = axes,<br />

main = NULL, sub = NULL, xlab = "", ylab = "",<br />

cex = 0.8, lwd = 0.25, lty = par("lty"), xpd = FALSE,<br />

mar = pmin(par("mar"), 1.1 + c(2 * axes + (xlab !=<br />

""), 2 * axes + (ylab != ""), 1, 0)), add = FALSE,<br />

plot = TRUE, ...)<br />

参数x为一个多维数据矩阵或数据框,每一行数据将生成一个星形;<br />

full为逻辑值,决定了是否使用整圆(或半圆);scale决定是否将数据标<br />

准化到区间[0, 1]内;radius决定是否画出半径;labels为每个个体的名称,<br />

默认为数据的行名;locations以一个两列的矩形给出每个星形的放置位<br />

置,默认放在一个规则的矩形网格上,若提供给该参数一个长度为2的向<br />

量,那么所有的星形都将被放在该坐标上,从而形成蛛网图或雷达图;<br />

nrow和ncol分别给定网格的行数和列数以便摆放星形,默认nrow等于ncol;<br />

len为半径和线段的缩放倍数;key.loc提供比例尺的坐标位置;key.labels为<br />

比例尺的标签,默认为变量名称;key.xpd设定比例尺的作图范围,回<br />

顾3.1小节(par(’xpd’));flip.labels设定每个星形底部的名称是否互相上<br />

下错位,以免名称太长导致文本之间互相重叠;draw.segments设定是否<br />

作线段图,即:每个变量以一个扇形表示;col.segments设定每个扇形区

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!