Como alterar o título da legenda em ggplot2 (com exemplos)


Existem duas maneiras fáceis de alterar o título da legenda em um gráfico ggplot2:

Método 1: use laboratórios()

 ggplot(data, aes(x=x_var, y=y_var, fill=fill_var)) + 
  geom_boxplot() + 
  labs(fill=' Legend Title ')

Método 2: Use scale_fill_manual()

 ggplot(data, aes(x=x_var, y=y_var, fill=fill_var)) + 
  geom_boxplot() +
  scale_fill_manual(' Legend Title ', values=c(' color1 ', ' color2 '))

Este tutorial mostra exemplos de como usar esses dois métodos na prática.

Método 1: alterar o título da legenda usando labs()

O código a seguir mostra como criar um boxplot agrupado para um determinado conjunto de dados:

 library (ggplot2) 

#create dataset
data <- data.frame(team= rep (c('A', 'B', 'C'), each =50),
                   program= rep (c('low', 'high'), each =25),
                   values= seq (1:150)+ sample (1:100, 150, replace= TRUE ))

#create boxplot
ggplot(data, aes(x=team, y=values, fill=program)) + 
  geom_boxplot() 

Por padrão, ggplot2 usa o nome da variável no conjunto de dados como título da legenda. No entanto, podemos usar a função labs() para modificá-lo facilmente:

 library (ggplot2) 

#create dataset
data <- data.frame(team= rep (c('A', 'B', 'C'), each =50),
                   program= rep (c('low', 'high'), each =25),
                   values= seq (1:150)+ sample (1:100, 150, replace= TRUE ))

#create boxplot
ggplot(data, aes(x=team, y=values, fill=program)) + 
  geom_boxplot() + 
  labs(fill=' Program Type ') 

Alterar o título da legenda no ggplot2

Também podemos adicionar uma quebra de linha no título da legenda, colocando \ nonde queremos que a nova linha comece:

 library (ggplot2) 

#create dataset
data <- data.frame(team= rep (c('A', 'B', 'C'), each =50),
                   program= rep (c('low', 'high'), each =25),
                   values= seq (1:150)+ sample (1:100, 150, replace= TRUE ))

#create boxplot
ggplot(data, aes(x=team, y=values, fill=program)) + 
  geom_boxplot() + 
  labs(fill=' Program\nType ') 

Altere o título da legenda e adicione quebra de linha no ggplot2

Método 2: alterar o título da legenda usando scale_fill_manual()

Também podemos usar a função scale_fill_manual() para especificar simultaneamente um título de legenda e um vetor de valores de cores a serem usados:

 library (ggplot2) 

#create dataset
data <- data.frame(team= rep (c('A', 'B', 'C'), each =50),
                   program= rep (c('low', 'high'), each =25),
                   values= seq (1:150)+ sample (1:100, 150, replace= TRUE ))

#create boxplot
ggplot(data, aes(x=team, y=values, fill=program)) + 
  geom_boxplot() + 
  scale_fill_manual(' Program Type ', values=c(' pink ',' blue ')) 

Altere o título da legenda no ggplot2 usando scale_fill_manual

Observe que os valores das cores podem ser nomes ou códigos de cores hexadecimais.

Recursos adicionais

Um guia completo para os melhores temas ggplot2
O guia completo para títulos ggplot2
Como criar gráficos lado a lado no ggplot2

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *