Análise Exploratória de Dados com o Gráfico de Histograma

Neste artigo entendemos sobre a importância da visualização de dados e vimos o que é, como funciona e como gerar gráficos de histograma. Esse tipo de gráfico é útil para diversas análises e pode ser facilmente produzido e personalizado usando linguagens de programação, como R e Python.

Entender a origem dos dados e suas principais características é fundamental para produzir análises ou previsões úteis na ciência de dados. As estatísticas descritivas ajudam muito nesse sentido e sumarizam informações relevantes sobre as variáveis, mas às vezes isso não é suficiente. Para obter uma visão geral dos dados é importante explorar também os métodos de visualização.

A visualização de dados é a sua exibição visual, através de representações tabulares, gráficas ou por diagramas, como forma de comunicar alguma informação. É um processo que aplica conjuntamente matemática, estatística, artes gráficas e comunicação, portanto é uma das tarefas menos automatizáveis da análise e ciência de dados, sendo dificilmente substituível por máquinas no curto prazo. Nesse sentido, em tempos de Inteligência Artificial, robôs e Big Data, a visualização de dados é uma habilidade importante para se ter no currículo, principalmente se usada em conjunto com técnicas de data storytelling. Naturalmente, existem diversas formas de visualizar dados através de gráficos, desde as mais simples até as mais complexas. Exemplos comuns que vemos no nosso cotidiano são os gráficos de barras, linhas, colunas, de pizza, etc., que são simples de entender e podem ser usados para propósitos diferentes. No entanto, quando o objetivo é analisar a distribuição dos dados, o gráfico de histograma é uma ótima opção. É um tipo de gráfico que é fácil de produzir e interpretar.

Análises de dados possíveis com gráficos de histograma

Os gráficos de histograma são ferramentas poderosas para analisar e visualizar dados. Eles são especialmente úteis para analisar a distribuição de valores em um conjunto de variáveis contínuas. Algumas análises de dados comuns que podem ser feitas usando gráficos de histograma são:
  1. Distribuição dos dados: histogramas permitem visualizar a forma da distribuição dos dados, sendo possível verificar se os dados são simétricos (distribuição normal), assimétricos (distribuição assimétrica positiva ou negativa) ou se possuem múltiplos picos (distribuição bimodal ou multimodal).
  2. Tendência central: histogramas podem ajudar a determinar a tendência central dos dados, sendo possível identificar facilmente estatísticas como média, mediana e moda.
  3. Dispersão: histogramas fornecem uma ideia da dispersão dos dados, sendo possível analisar o intervalo sobre o qual os valores ocorrem, sua amplitude ou estreiteza.
  4. Valores extremos: histogramas permitem identificar valores extremos ou outliers, que aparecerão como barras isoladas e não seguirão o padrão geral da distribuição.
  5. Comparação de grupos: histogramas possibilitam comparar visualmente a distribuição de diferentes grupos que podem existir nos dados, o que pode ajudar a identificar diferenças ou semelhanças entre os grupos.
Essas são apenas algumas análises de dados possíveis com gráficos de histograma. É importante lembrar que o histograma é uma ferramenta exploratória e, muitas vezes, serve como base para análises mais avançadas e estatísticas descritivas.

O que é um gráfico de histograma?

Um gráfico de histograma é uma representação visual da distribuição de dados contínuos em intervalos (blocos) de valores. Ele consiste em um eixo horizontal, que representa as faixas de valores do conjunto de dados, e um eixo vertical, que indica a frequência ou a densidade desses valores.
Elementos de um gráfico de histograma: o eixo horizontal com as faixas de valores e o eixo vertical com a frequência de cada intervalo
Os elementos que compõem um gráfico de histograma.
No gráfico de histograma, cada barra vertical representa um intervalo de valores, e sua altura indica a frequência ou a contagem de ocorrências nesse intervalo. As barras geralmente são adjacentes e não há espaços entre elas, pois a distribuição é contínua. É frequentemente usado em análise exploratória de dados, estatística descritiva e tomada de decisões em várias áreas, como economia, finanças, ciência, engenharia e pesquisas sociais. É importante notar que um histograma é diferente de um gráfico de barras tradicional, onde as barras representam categorias discretas e independentes. O histograma, por outro lado, lida com variáveis contínuas e mostra como os dados estão distribuídos em relação a intervalos específicos.

📩 Onde a estatística vira decisão

O método que você acabou de ver não envelheceu: o que mudou foi o tempo que ele leva. No Boletim AM eu mostro, todo dia, estatística, econometria e IA aplicadas à economia, ao mercado financeiro e à análise de dados. Com dado real e sem enrolação.

Receber o Boletim AM → Todo dia no seu e-mail. Gratuito, e sai num clique.
 

Como gerar gráficos de histograma?

  Em análise e ciência de dados podemos gerar gráficos de histograma de maneira fácil usando linguagens de programação, como R e Python. A vantagem de usar linguagens de programação para visualizar dados é a possibilidade de customização, flexibilidade para visualizações estáticas ou interativas e a integração com o restante do fluxo de análise ou ciência de dados. Além disso, existem pacotes que possibilitam gerar visualizações com poucos ou um único comando/função, como os famosos ggplot2, matplotlib, plotly, plotnine e outros.   Abaixo mostramos um exemplo de gráfico de histograma com a variável "meta para a inflação" da economia brasileira. Os dados são do período de 1999 até hoje, em %, e a fonte é o BCB.   Os códigos abaixo foram reexecutados e estão atualizados. A API do Banco Central às vezes responde com erro 502 em requisições seguidas, então a coleta vai com nova tentativa; sem isso, o script falha de forma intermitente por motivo que não está no código.  

