是否可以在 R 的箱线图中圈出一个特定的框?这里的假设是我事先知道我必须突出显示哪些框。
问问题
274 次
2 回答
7
我衷心支持@csgillespie 的建议,只是让它变成不同的颜色。
也就是说,我玩了一下,这就是我想出的(使用@Marc的数据):
df <- data.frame(s1=rnorm(100), s2=rnorm(100, mean=2), s3=rnorm(100, mean=-2))
绘制箱线图并保留用于绘制椭圆的统计信息:
foo <- boxplot(df, border=c(8,8,1), lwd=c(1,1,3))
设置半长轴和半短轴:
aa <- 0.5
bb <- foo$stats[4,3]-foo$stats[2,3]
在第三个框周围绘制一个参数化椭圆:
tt <- seq(0,2*pi,by=.01)
lines(3+aa*cos(tt),foo$stats[3,3]+bb*sin(tt))
于 2012-11-20T12:39:25.880 回答
1
如果您想使用有点手绘的外观并且可以做一些交互部分(例如,创建一个演示文稿,其中一张幻灯片只显示情节,那么下一张幻灯片包括感兴趣的那个圈子)。
使用该
locator
功能单击感兴趣的绘图部分周围的点,您可能需要设置type='l'
以便可以看到您正在制作的形状(但随后需要重新创建绘图而不添加线条)将上面的返回值传递给
xspline
带有其他选项的函数。
例子:
boxplot(count ~ spray, data = InsectSprays, col = "lightgray")
tmp <- locator(type='l') # click on plot around box of interest
boxplot(count ~ spray, data = InsectSprays, col = "lightgray")
xspline(tmp, open=FALSE, border='red', lwd=3)
于 2012-11-20T20:18:58.167 回答