11

我发现这个变量有点令人困惑,例如,来自文档:

require(ggplot2)
require(reshape2)
volcano3d <- melt(volcano) 
names(volcano3d) <- c("x", "y", "z") 
v <- ggplot(volcano3d, aes(x, y, z = z)) 
v1 = v +  stat_contour(aes(colour=..level..,size=..level..)) 

为什么我不能使用这个:

v2 = v +  stat_contour(aes(colour=as.factor(z),size=as.factor(z))) 
4

1 回答 1

7

来自 Hadley Wickham 的A Layered Grammar of Graphics,第 21 页,使用.. ..是因为原始数据集中不存在美学(在本例中为轮廓的级别),而是由轮廓统计量计算得出。

这两个点是一个视觉指示器,突出显示原始数据中不存在该变量,但已由统计数据计算。

您不能使用colour=as.factor(z)orsize=as.factor(z)因为图形不使用z,而是使用它的统计转换 - 即,..level..

于 2013-12-02T20:43:14.410 回答