如何在ggplot2的scale_colour_gradientn中指定颜色编号

时间:2014-02-12 10:46:42

标签: r ggplot2

我想在ggplot2的scale_colour_gradientn中显示固定数量的颜色。在下面的代码中,我只想在图例中显示7种颜色。

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)
d + scale_colour_gradientn(colours = rainbow(7))

用baptiste的评论编辑

    guides(colour = guide_colourbar(raster=FALSE, nbin=7))

enter image description here

感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

感谢baptiste的建议和tonytonov的评论。

我在这里发布答案

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)
d <- d + scale_colour_gradientn(colours = rainbow(7))
d + guides(colour = guide_colourbar(raster=FALSE, nbin=7))