title: ggplot set scale_color_gradientn manually
body: <p>I have a data frame like this</p>
  
  <pre><code>BP        R2      LOG10
  96162057 0.2118000 2.66514431
  96162096 0.0124700 0.31749391
  96162281 0.0008941 0.07012148
  96163560 0.5011000 2.48505399
  96163638 0.8702000 3.37778598
  </code></pre>
  
  <p>and I want to plot BP against LOG10, and color the points by R2. R2 are continuous values from 0-1. </p>
  
  <pre><code>myplot &lt;- read.cvs("mytable.csv",head=TRUE)
  attach(myplot)
  ggplot(myplot,aes(BP,LOG10, color=R2)) + geom_point() 
  </code></pre>
  
  <p>So far, so good. However I would like to display the R2 colors in manually selected intervals and colors, like this (if I had discrete values).</p>
  
  <pre><code>ggplot(myplot,aes(BP,LOG10, color=R2)) + geom_point() + 
        scale_color_manual(breaks= c("1","0.8","0.6","0.4","0.2","0"), 
                  values = c("red","yellow","green","lightblue","darkblue"))
  Error: Continuous value supplied to discrete scale
  </code></pre>
  
  <p>This looks pretty, but I would rather set the colors my self.</p>
  
  <pre><code>ggplot(myplot,aes(BP,LOG10, color=R2)) + geom_point(shape=1) + 
                 scale_colour_gradientn(colours = rainbow(10))
  </code></pre>
  
  <p>So, how can I manually select intervals from continuous values (1-0.8, 0.8-0.6, 0.6-0.4, 0.4-0.2, 0.2-0), and color them to my liking (red, yellow, green, light, darkblue)? A smooth gradient between the colors would be cool, but not crucial. </p>