5.9. Análise Exploratória de Dados com Matplotlib e Seaborn: Criação de gráficos de linha para séries temporais

A análise exploratória de dados (EDA - Exploratory Data Analysis) é um passo fundamental no processo de machine learning e deep learning. Ela permite que os cientistas e analistas de dados entendam melhor as tendências, padrões e relações dentro dos dados. Em particular, para séries temporais, a EDA é crucial para compreender como os valores mudam ao longo do tempo e identificar comportamentos sazonais ou tendências de longo prazo.

Neste contexto, as bibliotecas Matplotlib e Seaborn em Python são ferramentas poderosas para a visualização de dados. Ambas oferecem uma ampla gama de tipos de gráficos e estilos que podem ser personalizados para atender às necessidades específicas de qualquer análise. Vamos nos concentrar na criação de gráficos de linha, que são particularmente úteis para visualizar séries temporais.

Gráficos de Linha com Matplotlib

Matplotlib é uma biblioteca de plotagem 2D em Python que produz figuras de qualidade de publicação em uma variedade de formatos impressos e ambientes interativos em todas as plataformas. Os gráficos de linha com Matplotlib são criados usando a função plot(), que conecta pontos de dados com linhas.

Para começar, você precisa importar a biblioteca Matplotlib e, em seguida, preparar seus dados de série temporal. Os dados podem estar em qualquer estrutura que possa ser convertida em listas ou arrays do Python, como listas, arrays do NumPy ou DataFrames do Pandas. Aqui está um exemplo básico de como criar um gráfico de linha simples:


    import matplotlib.pyplot as plt

    # Suponha que temos duas listas: uma para o tempo e outra para os valores
    tempo = ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04']
    valores = [10, 20, 15, 25]

    plt.plot(tempo, valores)
    plt.xlabel('Tempo')
    plt.ylabel('Valores')
    plt.title('Gráfico de Linha de Série Temporal Simples')
    plt.show()
    

Este código produzirá um gráfico de linha básico, mas muitas vezes você precisará personalizar o gráfico para torná-lo mais informativo. Por exemplo, você pode querer formatar as datas no eixo x para que elas sejam mais legíveis ou adicionar marcadores em cada ponto de dados para destacá-los.

Personalização com Matplotlib

A personalização do gráfico de linha pode incluir adicionar uma grade, mudar a cor da linha, adicionar marcadores, configurar os limites dos eixos e muito mais. Aqui estão alguns exemplos de como você pode personalizar seu gráfico de linha:


    plt.plot(tempo, valores, color='green', marker='o', linestyle='--')
    plt.grid(True)
    plt.xlim('2021-01-01', '2021-01-04')
    plt.ylim(0, 30)
    

No exemplo acima, alteramos a cor da linha para verde, adicionamos marcadores circulares em cada ponto de dados e usamos uma linha tracejada. Também ativamos a grade e definimos os limites para os eixos x e y.

Gráficos de Linha com Seaborn

Seaborn é uma biblioteca de visualização de dados baseada em Matplotlib que oferece uma interface de alto nível para desenhar gráficos estatísticos atraentes. Para séries temporais, a função lineplot() do Seaborn é uma ótima opção, pois oferece funcionalidades adicionais como intervalos de confiança automaticamente calculados.

Assim como com Matplotlib, você precisa importar a biblioteca Seaborn e preparar seus dados. A seguir, um exemplo de como criar um gráfico de linha com Seaborn:


    import seaborn as sns

    # Utilizando o mesmo conjunto de dados do exemplo anterior
    sns.lineplot(x=tempo, y=valores)
    plt.xlabel('Tempo')
    plt.ylabel('Valores')
    plt.title('Gráfico de Linha de Série Temporal com Seaborn')
    plt.show()
    

O Seaborn automaticamente melhora a estética do gráfico e oferece uma visualização mais polida com menos código. Além disso, permite fácil integração com DataFrames do Pandas, o que é muito útil ao trabalhar com séries temporais.

Personalização com Seaborn

Personalizar gráficos de linha no Seaborn é tão fácil quanto no Matplotlib. Você pode modificar a paleta de cores, adicionar títulos, rótulos e muito mais. Além disso, o Seaborn trabalha bem com o contexto de estilo do Matplotlib, permitindo que você use comandos do Matplotlib para personalizar ainda mais o gráfico. Aqui está um exemplo de personalização com Seaborn:


    sns.lineplot(x=tempo, y=valores, color='purple', marker='s')
    plt.grid(True)
    plt.xticks(rotation=45) # Rota os rótulos do eixo x para melhor legibilidade
    plt.tight_layout() # Ajusta automaticamente os parâmetros do subplot
    

Neste exemplo, mudamos a cor da linha para roxo, adicionamos marcadores quadrados e rotacionamos os rótulos do eixo x para melhorar a legibilidade. O uso de tight_layout() é uma boa prática para garantir que nada seja cortado ao salvar ou exibir o gráfico.

Conclusão

A análise exploratória de dados é uma etapa crítica no processo de aprendizado de máquina e aprendizado profundo, e a visualização de dados desempenha um papel chave nessa análise. Gráficos de linha para séries temporais são uma ferramenta essencial para entender como os dados variam ao longo do tempo. Tanto o Matplotlib quanto o Seaborn são bibliotecas poderosas que oferecem funcionalidades robustas para criar gráficos de linha personalizados e informativos. Ao dominar essas bibliotecas, você pode extrair insights valiosos de seus dados e comunicar suas descobertas de forma eficaz.

Agora responda o exercício sobre o conteúdo:

Qual das seguintes afirmações sobre a criação de gráficos de linha para séries temporais com Python é correta?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Análise Exploratória de Dados com Matplotlib e Seaborn: Personalização de gráficos (cores, títulos, labels)

Próxima página do Ebook Gratuito:

15Análise Exploratória de Dados com Matplotlib e Seaborn: Personalização de gráficos (cores, títulos, labels)

5 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto