Я знаю, как разбить и заполнить области многоугольника вдоль горизонтальной линии, если значения довольно простые.
x <- 9:15
y1 <- c(5, 6, 5, 4, 5, 6, 5)
plot(x, y1, type="l")
abline(h=5, col="red", lty=2)
polygon(x[c(1:3, 5:7)], y1[c(1:3, 5:7)], col="green")
polygon(x[3:5], y1[3:5], col="red")
![enter image description here](https://i.stack.imgur.com/a1B4f.png)
y2 <- c(5, 6, 4, 7, 5, 6, 5)
plot(x, y2, type="l")
abline(h=5, col="red", lty=2)
Но как получить результат, если значения немного более асимметричны?
Ожидаемый результат (в фотошопе):
![enter image description here](https://i.stack.imgur.com/vPLw0.png)