使用“matlines”进行预测图时如何更改置信区间线的颜色?

How do I change colours of confidence interval lines when using `matlines` for prediction plot?

我正在绘制对数回归的最佳拟合线以及该线周围的置信区间。我使用的代码运行良好,除了我希望置信区间都是 "gray"(而不是默认的 "red" 和 "green")。不幸的是,我没有看到在指定颜色更改时隔离它们的方法。我想要

我怎样才能做到这一点?我的代码是这样的:

R6cl <- lm(log(R6$y) ~ R6$x)
pR6cl <- predict(R6cl, interval="confidence")
plot(R6$x, log(R6$y), type = "p") 
matlines(x = R6$x, y = log(R6$y), lwd = 2, lty = 1, col = "black")

产生:

怎么样:

a = 1:10
b = c(2,1,2,4,5,5,3,7,4,10)

R6cl <- lm(log(b)~a)
pR6cl <- predict(R6cl, interval = "confidence")
plot(a, log(b), type = "p") 
lines(a, pR6cl[,1], lty = 1, col = "black")
lines(a, pR6cl[,2], lty = 2, col = "gray")
lines(a, pR6cl[,3], lty = 2, col = "gray")

给出:

colltylwd 被矢量化。您可以使用

R6cl <- lm(log(y) ~ x, data = R6)  ## don't use $ in formula
pR6cl <- predict(R6cl, interval = "confidence")
plot(log(y) ~ x, data = R6)  ## Read `?plot.formula`
matlines(R6$x, pR6cl, lwd = 2, lty = c(1, 2, 2), col = c(1, 2, 2))

您可以检查 中的最后一个数字以了解此代码将生成的内容。

如果您不清楚为什么我建议不要在模型公式中使用 $,请阅读 Predict() - Maybe I'm not understanding it


其他读者的边注

OP 有一个数据集,其中 x 已排序。如果您的 x 未排序,请确保先对其进行排序。有关更多信息,请参阅