Ho difficoltà ad allineare il testo della legenda a sinistra.Allinea il testo della legenda in ggplot
library(ggplot2)
library(reshape2)
o3<- rnorm(1827, 50, 10)
NO2<- rnorm(1827, 35, 7)
NOx<- rnorm(1827, 45, 10)
pm25<- rnorm(1827, 15, 4)
date<-seq(as.Date('2000-01-01'),as.Date('2004-12-31'),by = 1)
df<-data.frame(date,o3,NO2,NOx,pm25)
meltdf <- melt(df,id="date")
Con questo codice è l'allineamento automatico a fianco
ggplot(meltdf, aes(x = date, y = value, colour =variable)) + geom_smooth() + stat_smooth(method = "gam")
Tuttavia, con le seguenti l'alignemt è al centro.
ggplot(meltdf, aes(x = date, y = value, colour =variable)) +
geom_smooth() + stat_smooth(method = "gam") +
scale_color_discrete(name="Pollutant" ,labels = c(expression(O[3]),
expression(NO[2]),
expression(NO[x]),
expression(PM[2.5])))
Come è possibile ottenere l'allineamento a sinistra con l'ultimo script?
Grazie per la risposta. Presumo che il valore predefinito deve essere lasciato allineato poiché il primo codice ha creato automaticamente una legenda allineata a sinistra. Perché il secondo script ha prodotto un output centrato/allineato a destra? In quali situazioni devo aggiungere "theme (legend.text.align = 0)"? – Meso
Beh, la risposta breve sarebbe quando il testo non è allineato a sinistra :) Non so perché in questo caso l'allineamento non è a sinistra, che è l'impostazione predefinita. La ragione per cui il tuo script risulta nell'output allineato a destra ha a che fare con l'uso delle espressioni, se usi bquote invece viene usato l'allineamento di sinistra di default: vedi aggiornamento – konvas