2010-05-23 13 views
5

He buscado here pero todavía no puedo entenderlo. ¿Cómo cambio las etiquetas strip.text.x en un ggplot con faceting? Específicamente, estoy usando facet_grid con márgenes. La etiqueta strip.text para el margen es "(todo)", pero como estoy en un país que no habla inglés, prefiero escribir "Total" o algo similar en mi lengua materna.cómo cambiar las etiquetas strip.text en ggplot con faceta y margen = VERDADERO

opts(stip.text.x=c(levels(facetvariabel,"Total")) does not work. 

¿Alguna idea?

Ejemplo (no es realmente el mejor conjunto de datos para esto - pero supongo que va a funcionar)

ggplot(cars, aes(x=dist))+geom_bar()+facet_grid(.~speed, margin=T) 
+0

duplicado: ver también http : //stackoverflow.com/questions/3472980/ggplot-how-to-change-facet-labels – naught101

+1

@ naught101 Solo para ser claros: esta pregunta se hizo en mayo, mientras que la otra pregunta se hizo en agosto. – Andreas

Respuesta

10

Puede personalizar las etiquetas faceta dando función etiquetadora:

f <- function(x, y) { 
    if (x == "speed") 
    c(y[-length(y)], "Total") 
    else 
    y 
} 

ggplot(cars, aes(x = dist)) + 
    geom_bar() + 
    facet_grid(. ~ speed, margin = TRUE, labeller = f) 
+0

¡Muchas gracias! - Probé la etiqueta - pero me tiraron ... Esto fue muy útil. Sin embargo, mi solución final necesitaba pegar: f <-función (x, y) {if (x == "spped") {c (pegar (y [-length (y)]), "Total")} else y} ¡Gracias de nuevo! – Andreas

Cuestiones relacionadas