问题描述
我是 R 新手,我一直在尝试绘制 4 条不同颜色的指数曲线。我想知道如何使用 for 循环来实现。
par(mfrow = c(2,2))
colors<-rainbow(4)
parameters <- c(10,.25,1,6)
for(lambda in parameters){
curve(dexp(x,lambda),3,main = bquote(lambda ==.(lambda)),font.main = 1,xlab = "x",ylab = "f(x)",col=colors[lambda])
}
解决方法
您正在传递参数值以索引颜色对象。通常,在 for
循环中使用 1:n 整数是一种很好的做法。
试试这个:
for(lambda in seq_along(parameters)){
curve(dexp(x,parameters[lambda]),3,main = bquote(parameters[lambda] ==.(parameters[lambda])),font.main = 1,xlab = "x",ylab = "f(x)",col=colors[lambda])
}