在R中使用ggplot2,如何使图形的背景在不同区域中有不同的颜色? - 代码日志

在R中使用ggplot2,如何使图形的背景在不同区域中有不同的颜色?

我使用ggplot2包在R中做一个简单的barchart。而不是灰色的默认,我想将背景划分为五个区域,每个区域都是不同的(但是类似的低调)颜色。我该如何做?

更具体地说,我希望五色区域从0-25,25-45,45-65,65-85和85-100运行,其中颜色表示比青铜,青铜,银,金和铂分别。对于配色方案的建议也非常受欢迎。

感谢任何帮助。

以下是一个让您开始的例子:

#Fake data
dat <- data.frame(x = 1:100, y = cumsum(rnorm(100)))
#Breaks for background rectangles
rects <- data.frame(xstart = seq(0,80,20), xend = seq(20,100,20), col = letters[1:5])


#As Baptiste points out, the order of the geom's matters, so putting your data as last will 
#make sure that it is plotted "on top" of the background rectangles. Updated code, but
#did not update the JPEG...I think you'll get the point.

ggplot() + 
  geom_rect(data = rects, aes(xmin = xstart, xmax = xend, ymin = -Inf, ymax = Inf, fill = col), alpha = 0.4) +
  geom_line(data = dat, aes(x,y))
http://stackoverflow.com/questions/9968975/using-ggplot2-in-r-how-do-i-make-the-background-of-a-graph-different-colours-in

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:在R中使用ggplot2,如何使图形的背景在不同区域中有不同的颜色?