我想使用 R 绘制具有相同 x 值(例如日期)的两个数据系列。我想要在同一张图上的两条线,但是一条比另一条大的线段应该是另一种颜色。举个例子:
x<-c(-5:5)
y1<-x^2-x-10
y2<-(x^3)-(x^2)-(10*x)+2
plot(x,y1,col="blue", ylim=c(-100,100), type="l")
par(new=T)
plot(x,y2,col="green", ylim=c(-100,100), type="l")
y2 大于 y1 的部分为红色。因此,绿线或多或少会在 -3 < x < 1 时变为红色,然后在 x > 3 时再次变为红色(我试图发布该图,但我的声誉不够高)。我想开发一些代码,允许我对任何数据集执行此操作,例如在矩阵中,例如:
xy<-as.matrix(cbind(x,y1,y2))
我怀疑它可以使用for
和if
循环来完成,但我更喜欢更优雅的解决方案。如果我能做这样的事情:同时显示两条曲线的交点,那就太好了!
非常感谢您的帮助!