r - 在 R 中使用 plotCI 时更改参数。(向左或向右移动点)

标签 r parameters confidence-interval

我知道您可以通过在代码中添加“at=1:6-0.2”或“at=1:6+0.2”来在图表上向左或向右移动箱线图,但当我这样做时情况并非如此我正在使用 plotCI。有谁知道如何执行这个简单的参数调整?我知道这一定很简单,但是这里关于 plotCI 的问题很少。它在包 {gplots} 中。这真让我抓狂!谢谢你的帮助。 -亚历克斯

最佳答案

如果你想移动一切(点和误差条),那么你需要做的就是向 plotCI 的 x 参数添加少量:

plotCI(x=myx+0.2,y=...)

但这看起来很奇怪,所以也许您的意思是要在正确的位置绘制,但将误差线稍微向右移动?这对我来说仍然很奇怪,但是通过获取 plotCI 的代码,将其放入包装函数并向包装函数添加一个小的偏移参数,传递给 plotCI 代码的相关部分,这可以很容易地完成。

经检查,plotCI 的代码有点长,所以我不会在这里重现整个代码。在控制台输入 plotCI,将结果复制并粘贴到文本文件中,然后调用新函数,例如 plotCI_offset。我相信,如果您随后在最终的 if/else 语句中更改 myarrow 函数调用的 x 坐标参数,您就会大获全胜。

新函数 def 看起来像这样:

plotCI_offset <- function (x, y = NULL, uiw, liw = uiw, ui, li, err = "y", ylim = NULL, 
xlim = NULL, type = "p", col = par("col"), barcol = col, 
pt.bg = par("bg"), sfrac = 0.01, gap = 1, lwd = par("lwd"), 
lty = par("lty"), labels = FALSE, add = FALSE, xlab, ylab, 
minbar, maxbar,offset=0.2, ...) 

我在下面引用了函数的修改部分:

if (!add) {
    if (invalid(labels) || labels == FALSE)
        #Add offset here to ensure plot window is right size
        plot(x+offset, y, ylim = ylim, xlim = xlim, col = col, xlab = xlab, 
            ylab = ylab, ...)
    else {
        plot(x, y, ylim = ylim, xlim = xlim, col = col, type = "n", 
            xlab = xlab, ylab = ylab, ...)
        text(x, y, label = labels, col = col, ...)
    }
}

然后就在下面修改这段代码如下:

if (err == "y") {
    if (gap != FALSE) 
        gap <- strheight("O") * gap
    smidge <- par("fin")[1] * sfrac
    if (!is.null(li))
        #Add offset to CIs 
        myarrows(x+offset, li, x+offset, pmax(y - gap, li), col = barcol, 
            lwd = lwd, lty = lty, angle = 90, length = smidge, 
            code = 1)
    if (!is.null(ui)) 
        myarrows(x+offset, ui, x+offset, pmin(y + gap, ui), col = barcol, 
            lwd = lwd, lty = lty, angle = 90, length = smidge, 
            code = 1)
}

这只处理误差条是垂直的情况。但是水平情况的变化是相似的。

关于r - 在 R 中使用 plotCI 时更改参数。(向左或向右移动点),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6118953/

相关文章:

r - ggplot2密度绘制R中不同大小的数据

r - 如果使用 apply 和 mutate_at 满足条件,则将自定义函数应用于所选列中的数据

c++ - 使用 Google C++ Mocking Framework (Google Mock) (V1.5) 将任意参数传递给调用的方法

r - 如何计算 R 中线性回归模型中斜率的 95% 置信区间

ggplot2 - 如何绘制 glm 模型(gamma 系列)的置信区间?

r - 没有默认值的错误 : argument ".cols" is missing,,出现 Shiny 错误

r - 如何卸载所有未显式加载/未被其他显式加载的包使用的依赖项的包?

arrays - Julia 中以 DataArrays 和 Arrays 作为参数的函数

c# - 具有相同名称的多个 SqlCommand 参数

R比例置信区间因子