具有置信区间的箱形图并识别r中的特定数据点

shN*_*NIL 4 r graph figure ggplot2 boxplot

这是我的示例数据:

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

我想突出显示在4.5到8.2之间的置信区间内的箱线图部分.另外,我想显示不在置信区间(> 8.2且小于4.5)的数据点.输出如下:

在此输入图像描述

我只需要实现这个目标.欢迎ggplot2或其他包解决方案.

42-*_*42- 6

我没有得到那个情节,但你可以适应差异.

> boxplot(myd$myv, col = "lightgreen", ylim=c(-10,18))s
Run Code Online (Sandbox Code Playgroud)

获取透明颜色的一种方法是使用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) )
Run Code Online (Sandbox Code Playgroud)

需要构造一个逻辑向量,可以选择点值,也可以作为"计算" 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")
Run Code Online (Sandbox Code Playgroud)

根据您的规格制造......:在此输入图像描述