plot.new()
par(bg = NA)
plot.window(xlim = c(-16, 16), ylim = c(-16, 13))
mapply(function(r, col) {
        t <- seq(0, 2 * pi, length.out = 100)
        x <- r * sin(t)^3
        y <- (13 * r/16) * cos(t) - (5 * r/16) * cos(2 * t) - (2 * r/16) * cos(3 * t) - (r/16) * cos(4 * t)
        polygon(x, y, col = col, border = NA)
}, seq(16, 0, length.out = 100), colorRampPalette(c('dodgerblue', 'grey84'))(100))