【发布时间】:2015-01-14 22:36:19
【问题描述】:
我有一个包含四列的数据框,如下所示:
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)
生产者:
我不喜欢条形的不透明特性,因为它们掩盖了重叠直方图的形状。我知道我可以使用找到的代码here 来手动管理我的直方图的颜色;但这似乎是一个乏味的过程,我确信一定有更好的方法。
相反,我试图复制 question 中所做的事情
> bl = wt$Beef.Low
> bh = wt$Beef.High
> cl = wt$Cereal.Low
> ch = wt$Cereal.High
> wts = rbind(bl,bh,cl,ch)
> wtss = as.data.frame(wts)
> ggplot(wtss, aes("Weight", fill="Diet")) + geom_histogram(alpha=0.5, aes(y = "Frequency"), position="identity")
但它不起作用,我对 ggplot 命令的理解还不够好,甚至无法知道原因。请帮忙。
【问题讨论】:
-
对于ggplot,首先像this answer那样融化数据会更容易
-
@rawr:我不明白融化的作用。它说它创建了一个“熔化的数据框”,但我不知道这是什么意思