您好我使用数据框中的ggplot2 geom_histogram函数绘制了一个图,请参阅下面的示例并链接到ggplot直方图需要使用嵌套的ddply函数和facet wrap来标记每个geom_vline的因子
现在我需要创建一个包含上图中使用的汇总数据的数据框.有人可以帮忙吗?提前致谢.G
Sector2 Family Year Length
BUN Acroporidae 2010 332.1300496
BUN Poritidae 2011 141.1467966
BUN Acroporidae 2012 127.479
BUN Acroporidae 2013 142.5940556
MUR Faviidae 2010 304.0405
MUR Faviidae 2011 423.152
MUR Pocilloporidae 2012 576.0295
MUR Poritidae 2013 123.8936667
NTH Faviidae 2010 60.494
NTH Faviidae 2011 27.427
NTH Pocilloporidae 2012 270.475
NTH Poritidae 2013 363.4635
Run Code Online (Sandbox Code Playgroud) 问题:为什么我不能sapply在里面打电话aes()?
下图的目标:创建显示死亡/生活比例的直方图,以便每个组/类型组合的比例总和为1(示例受前一篇文章启发).
我知道你可以通过在外面总结来制作这个数字,ggplot但问题实际上是为什么函数不能在其中工作aes.
## Data
set.seed(999)
dat <- data.frame(group=factor(rep(1:2, 25)),
type=factor(sample(1:2, 50, rep=T)),
died=factor(sample(0:1, 50, rep=T)))
## Setup the figure
p <- ggplot(dat, aes(x=died, group=interaction(group, type), fill=group, alpha=type)) +
theme_bw() +
scale_alpha_discrete(range=c(0.5, 1)) +
ylab("Proportion")
## Proportions, all groups/types together sum to 1 (not wanted)
p + geom_histogram(aes(y=..count../sum(..count..)), position=position_dodge())
Run Code Online (Sandbox Code Playgroud)

## Look at groups
stuff <- ggplot_build(p)
stuff$data[[1]]
## The long way works: proportions by group/type
p + geom_histogram(
aes(y=c(..count..[..group..==1] / …Run Code Online (Sandbox Code Playgroud)