开发者

gradient breaks in a ggplot stat_bin2d plot

I have a 2d histogram created with stat_bin2d in the ggplot2 package. I'd like to control both the number of breaks in the color gradient, as well as where those breaks are located. I'm sure I'm just overlooking something small, but I can't figure out how to control the breaks in the binning.

Example:

x <- rnorm(100)^2
y <- rnorm(100)^2
df <- data.frame(x,y)
require(ggplot2)
p <- ggplot(df, aes(x, y)) 
p <- p + stat_bin2d(bins = 20)
p + scale_colour_gradient2(br开发者_StackOverfloweaks=c(1,2,3,4,5,6))

This produces:

gradient breaks in a ggplot stat_bin2d plot

This plot only has 3 breaks at c(5,10,15) despite my futile attempt to put breaks at c(1,2,3,4,5,6))

Any hints?


here is an example combining cut and bin2d:

p <- ggplot(df, aes(x, y, fill=cut(..count.., c(0,6,8,9,Inf))))
p <- p + stat_bin2d(bins = 20)
p + scale_fill_hue("count")

As there are many ways to make the breaks arbitrary, if you define clearly what you want, probably you can get a better answer.

gradient breaks in a ggplot stat_bin2d plot


Me thinks you probably want the less talked about cousin of scale_colour_gradient2(), scale_fill_gradient2()

Using your data:

p + scale_fill_gradient2(breaks=c(1,2,3,4,5,6))

Also note the optional parameters low, mid, and high for additional controls.

gradient breaks in a ggplot stat_bin2d plot

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