编辑 GGally::ggpairs 中的单个 ggplots:如何在 ggpairs 中不填充密度图?
Edit individual ggplots in GGally::ggpairs: How do I have the density plot not filled in ggpairs?
有
library(GGally)
data(diamonds, package="ggplot2")
diamonds.samp <- diamonds[sample(1:dim(diamonds)[1],200),]
# Custom Example
ggpairs(
diamonds.samp[,1:5],
mapping = ggplot2::aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = wrap("densityDiag")),
title = "Diamonds"
)
我明白了
如何使对角线密度图不被填充,只显示线条?
有点作品...但不是真的。
就代码而言,这真的很丑陋,因为它对我来说没有任何意义。此外,它在这里不起作用,因为它也会更改直方图。
ggpairs(
diamonds.samp[,1:5],
mapping = ggplot2::aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = wrap("densityDiag"), mapping = ggplot2::aes(fill=carat)),
title = "Diamonds"
)
问题的答案可以在https://cran.r-project.org/web/packages/GGally/vignettes/ggpairs.html (archived here)
上找到
ggally_mysmooth <- function(data, mapping, ...){
ggplot(data = data, mapping=mapping) +
geom_density(mapping = aes_string(color="cut"), fill=NA)
}
ggpairs(
diamonds.samp[,1:5],
mapping = aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = ggally_mysmooth),
title = "Diamonds"
)
有
library(GGally)
data(diamonds, package="ggplot2")
diamonds.samp <- diamonds[sample(1:dim(diamonds)[1],200),]
# Custom Example
ggpairs(
diamonds.samp[,1:5],
mapping = ggplot2::aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = wrap("densityDiag")),
title = "Diamonds"
)
我明白了
如何使对角线密度图不被填充,只显示线条?
有点作品...但不是真的。
就代码而言,这真的很丑陋,因为它对我来说没有任何意义。此外,它在这里不起作用,因为它也会更改直方图。
ggpairs(
diamonds.samp[,1:5],
mapping = ggplot2::aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = wrap("densityDiag"), mapping = ggplot2::aes(fill=carat)),
title = "Diamonds"
)
问题的答案可以在https://cran.r-project.org/web/packages/GGally/vignettes/ggpairs.html (archived here)
上找到ggally_mysmooth <- function(data, mapping, ...){
ggplot(data = data, mapping=mapping) +
geom_density(mapping = aes_string(color="cut"), fill=NA)
}
ggpairs(
diamonds.samp[,1:5],
mapping = aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = ggally_mysmooth),
title = "Diamonds"
)