ggplot2: set (nonlinear) values for alpha
===

I'd like to plot a mirrored 95% density curve and map alpha to the density:

    foo <- function(mw, sd, lower, upper) {
    x <- seq(lower, upper, length=500)
    dens <- dnorm(x, mean=mw, sd=sd, log=TRUE)
    dens0 <- dens -min(dens)
    return(data.frame(dens0, x))
    }

    df.rain <- foo(0,1,-1,1)

    library(ggplot2)


    drf <- ggplot(df.rain, aes(x=x, y=dens0))+
    geom_line(aes(alpha=..y..))+
    geom_line(aes(x=x, y=-dens0, alpha=-..y..))+
    stat_identity(geom="segment", aes(xend=x, yend=0, alpha=..y..))+
    stat_identity(geom="segment", aes(x=x, y=-dens0, xend=x, yend=0, alpha=-..y..))
    drf

This works fine, but I'd like to make the contrast between the edges and the middle more prominent, i.e., I want the edges to be nearly white and only the middle part to be black. I've been tampering with `scale_alpha()` but without luck. Any ideas?
