You can overlap many polygons:
plot(x,type='l')
for (i in seq(0, 1, 0.01)) {
polygon(x = c(x + i * (xhigh - x), x - i * (xlow - x)),
col = rgb(1, 0, 0, .005), border = NA)
}

Although, I think your example is actually erroneous and probably wants something like:
plot(x,type='l')
for (i in seq(0, 1, 0.01)) {
polygon(x = c(1:10, 10:1),
y = c(x + i * (xhigh - x), rev(x - i * abs(x - xlow))),
col = rgb(1, 0, 0, .005), border = NA)
}

source
share