2012-03-29 167 views
5

He intentado usar expression(), que funciona con gráficos noraml, pero mi intento a continuación falla: ¿alguna idea?subíndice y superíndice en ylab de qplot [R]

Quiero escribir: g CO2 (subíndice 2) - C m-2 (superíndice -2) h-1 (supercript -1)

funciona perfectamente:

plot(CO2~water_content, data=gases, ylab = expression(paste("µg ", CO[2], " - C ", m^-2, " ", h^-1, sep="")))    

falla:

qplot(factor(vegetation_dummy),CO2,facets=sampling~biochar,geom=c('boxplot'),data=gases_PL)+theme_bw()+xlab('Plants')+ylab = expression(paste("µg ", CO[2], " - C ", m^-2, " ", h^-1, sep="")) 

Muchas gracias!

Respuesta

12

su comando falla, porque la sintaxis es incorrecta

qplot(..) ... + ylab = expression(...) 

necesita algo así como '+ ylab (...)'

por ejemplo, así:

data(diamonds) 
qplot(carat, depth, data=diamonds, facets = cut~color, geom='boxplot') + 
ylab(expression(paste("µg ", CO[2], " - C ", m^-2, " ", h^-1, sep=""))) 
+0

yo también tuvo que reemplazar "..." con '...' y luego funcionó !! ¡muchas gracias! –

+1

El material dentro de esa llamada de expresión está destinado a ser evaluado por el motor plotmath y, por lo tanto, el argumento sep = no se reconoce como un separador y posiblemente sea confuso en sus resultados si pasa algo excepto "". Pruébalo con "-" o "_" para ver a qué me refiero. –

Cuestiones relacionadas