R-如何将多个直方图绘制在一起?
我有一个包含四列的数据框,如下所示:R-如何将多个直方图绘制在一起?,r,histogram,R,Histogram,我有一个包含四列的数据框,如下所示: Beef-Low Beef-High Cereal-Low Cereal-High 90 73 107 98 76 102 95 74 90 118 97 56 64 104 80 111 86 81 98
Beef-Low Beef-High Cereal-Low Cereal-High
90 73 107 98
76 102 95 74
90 118 97 56
64 104 80 111
86 81 98 95
51 107 74 88
72 100 74 82
90 87 67 77
95 117 89 86
78 111 58 92
我想制作一个直方图,将所有四列显示为不同颜色的条形图,因此我尝试:
> hist(wt$Beef.Low, main="Weight Gain Across Four Diets", xlab="Weight Gain", col="coral", xlim=c(0,120), ylim=c(0,4))
> hist(wt$Beef.High, col="coral3", add=T)
> hist(wt$Cereal.Low, col="yellow", add=T)
> hist(wt$Cereal.High, col="yellow3", add=T)
产生了:
我不喜欢这些条的不透明性质,因为它们掩盖了重叠直方图的形状。我知道我可以使用找到的代码来手动整理直方图的颜色;但这似乎是一个乏味的过程,我确信一定有更好的方法
取而代之的是,我试图复制这本书的内容
但它不起作用,而且我对ggplot命令的理解不够透彻,甚至不知道为什么。请帮忙。我倾向于用刻面来做这件事。否则,对于数据集,结果是无法理解的
library(reshape2)
library(ggplot2)
gg <- melt(wt)
ggplot(gg, aes(x=value, fill=variable)) +
geom_histogram(binwidth=10)+
facet_grid(variable~.)
library(重塑2)
图书馆(GG2)
gg对于ggplot来说,首先像@rawr中那样融合数据会更容易:我不明白melt是做什么的。它说它创建了一个“熔铸的数据框架”,但我不知道这意味着什么。它工作得很好,是我问题的一个优雅的解决方案。我仍然不明白melt是做什么的,也不知道melt数据帧是什么。@Slavatron它看起来像是把df变成了一个向量来轻松地记录它
library(reshape2)
library(ggplot2)
gg <- melt(wt)
ggplot(gg, aes(x=value, fill=variable)) +
geom_histogram(binwidth=10)+
facet_grid(variable~.)