6
scale_colour_gradient(low="red", high="blue")

ほとんどが赤に見える色のグラデーションを生成します。バイオレットred-violet-blueが真ん中にあると思っていましたが、手に入れましたred-still_red-violet-blue

red-still_red-violet-blue

バイオレットを中心としたグラデーションを取得するにはどうすればよいですか?

4

2 に答える 2

8
scale_colour_gradientn(colours=c("red","violet","blue"))
于 2012-12-01T16:52:41.620 に答える
7
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)

コメントで述べたように、scale_colour_gradient2を使用するとよりシンプルになります

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

ここに画像の説明を入力してください

于 2012-12-01T16:56:01.160 に答える