2012-03-29 20 views
5

Ho provato a usare expression(), che funziona con grafici noraml, ma il mio tentativo di seguito non riesce: qualche idea?pedice e apice in ylab di qplot [R]

voglio scrivere: mg CO2 (indice 2) - C m-2 (apice -2) h-1 (supercript -1)

funziona perfettamente:

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

fallisce:

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="")) 

Molte grazie!

risposta

12

vostro comando non riesce, perché la sintassi è sbagliata

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

avete bisogno di qualcosa di simile a '+ ylab (...)'

per esempio come questo:

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

ho anche ha dovuto sostituire "..." con "..." e poi ha funzionato !! molte grazie! –

+1

Il materiale all'interno di quella chiamata di espressioni è destinato a essere valutato dal motore plotmath e quindi l'argomento sep = non viene riconosciuto come separatore e potrebbe essere confuso nei risultati se si passa qualcosa tranne "". Provalo con "-" o "_" per vedere cosa intendo. –

Problemi correlati