Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ggplot legend key color and transparency

I'm plotting multiple lines together and they are transparent. However, I do not want the legend color to have any transparency. I attempted the override.aes but without success. This is similar to this question, but essentially the opposite.

Currently I have this

# plot all the lines
plt <- ggplot(dt_plot,aes(x = x, y = mean_change, color = model)) +
        geom_line(aes(group = interaction(model, boot)), alpha = 0.3) +
        xlab('houses/acre') + 
        ylab('change in % prevalance') +
        scale_colour_manual(values=cbbPalette) + 
        theme_few()  + 
        theme(text=element_text(size=10),legend.title = element_blank()) + 
        guides(fill = guide_legend(override.aes= list(alpha = 1)))

transparent lines and transparent legend colors

Cheers

like image 712
Tom Logan Avatar asked Feb 07 '19 18:02

Tom Logan


1 Answers

Your approach is perfectly fine except for one small issue: you need

guides(color = guide_legend(override.aes = list(alpha = 1)))

instead as geom_line doesn't have the fill aesthetic.

like image 188
Julius Vainora Avatar answered Sep 22 '22 23:09

Julius Vainora