使用 Base R 图创建层图

问题描述

我正在尝试在具有三层的基础 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,col="grey",border="grey")
 polygon(x,y2,col="yellow",border="yellow")
 polygon(x,y1,col="cyan",border="cyan")

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

解决方法

您已经接近了,polygon 需要返回到 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,c(y2,col="yellow",c(y1,col="cyan",border=F)
lines(x,lwd=2,col="red")

enter image description here