我希望有一个图表,其中显示一个数据集的直方图和另一个数据集的密度图。
我可以制作直方图和密度图,但我不能让不需要的直方图/密度图消失。
例如:
library(ggplot2)
set.seed(1234); dat <- data.frame(cond = factor(rep(c("A","B"), each=200)),
rating = c(rnorm(200),rnorm(200, mean=.8)))
# Overlaid histograms
ggplot(dat, aes(x=rating, fill=cond)) +
geom_histogram(aes(y=..density..),binwidth=.5, alpha=.5, position="identity") + geom_density(alpha=.3)
我想摆脱(例如)红色直方图和蓝色密度图,留下蓝色直方图和红色密度图。
非常感谢任何帮助!
答案 0 :(得分:3)
通过将ggplot图层中的调用分隔为不同的数据集,我将如何做到这一点,以便每个图层只处理您想要的内容。我使数据集不同以使其更加明显。:
library(ggplot2)
set.seed(1234);
dat <- data.frame(cond = factor(rep(c("A"), each=200)),
rating = c(rnorm(200),rnorm(200, mean=.8)))
dat2 <- data.frame(cond = factor(rep(c("B"), each=200)),
rating = c(rnorm(200),rnorm(200, mean=.6)))
# Overlaid histograms
ggplot() +
geom_histogram(data = dat, aes(x=rating, fill=cond, y=..density..),binwidth=.5, alpha=.5, position="identity") +
geom_density(data = dat2, aes(x=rating, fill=cond), alpha=.3)
答案 1 :(得分:1)