Como criar um barplot no ggplot2 com múltiplas variáveis
Um gráfico de barras é útil para visualizar as quantidades de diferentes variáveis categóricas.
Às vezes queremos criar um gráfico de barras que visualize as quantidades de variáveis categóricas divididas em subgrupos.
Por exemplo, podemos querer visualizar as vendas totais de pipoca e refrigerante de três estádios esportivos diferentes. Este tutorial fornece um exemplo passo a passo de como criar o seguinte gráfico de barras com múltiplas variáveis:
Etapa 1: crie os dados
Primeiro, vamos criar um data frame para armazenar nossos dados:
#createdata df <- data.frame(stadium= rep (c(' A ', ' B ', ' C '), each =4), food= rep (c(' popcorn ', ' soda '), times =6), sales=c(4, 5, 6, 8, 9, 12, 7, 9, 9, 11, 14, 13)) #viewdata df stadium food sales 1 A popcorn 4 2 A soda 5 3 A popcorn 6 4 A soda 8 5 B popcorn 9 6 B soda 12 7 B popcorn 7 8 B soda 9 9 C popcorn 9 10 C soda 11 11 C popcorn 14 12 C soda 13
Passo 2: Crie o Barplot com múltiplas variáveis
O código a seguir mostra como criar o gráfico de barras com múltiplas variáveis usando a função geom_bar() para criar as barras e o argumento ‘dodge’ para especificar que as barras em cada grupo devem “desviar” e ser exibidas lado a lado.
ggplot(df, aes (fill=food, y=sales, x=stadium)) + geom_bar(position=' dodge ', stat=' identity ')
As diferentes etapas – A, B e C – são exibidas ao longo do eixo x e as vendas correspondentes de pipoca e refrigerante (em milhares) são exibidas ao longo do eixo y.
Etapa 3: alterar a estética do Barplot
O código a seguir mostra como adicionar um título, alterar os rótulos dos eixos e personalizar cores no gráfico de barras:
ggplot(df, aes (fill=food, y=sales, x=stadium)) + geom_bar(position=' dodge ', stat=' identity ') + ggtitle(' Sales by Stadium ') + xlab(' Stadium ') + ylab(' Sales (in thousands) ') + scale_fill_manual(' Product ', values=c(' coral2 ',' steelblue '))
Recursos adicionais
Como alterar o título da legenda no ggplot2
Como alterar o tamanho da legenda no ggplot2
Um guia completo para os melhores temas ggplot2