使用R中的刻面网格单独高亮显示数据

使用R中的刻面网格单独高亮显示数据,r,ggplot2,facet,R,Ggplot2,Facet,我使用R中的facet_网格绘制5个不同组的RT数据。我想强调一下每组5%到95%之间的数据 对于下面的代码,我使用的是整个数据帧的百分比,而不是每组的百分比。是否知道我如何仍然可以使用facet_网格,并在绘图中突出显示每个组的唯一百分比 rect <- data.frame (xmin=quantile(ss$RT, c(0.05)), xmax=quantile(ss$RT, c(0.95)), ym

我使用R中的facet_网格绘制5个不同组的RT数据。我想强调一下每组5%到95%之间的数据

对于下面的代码,我使用的是整个数据帧的百分比,而不是每组的百分比。是否知道我如何仍然可以使用facet_网格,并在绘图中突出显示每个组的唯一百分比

rect <- data.frame (xmin=quantile(ss$RT, c(0.05)), 
                    xmax=quantile(ss$RT, c(0.95)), 
                    ymin=-Inf, ymax=Inf)


qplot(prevRT, RT, group=ss, color = prim, 
      geom = c("smooth"), 
      method="lm", data =ss) + 
   facet_grid(~ Groupe) + 
   geom_rect(data=rect, 
             aes(xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax), 
             color="grey20", alpha=0.5, inherit.aes = FALSE)

rect多亏了DWin的建议,我使用ave分别查找每组的xmin和xmax,并将其直接合并到绘图命令中

也许有一种更优雅的方法可以做到这一点(欢迎提出建议),但它是有效的

qplot(prevRT, RT, group=ss, color = prim, 
 geom = c("smooth"), 
 method="lm", data =ss) + 
 facet_grid(~ Groupe) + 
 geom_rect(data=ss, 
      aes(xmin=ave(ss$RT, ss$Groupe, FUN = function(x)quantile(x,c(0.05))),      
      xmax=ave(ss$RT, ss$Groupe, FUN = function(x)quantile(x,c(0.95))),
      ymin=-Inf,ymax=Inf), color="green", alpha=1/280, inherit.aes = FALSE)

也许可以使用
ave
计算“ss”中的“Groupe”来计算“ymin”和“ymax”?我真的不知道怎么做,你能给我举个例子吗?你有责任提供这个例子。非常感谢你,我使用了ave(我以前从未使用过)在我的数据框中添加了两列新的分位数,效果非常好。你应该编写代码,发布代码,插入一个图形,然后选中它。