R

 
# Carregar pacotes
library(rbcb)      # dados do Banco Central
library(ggplot2)   # gramática de gráficos

# Coleta da meta para a inflação (código 13521 no SGS do BCB).
# A API às vezes devolve erro 502, por isso a nova tentativa.
coletar_meta <- function(tentativas = 5) {
  for (i in seq_len(tentativas)) {
    resposta <- try(rbcb::get_series(c("meta" = 13521)), silent = TRUE)
    if (!inherits(resposta, "try-error")) return(resposta)   # deu certo
    Sys.sleep(8)                                             # aguarda e repete
  }
  stop("O SGS do BCB não respondeu após várias tentativas")
}

tabela <- coletar_meta()

# Gráfico de histograma
tabela |>
  ggplot2::ggplot() +
  ggplot2::aes(x = meta) +                        # a variável no eixo horizontal
  ggplot2::geom_histogram(binwidth = 1) +         # faixas de 1 ponto percentual
  ggplot2::scale_x_continuous(n.breaks = 8) +     # marcas de eixo legíveis
  ggplot2::labs(
    title = "Gráfico de Histograma",
    y     = "Contagem",
    x     = "Meta para a inflação, %"
  )
Gráfico de histograma em R da meta para a inflação no Brasil, com a maior barra concentrada em torno de 4,5%
Histograma gerado em R com o ggplot2. Fonte: BCB.

Python

# Importar bibliotecas
from bcb import sgs         # dados do Banco Central
import plotnine as p9       # gramática de gráficos
import time                 # pausa entre as tentativas

# Coleta da meta para a inflação (código 13521 no SGS do BCB).
# A API às vezes devolve erro 502, por isso a nova tentativa.
def coletar_meta(tentativas=5):
    for _ in range(tentativas):
        try:
            return sgs.get({"meta": 13521})   # deu certo: devolve a tabela
        except Exception:
            time.sleep(8)                     # aguarda e repete
    raise RuntimeError("O SGS do BCB não respondeu após várias tentativas")

tabela = coletar_meta()

# Gráfico de histograma
grafico = (
    p9.ggplot(tabela)
    + p9.aes(x="meta")                                 # a variável no eixo horizontal
    + p9.geom_histogram(binwidth=1)                    # faixas de 1 ponto percentual
    + p9.scale_x_continuous(breaks=range(0, 9))        # marcas de eixo legíveis
    + p9.ggtitle("Gráfico de Histograma")
    + p9.ylab("Contagem")
    + p9.xlab("Meta para a inflação, %")
)

print(grafico)
Gráfico de histograma em Python com plotnine da meta para a inflação no Brasil
O mesmo histograma gerado em Python com o plotnine. Fonte: BCB.

O que este histograma mostra

A série tem 28 observações anuais, de 1999 a 2026. A distribuição é bastante concentrada: a meta ficou em 4,50% em 14 desses anos, ou seja, em metade do período. As demais metas se espalham entre 3,00% e 8,00%, com os valores mais altos restritos ao início do regime. A barra isolada na extremidade direita corresponde a 1999, o primeiro ano do sistema de metas, quando o alvo era 8,00%.
Meta (%) Nº de anos
3,00 3
3,25 1
3,50 2
3,75 1
4,00 3
4,25 1
4,50 14
5,50 1
6,00 1
8,00 1
Uma observação sobre a escolha do intervalo: com binwidth = 1, metas próximas como 4,25% e 4,50% caem na mesma barra. Reduzir a largura separa esses valores e revela o detalhe das revisões recentes, ao custo de um gráfico mais fragmentado. A largura do intervalo é uma decisão de análise, não um padrão fixo.

Quando o histograma não basta

O histograma mostra a distribuição de uma variável por vez e não informa nada sobre a relação entre duas. Para isso, o caminho é o gráfico de dispersão. Quando o objetivo é comparar a distribuição entre grupos, o gráfico de boxplot resolve melhor, porque coloca as caixas lado a lado e resume cada grupo em cinco medidas.

Conclusão

Neste artigo entendemos sobre a importância da visualização de dados e vimos o que é, como funciona e como gerar gráficos de histograma. Esse tipo de gráfico é útil para diversas análises e pode ser facilmente produzido e personalizado usando linguagens de programação, como R e Python.

Da visualização à análise completa

Explorar a distribuição é o primeiro passo; o seguinte é modelar. O AM Black é a assinatura anual que dá acesso a todos os cursos da Análise Macro, em R e em Python, da estatística descritiva à econometria aplicada.

Conhecer o AM Black →

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print
Análise Macro © 2011 / 2026

comercial@analisemacro.com.br – Rua Visconde de Pirajá, 414, Sala 718
Ipanema, Rio de Janeiro – RJ – CEP: 22410-002

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp