2017-01-03 1 views
0

Ich möchte die Gruppenbeschriftungen in einem Facettenplot in ggplot2 ändern. Dieser CodeBenutzerdefinierte X-Achsen-Tick-Werte in ggplot2 facet_wrap

data = tidyr::gather(data = iris, variable, value, -Species) 

ggplot(data, aes(y = value, x = variable, fill = Species)) + 
    geom_boxplot(position = "dodge", notch = TRUE) + 
    ylab("median(x)") + 
    facet_wrap(~variable, scales = "free", ncol = 2) 

produziert enter image description here

ich die x-Achse Strichbeschriftungen jeden Artname darstellen will anstelle der variablen das jeweilige Teilstück durch (die auch gruppiert werden Wiederholung was bereits in den Unterparzellen Titel). Irgendeine Idee, wie ich das erreichen kann? Ich habe überall im Internet gesucht, konnte aber keine wertvollen Informationen dazu finden.

freundlichen Grüßen Andi

aktualisieren

Henrik die richtige Antwort gab, würde ich die richtige aes Funktion ändern. Vielen Dank!

+4

Ersetzen 'x = variable' mit' x = Arten in deinen 'Aes'? – Henrik

+0

Danke, sieht aus, als müsste ich die Grammatik von ggplots rekapitulieren! –

+0

gibt es auch ein Argument namens "Labeler" in 'facet_wrap' ... weiß nicht, ob es verwendet werden kann, aber vielleicht einen Blick wert – Sotos

Antwort

0

Sie können dies (ohne Facette) versuchen, etwas Ähnliches zu erreichen:

library(gridExtra) 
grid.arrange(ggplot(iris, aes(Species, Sepal.Length, fill = Species))+geom_boxplot(position = "dodge", notch = TRUE) + xlab('') + guides(fill=FALSE), 
      ggplot(iris, aes(Species, Sepal.Width, fill = Species))+geom_boxplot(position = "dodge", notch = TRUE) + xlab('') + guides(fill=FALSE), 
      ggplot(iris, aes(Species, Petal.Length, fill = Species))+geom_boxplot(position = "dodge", notch = TRUE) + xlab('') + guides(fill=FALSE), 
      ggplot(iris, aes(Species, Petal.Width, fill = Species))+geom_boxplot(position = "dodge", notch = TRUE) + xlab('') + guides(fill=FALSE)) 

enter image description here Wenn Sie möchten, eine gemeinsame Legende bezeichnen dies: Add a common Legend for combined ggplots

+0

Für meinen Zweck' grid.arrange' ist keine Option, aber danke trotzdem, ich behalte es im Hinterkopf! –

Verwandte Themen