[英]Overlapping ggplot2 histograms with different variables
如果我有 2 个不同的变量要绘制为直方图,我该怎么做? 举个例子:
data1 <- rnorm(100)
data2 <- rnorm(130)
如果我想要在同一个图中 data1 和 data2 的直方图,有没有办法做到这一点?
您可以通过添加另一个geom_histogram
图层将它们放在同一个图中:
## Bad plot
ggplot() +
geom_histogram(aes(x=data1),fill=2) +
geom_histogram(aes(x=data2))
但是,更好的主意是使用密度图:
d = data.frame(x = c(data1, data2),
type=rep(c("A", "B"), c(length(data1), length(data2))))
ggplot(d) +
geom_density(aes(x=x, colour=type))
或方面:
##My preference
ggplot(d) +
geom_histogram(aes(x=x)) +
facet_wrap(~type)
或使用条形图(感谢@rawr)
ggplot(d, aes(x, fill = type)) +
geom_bar(position = 'identity', alpha = .5)
对@csgillespie 的回答略有变化和补充:
ggplot(d) +
geom_density(aes(x=x, colour=type, fill=type), alpha=0.5)
这使:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.