【发布时间】:2013-10-26 17:32:40
【问题描述】:
有没有办法根据数据框提供的变量填充使用 facet_wrap 创建的分面条?
示例数据:
MYdata <- data.frame(fruit = rep(c("apple", "orange", "plum", "banana", "pear", "grape")), farm = rep(c(0,1,3,6,9,12), each=6), weight = rnorm(36, 10000, 2500), size=rep(c("small", "large")))
示例图:
p1 = ggplot(data = MYdata, aes(x = farm, y = weight)) + geom_jitter(position = position_jitter(width = 0.3), aes(color = factor(farm)), size = 2.5, alpha = 1) + facet_wrap(~fruit)
我知道如何更改条带的背景颜色(例如变为橙色):
p1 + theme(strip.background = element_rect(fill="orange"))
有没有办法将MYdata中的变量size中的值传递给element_rect中的参数fill?
基本上,我希望小水果(苹果、李子、梨)的条带背景颜色为绿色,而大水果(橙、香蕉、葡萄)的背景颜色为红色,而不是所有条带的一种颜色。
【问题讨论】:
-
没有一个简单的方法可以做到这一点,it has been asked before 在另一个网站上。
-
谢谢,nograpes。我看了看,但找不到以前问过的地方。
-
如果您让该代码工作,您应该将其发布为答案。
-
我很想知道该怎么做,这是个好主意
-
此功能+1。能够在主题中指定会很好。
标签: r ggplot2 facet-wrap