Como alterar o tamanho da legenda em ggplot2 (com exemplos)
Você pode usar a seguinte sintaxe para alterar o tamanho dos elementos em uma legenda ggplot2:
ggplot(data, aes (x=x, y=y)) + theme( legend.key.size = unit(1, ' cm '), #change legend key size legend.key.height = unit(1, ' cm '), #change legend key height legend.key.width = unit(1, ' cm '), #change legend key width legend.title = element_text(size=14), #change legend title font size legend.text = element_text(size=10)) #change legend text font size
Os exemplos a seguir mostram como usar esses argumentos na prática.
Alterar o tamanho da chave da legenda ggplot2
Suponha que criemos o seguinte gráfico de barras agrupado usando ggplot2:
library (ggplot2) #create data frame df <- data.frame(team=rep(c(' A ', ' B ', ' C '), each =3), position=rep(c(' Guard ', ' Forward ', ' Center '), times =3), dots=c(14, 8, 8, 16, 3, 7, 17, 22, 26)) #create grouped barplot ggplot(df, aes (fill=position, y=points, x=team)) + geom_bar(position=' dodge ', stat=' identity ')
Por padrão, ggplot2 fornece uma legenda à direita do gráfico.
O código a seguir mostra como usar o argumento legend.key.size para ampliar as chaves da legenda:
ggplot(df, aes (fill=position, y=points, x=team)) + geom_bar(position=' dodge ', stat=' identity ') + theme( legend.key.size = unit(2, ' cm '))
Também podemos usar os argumentos legend.key.width e legend.key.height para especificar larguras e alturas de chaves:
ggplot(df, aes (fill=position, y=points, x=team)) + geom_bar(position=' dodge ', stat=' identity ') + theme( legend.key.height = unit(2, ' cm '), legend.key.width = unit(4, ' cm '))
Alterar o tamanho da fonte do título da legenda ggplot2
Podemos usar o argumento legend.title para aumentar o tamanho da fonte do título da legenda:
ggplot(df, aes (fill=position, y=points, x=team)) + geom_bar(position=' dodge ', stat=' identity ') + theme( legend.title = element_text(size=30))
Alterar o tamanho da fonte do texto da legenda ggplot2
Podemos usar o argumento legend.text para aumentar o tamanho da fonte do título da legenda:
ggplot(df, aes (fill=position, y=points, x=team)) + geom_bar(position=' dodge ', stat=' identity ') + theme( legend.text = element_text(size=30))
Recursos adicionais
Como alterar o título da legenda no ggplot2
Como alterar a posição da legenda no ggplot2
Como remover uma legenda no ggplot2