Ho un grafico geom_area che assomiglia a questo: Come si compila un grafico geom_area() usando ggplot?
Voglio colorare tutto sopra il verde dell'asse x e tutto sotto l'asse x rosso. Ho una colonna di categoria nei miei dati che contiene la stringa "positiva" per tutti i valori positivi e "negativa" per tutti i valori negativi, quindi ho provato semplicemente a fare fill = category e usando scale_fill_manual per impostare il positivo su green e negativo su red, ma che mi dà questo:
Verde quanto sopra la x sembra giusta, ma il rosso sotto l'asse non è giusto. Ho controllato i miei dati e non ci sono punti dati negativi in cui si colorano di rosso dopo il 20 ottobre, e usando geom_point invece ottengo i colori corretti.
Ecco un esempio dei miei dati:
created score category
2011-10-19 21:26:19 2 positive
2011-10-19 22:50:33 -2 negative
2011-10-20 15:12:38 -2 negative
2011-10-20 17:19:24 -2 negative
2011-10-20 22:12:44 2 positive
2011-10-20 22:16:57 4 positive
2011-10-21 08:22:53 2 positive
ed ecco il codice che sto usando per rendere la trama:
ggplot(data = df, aes(x = created, y = score, colour = category)) + geom_point(aes(fill = category)) + scale_fill_manual(values = c("positive" = "green", "negative" = "red"))
Il mio problema potrebbe essere correlato alla this previous question.
[Questo] (http://learnr.wordpress.com/2009/10/22/ggplot2- due-colori-xy-area-combo-chart/# more-2195) post di blog può aiutare. – joran