这是我的示例数据:

set.seed(1234)
myd <- data.frame (SN = 1:100, myv = round (rnorm(100, 5, 5), 2))
boxplot(myd$myv, col = "lightgreen")

我想突出显示位于 4.5 到 8.2 之间置信区间内的箱线图部分。此外,我想显示不属于置信区间(> 8.2 且小于 4.5)的数据点。输出应该是这样的:



我只需要实现这个目标。欢迎使用 ggplot2 或其他软件包解决方案。

最佳答案

我不明白那个情节,但你可以适应差异。

> boxplot(myd$myv, col = "lightgreen", ylim=c(-10,18))s

获取透明颜色的一种方法是使用 col2rgb 从命名颜色中提取 RGB 值,然后使用适当缩放的值传回 rgb:
> col2rgb("purple")
#      [,1]
#red    160
#green   32
#blue   240
> rect(0.7, 4.5, 1.3, 8.2, col= rgb( red=160/255, green=32/255, blu=240/255, 0.4) )

需要构造一个可以选择点值的逻辑向量,也可以作为 points 函数“计数”此类值的数量的基础:
> points(x=rep(1, sum( myd$myv > 8.2 | myd$myv < 4.5 )),
         y= myd$myv[   myd$myv > 8.2 | myd$myv < 4.5 ] ,
         col="orange", pch=19, bg="orange")

根据您的规范构建...:

关于r - 具有置信区间的箱线图并识别 r 中的特定数据点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14202205/

10-10 15:04