我不时使用..density..
,这很棒。 ggplot2
一书中有很多例子,以及..count..
。通过stat_density documentation,我了解了..scaled..
。看到有人在StackOverflow上使用..n..
,我发现了这一点。现在我只是想知道我还缺少什么。
搜索引擎似乎忽略了搜索字符串中的.
,例如“..n .. ggplot2”,即使我将其转义。这些变量有一个通用术语吗?还有更多吗?我在哪里可以找到关于它们的文档?
答案 0 :(得分:19)
以下是 ggplot2 帮助文件中提到的所有..*..
选项(或者至少可以通过键入?"<func>"
提出的帮助文件,其中"<func>"
1}}是指 ggplot2 )导出的其中一个函数。
library(ggplot2)
## Read all of the ggplot2 help files and convert them to character vectors
ex <- unlist(lapply(ls("package:ggplot2"), function(g) {
p = utils:::index.search(g, find.package(), TRUE)
capture.output(tools::Rd2txt(utils:::.getHelpFile(p)))
}))
## Extract all mentions of "..*.." from the character vectors
pat <- "\\.\\.\\w*\\.\\."
m <- gregexpr(pat, ex)
unique(unlist(regmatches(ex,m)))
# [1] "..density.." "..count.." "..level.." "..scaled.." "..quantile.."
# [6] "..n.."
或者,要找出哪个帮助文件记录了哪个..*..
,请执行此操作:
library(ggplot2)
ex <- sapply(ls("package:ggplot2"), function(g) {
p = utils:::index.search(g, find.package(), TRUE)
capture.output(tools::Rd2txt(utils:::.getHelpFile(p)))
}, simplify=FALSE, USE.NAMES=TRUE)
res <- lapply(ex, function(X) {
m <- gregexpr("\\.\\.\\w*\\.\\.", X)
unique(unlist(regmatches(X, m)))
})
res[sapply(res, length) > 0]
答案 1 :(得分:0)
从 ggplot2 版本 3.3.0 (2020-03-05) 开始,(来自更新日志):
<块引用>现在可以更精细地控制美学的评估时间。 after_stat()
取代了 stat()
和 ..var..
符号的使用,并由 after_scale()
加入以允许映射到缩放的美学值。 stage()
现在支持重新映射相同的美学,因此您可以将数据变量映射到 stat 美学,并在统计转换后将相同的美学重新映射到其他事物
因此 ..var..
变量没有实际意义,您应该尝试研究并使用 after_stat
。