我的问题与在R ggplot中将直方图y轴归一化为比例类似,但我想要补充一些内容。
一般来说,我有一个2x3的面板设计中包含6个直方图,我希望将它们分别归一化。我会尝试在这里创建一个示例数据集以提供一个思路:
hvalues=c(3,1,3,2,2,5,1,1,12,1,4,3)
season=c("fall","fall","fall","fall","winter","winter","winter","winter","summer","summer","summer","summer")
year=c("year 1","year 1","year 2","year 2","year 1","year 1","year 2","year 2","year 1","year 1","year 2","year 2")
group=c("fall year 1","fall year 1","fall year 2","fall year 2","winter year 1","winter year 1","winter year 2","winter year 2","summer year 1","summer year 1","summer year 2","summer year 2")
all=data.frame(hvalues,season,year)
使用
ggplot(all, aes(x=hvalues,group=group)) +
geom_histogram(aes(y=..count../sum(..count..))) +
facet_grid(season ~ year)
给出整体比例(即结合所有方面)。我希望每个分组方面都归一化为1。在我的实际数据中,hvalues不是整数-它们是数字。
我是一个使用R的新手,并真的很感激任何帮助。先谢谢了!
y = ..density..
。 - joranall
必须是一个数据框。尝试使用all <- as.data.frame(cbind(hvalues,season,year))
。 - Jonas Tundoas.data.frame(cbind(...))
代替data.frame(...)
。 - joran?stat_bin
并尝试其中的选项。我认为也许..ncount..
是你要找的。 - joran