Gráfico de Halteres [R-ggplot2]
Danilo Scorzoni Ré
Posted on February 23, 2024
Neste post vou apresentar um tipo de gráfico que não é muito utilizado mas ainda sim é muito útil para mostrar a diferença entre grupos. O gráfico de halteres serve para mostrar a diferença de métricas entre dois momentos e tem sua aplicação para evidenciar crescimento (ou decrescimento).
Para a construção desse gráfico, será necessário:
- A variável Y precisa ser um fator ou qualitativo.
- A variável X precisa ser distribuída em 2 colunas, onde uma indica o primeiro estado e a segunda indica o segundo estado.
Vamos ao exemplo a seguir:
Imagine que você trabalha em um setor produtivo importante da empresa e gerencia 5 produtos diferentes. Neste gráfico, você quer comparar os diferentes produtos com as taxas de crescimento de vendas entre 2019 e 2020. Veja os dados a seguir:
# Criando o data-frame com os dados:
crescimento = data.frame(
produto = c("Produto A","Produto B","Produto C", "Produto D"),
cresc_2019 = c(0.1, 0.15, 0.07, 0.25),
cresc_2020 = c(0.15, 0.25, 0.54, 0.35)
)
crescimento
## produto cresc_2019 cresc_2020
## 1 Produto A 0.10 0.15
## 2 Produto B 0.15 0.25
## 3 Produto C 0.07 0.54
## 4 Produto D 0.25 0.35
Desta forma temos então, como exemplo, que o Produto A cresceu 10% (0.10) em 2019 e 15% (0.15) em 2020. Em seguida vamos construir um gráfico que mostre a evolução destas taxas de crescimento entre produtos entre 2019 e 2020. Você irá precisar do pacote ggalt que você pode instalar com o comando install.packages(“ggalt”)
se você não o tiver instalado:
library(tidyverse)
library(ggplot2)
library(ggalt)
crescimento %>%
ggplot(aes(y = produto, x = cresc_2019, xend = cresc_2020)) +
geom_dumbbell()
Esse gráfico não parece muito interessante nesse momento pois necessita de alguma personalização. Mas alguns insights já podem ser observados como por exemplo o salto de crescimento do Produto C; o Produto D saiu na frente em 2019 mas perdeu em crescimento para o Produto C; o baixo crescimento do Produto A, entre outros insights.
Para personalizar e deixar o gráfico mais interessante, vamos à seguir:
crescimento %>%
ggplot(aes(y = produto, x = cresc_2019, xend = cresc_2020, group = produto)) +
geom_dumbbell(alpha = 0.5) +
scale_x_continuous(label=scales::percent) + # Transformar eixo em %
geom_point(aes(y = produto, x = cresc_2020, color = "2020")) + # Cores dos pontos 2020
geom_point(aes(y = produto, x = cresc_2019, color = "2019")) + # Cores dos pontos 2019
theme_light() + # Tema mais leve/limpo
labs(
title = "Taxas de crescimento dos Produtos A-D entre 2019 e 2020.",
subtitle = "Dados do Departamento de Vendas",
x = "Taxa de Crescimento (%)",
y = "",
color = "Ano de Referência"
)
As cores ajudam muito em identificar casos onde o crescimento foi menor de um ano para o outro (não visível no nosso exemplo), e o tema mais limpo sem cor de fundo exalta de forma melhor os pontos e as linhas.
Por hoje é só! Deixe seu comentário se gostou desse conteúdo e sugestões para próximos artigos.
Posted on February 23, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.