2013-12-10 2 views
1

У меня есть следующая строка кода, которая рисует две геометки для одного и того же холста, чтобы создать сюжет, который выглядит как geom_area, но одна лента представляет данные (например, geom_area), а другая представляет 100-данные таким образом, что данные + (100 - данные) = 100. код:Раскраска geom_ribbon в ggplot2 & R

customBars3 <- ggplot(barsFrame, aes(x=as.numeric(as.character(rAge)), y=PositivePercent)) + geom_ribbon(aes(ymax=100, ymin=PositivePercent, fill = "red")) + geom_ribbon(aes(ymax=PositivePercent, ymin=0, fill = "green")) + facet_wrap(~ Divergence) 

и я получаю графику, как в следующем:

enter image description here

Однако я хотел ниже чтобы на самом деле был зеленый цвет, а верхний r ibbon на самом деле будет красного цвета. Как мне это сделать и соответствующим образом изменить легенду? Мои усилия по определению цвета заливки приводят к тому, что легенда становится помеченной указанным цветом, но заполняется разными цветами.

Thanks, Ben.

ответ

9

Вы можете использовать scale_fill_manual(), чтобы изменить цвет. Первый аргумент - ваш уровень данных, а второй аргумент - фактический цвет.

+scale_fill_manual(values=c("green"="green","red"="red")) 
2

Если используется параметр «заполнить» из ПЯ (я имею в виду в geom_ribbon) соответствующая лента будет иметь хороший цвет.

Смежные вопросы