2010-10-05 27 views
28

Intenté agregar un subtítulo usando +opts(subtitle="text") pero no apareció nada. El título principal funciona (+opts(title="text")).¿Cómo puedo agregar un subtítulo y cambiar el tamaño de fuente de las ggplot en R?

También me gustaría utilizar una fuente más grande para el eje (etiquetas y coordenadas), pero no puedo decir cómo hacerlo.

+0

Para la primera pregunta, hay una respuesta mejor aquí: http://stackoverflow.com/questions/11724311/how-to-add-a-ggplot2 -subtitle-with-different-size-and-color – naught101

+0

Marcar una pregunta como duplicada porque hay una pregunta más nueva que me parece muy extraña. Entonces, ¿por qué se marcó como duplicado? – Jaap

Respuesta

45

theme_get() le mostrará las opciones "ocultas" que se pueden utilizar en opts(), publicar 0.91 es theme()

actual:

theme(axis.text.x=element_text(size=X)) 
theme(axis.text.y=element_text(size=X)) 

Pre 0.91:

opts(axis.text.x=theme_text(size=X)) 
opts(axis.text.y=theme_text(size=X)) 

Cambiar tamaño, al tamaño que desee .

WRT el título, puede utilizar "\ n" para pasar el resto del texto a una nueva línea:

actual:

labs(title="text \n more text") 

Pre 0.91:

opts(title="text \n more text") 

ggplot2 no tiene la funcionalidad de "subtítulos". Pero puede usar el término \ n en cualquiera de las etiquetas para desplegar una línea.

+1

+1 ¡Impresionante! Muchas gracias por el 'theme_get()' – Legend

+3

'theme_text' ahora está obsoleto use' element_text' en su lugar. Diría más, pero estoy buscando cómo usar 'element_text'. La ayuda es solo un talón. – geneorama

+0

Intenta actualizar tus paquetes. Los documentos se han mejorado y también me actualicé la respuesta. –

3

Actualización: ggplot versión 2.2.0 puede hacer subtítulos, como se muestra, p. en this blog post.

Ejemplo:

library(ggplot2) 
packageVersion("ggplot2") ## 2.2.0 
d <- data.frame(x=1:5,y=1:5) 
ggplot(d,aes(x,y))+ 
    labs(title="abc",subtitle="def")+ 
    ## default left-aligned: moved them to center alignment 
    theme(plot.title=element_text(hjust=0.5), 
      plot.subtitle=element_text(hjust=0.5)) 

enter image description here

Cuestiones relacionadas