Criando Subplots com Plotly em Python

Ana Maria Gomes
5 minutos de leitura

Conteúdos do tutorial

Quando você está começando a programar em Python e quer visualizar dados, uma das bibliotecas mais poderosas à sua disposição é o Plotly. Com ela, você pode criar gráficos interativos e visualmente atraentes que ajudam a contar a história por trás dos seus dados. Neste tutorial, vamos focar em uma funcionalidade específica do Plotly: a criação de subplots. Vamos aprender como usar o Plotly para criar múltiplos gráficos em uma única figura, o que é extremamente útil quando você quer comparar diferentes conjuntos de dados ou visualizar várias dimensões dos seus dados simultaneamente.

O que são Subplots?

Subplots são, basicamente, gráficos menores que residem dentro de um gráfico maior, permitindo que você organize visualizações distintas lado a lado, em cima e embaixo, ou em qualquer configuração de grade que você desejar. Imagine que você tem dados sobre as temperaturas e precipitações mensais de uma cidade e quer visualizar ambos em um único relatório. Com subplots, você pode criar um gráfico de linhas para as temperaturas e um gráfico de barras para as precipitações, todos organizados de forma clara e concisa.

Como Criar Subplots com Plotly

Para começar, você precisa ter o Plotly instalado no seu ambiente Python. Se ainda não tem, você pode instalar facilmente usando pip:

pip install plotly

Agora, vamos ao código. Primeiro, importe as bibliotecas necessárias:

import plotly.graph_objects as go
from plotly.subplots import make_subplots

Exemplo 1: Subplots Simples

Vamos criar uma figura com dois subplots, um ao lado do outro:

# Cria uma figura com uma linha e duas colunas
fig = make_subplots(rows=1, cols=2)

# Adiciona um gráfico de barras no primeiro subplot
fig.add_trace(go.Bar(y=[2, 3, 1]), row=1, col=1)

# Adiciona um gráfico de linhas no segundo subplot
fig.add_trace(go.Scatter(y=[2, 1, 3]), row=1, col=2)

# Mostra a figura
fig.show()
subplots lado a lado

Exemplo 2: Subplots com Diferentes Tipos de Gráficos

Agora, vamos criar uma figura com subplots de diferentes tipos de gráficos:

# Cria uma figura com duas linhas e uma coluna, especificando os tipos de subplot
fig = make_subplots(rows=2, cols=1, subplot_titles=("Gráfico de Dispersão", "Gráfico de Pizza"),specs=[[{"type": "xy"}], [{"type": "pie"}]])

# Adiciona um gráfico de dispersão no primeiro subplot
fig.add_trace(go.Scatter(x=[1, 2, 3], y=[4, 5, 6], mode='markers'), row=1, col=1)

# Adiciona um gráfico de pizza no segundo subplot
fig.add_trace(go.Pie(values=[40, 30, 30]), row=2, col=1)

# Mostra a figura
fig.show()
subplots de diferentes tipos de gráficos

Exemplo 3: Subplots com Compartilhamento de Eixos

Em alguns casos, você pode querer que seus subplots compartilhem o mesmo eixo X ou Y para uma comparação mais direta:

# Cria uma figura com duas linhas e uma coluna, compartilhando o eixo X
fig = make_subplots(rows=2, cols=1, shared_xaxes=True)

# Adiciona dois gráficos de linhas que compartilham o mesmo eixo X
fig.add_trace(go.Scatter(x=[1, 2, 3], y=[4, 5, 6]), row=1, col=1)
fig.add_trace(go.Scatter(x=[1, 2, 3], y=[6, 5, 4]), row=2, col=1)

# Mostra a figura
fig.show()
subplots compartilhando o mesmo eixo

Dicas para Trabalhar com Subplots

  • Personalização: O Plotly oferece uma ampla gama de opções de personalização para seus gráficos. Você pode alterar cores, adicionar títulos, ajustar a legenda e muito mais.
  • Interatividade: Uma das grandes vantagens do Plotly é a interatividade dos gráficos. Você pode adicionar tooltips, zoom e outras funcionalidades interativas facilmente.
  • Documentação: Sempre que tiver dúvidas, consulte a documentação oficial do Plotly. Ela é uma excelente fonte de aprendizado e referência.

Agora que você aprendeu o básico sobre subplots com Plotly, experimente com seus próprios dados. Crie visualizações que ajudem a revelar insights e contar histórias. Lembre-se, a prática leva à perfeição, então continue explorando e aprendendo!

Inscreva-se gratuitamente e fique atualizado

Receba toda semana um resumo dos principais conteúdos da Asimov direto no seu e-mail. 100% livre de spam.

Áreas de interesse: