2012-12-01 31 views
5
scale_colour_gradient(low="red", high="blue") 

çoğunlukla kırmızı görünen bir renk gradyanı oluşturur içinde scale_colour_gradient (= düşük "kırmızı" = yüksek "mavi") simetrik bir renk skalası oluşturun. Ben ortada en menekşe ile red-violet-blue beklenen ama menekşe ile gradyan merkezli ben alabilirim nasıl red-still_red-violet-blueggplot2

red-still_red-violet-blue

var?

cevap

7
scale_colour_gradientn(colours=c("red","violet","blue")) 
+0

İşleri ince ile daha basit. 'magenta' bile 'violet' –

6
library(ggplot2) 

dsub <- subset(diamonds, x > 5 & x < 6 & y > 5 & y < 6) 
dsub$diff <- with(dsub, sqrt(abs(x-y))* sign(x-y)) 
(d <- qplot(x, y, data=dsub, colour=diff)) 

max_val <- max(abs(dsub$diff)) 
values <- seq(-max_val, max_val, length = 3) 

d + scale_colour_gradientn(colours=c("red","violet","blue"), 
          values = values, rescaler = function(x, ...) x, oob = identity) 

ve herhangi bir yorumda açıklamada, scale_colour_gradient2

d + scale_colour_gradient2(low='red',mid='violet',high='blue') 

enter image description here

+3

daha iyi görünüyordu Bu temelde 'scale_gradient2' ne yapar ... – hadley