Sto riscontrando problemi nel cambiare l'alfa dei miei punti (colorati) nella legenda quando aggiungo stat_smooth
.Modifica il livello alfa del punto geom nella legenda in cima a stat_smooth
require(ggplot2)
set.seed(1052)
dx <- runif(2000,0,10)
dy <- dx * rep(c(1,-1), each = 1000) + rnorm(2000,0,1)
dcol <- rep(c(TRUE, FALSE), each = 1000)
dd <- data.frame(x = dx, y = dy, col = dcol)
gg <- ggplot(dd) + aes(x = x, y = y, colour = col) + geom_point(alpha = 1/5)
gg
L'alfa dei punti porta verso la legenda (rendendo i colori difficile da vista), ma this question dimostra che è possibile sovrascrivere i dettagli legenda con guides
:
magic <- guides(colour = guide_legend(override.aes = list(alpha = 1)))
gg + magic
Freddo. Ma quando lancio il stat_smooth
, la magia smette di funzionare.
gg + stat_smooth(method = "lm")
gg + stat_smooth(method = "lm") + magic
Come posso risolvere questo problema? Avrei preferito il risultato qui sotto per la leggenda (sfondo bianco, linee e punti con alpha = 1
. (Le questioni sembra andare via se si utilizza geom_line
e non stat_smooth
)
gg + geom_line(alpha = 1/10) + magic
questo potrebbe essere un bug. Il problema è il nastro di errore standard. Se imposti 'se = FALSE' in' geom_smooth' le cose funzionano di nuovo. Quello che sta succedendo è che si imposta 'alpha' per i punti, ma' geom_smooth' imposta un altro alfa per il nastro. Quando si sostituisce l'alfa della legenda, viene applicato a entrambi i punti e al riempimento grigio. Non ho ancora trovato una soluzione alternativa ... – joran
... un'opzione è di impostare 'show_guide = FALSE' in' geom_smooth', ma poi perdi le righe nella legenda. – joran
prova 'stat_smooth (method =" lm ", se = FALSE)' se non hai bisogno di SE. – kohske