使用 Base R plot 创建层图

Creating a layer diagram with Base R plot

我正在尝试在 base R 中制作一个三层的层次图: y1 线下的区域为青色阴影, y1 和 y2 线之间的区域以黄色阴影和 y2 和 y3 之间的区域为灰色阴影。 我试过了:

x <- 1:100
y1 <- 2*x+3
y2 <- y1 +4*x+9
y3 <- y2+ 1.5*x


 plot(x,y3,type="l")
 polygon(x,y3,col="grey",border="grey")
 polygon(x,y2,col="yellow",border="yellow")
 polygon(x,y1,col="cyan",border="cyan")

但这没有用。 感谢您的帮助。

你很接近,polygon 需要 return 到 x 轴,因此我们需要添加坐标 [100, 0]。我显示 border=F,但也许你的更好。如果需要,您可能应该在最后绘制 lines

plot(x, y3, type="n")
polygon(c(x, 100), c(y3, 0), col="grey", border=F)
polygon(c(x, 100), c(y2, 0), col="yellow", border=F)
polygon(c(x, 100), c(y1, 0), col="cyan", border=F)
lines(x, y3, lwd=2, col="red")