请考虑以下几行.
p <- ggplot(mpg, aes(x=factor(cyl), y=..count..))
p + geom_histogram()
p + stat_summary(fun.y=identity, geom='bar')
Run Code Online (Sandbox Code Playgroud)
理论上,最后两个应该产生相同的情节.在实践中,stat_summary
失败并抱怨所需的美学缺失.
为什么我不能用..count..
的stat_summary
?我在文档中找不到有关如何使用这些变量的信息.
Bri*_*ggs 42
扩大@ joran的评论,在ggplot的特殊变量与他们(双左右时间..count..
,..density..
等)由原始数据集的统计改造返回.这些特定的返回由stat_bin
隐式调用geom_histogram
(在文档中注意stat
参数的默认值是"bin"
).您的第二个示例调用不同的stat函数,该函数不会创建名为的变量..count..
.您可以使用相同的图表
p + geom_bar(stat="bin")
Run Code Online (Sandbox Code Playgroud)
在较新版本中ggplot2
,也可以使用stat
函数而不是封闭..
,因此aes(y = ..count..)
变为aes(y = stat(count))
.