Skip to content

Plotly Heatmap - Dicas, Truques e Exemplos

Heatmaps são uma ferramenta poderosa no campo da visualização de dados. Eles nos permitem representar dados complexos de maneira visualmente intuitiva, tornando-os uma ferramenta essencial para cientistas de dados e analistas. Uma das bibliotecas mais populares para criar heatmaps é o Plotly, uma biblioteca Python que oferece um alto grau de personalização e interatividade. Neste guia, iremos explorar o mundo dos heatmaps do Plotly, explorando seus recursos e fornecendo exemplos práticos para ajudá-lo a criar suas próprias visualizações impressionantes.

O Plotly é uma biblioteca versátil que fornece uma interface fácil de usar para criar uma ampla gama de visualizações, incluindo heatmaps. Os heatmaps no Plotly não são apenas visualmente atraentes, mas também interativos, permitindo que os usuários ampliem, pan e pairando para obter uma compreensão mais profunda dos dados. Este guia fornecerá uma compreensão abrangente de como criar, personalizar e otimizar heatmaps do Plotly para suas necessidades de visualização de dados.

O que é um Heatmap?

Um heatmap é uma representação gráfica de dados onde os valores individuais são representados como cores. É uma maneira de plotar dados que pode ser especialmente útil quando você tem muitos pontos de dados e está interessado em padrões ou correlações. As variações de cor no heatmap podem destacar facilmente padrões e oferecer um resumo visual rápido das informações.

O que é um Heatmap do Plotly?

O heatmap do Plotly é um tipo de heatmap que pode ser gerado usando a biblioteca Plotly em Python. Ele oferece uma variedade de recursos que o tornam uma ferramenta poderosa para criar visualizações complexas de heatmap. Com o Plotly, você pode criar heatmaps que são interativos, personalizáveis e podem ser facilmente compartilhados ou incorporados em sites ou aplicativos.

Como Criar um Heatmap do Plotly?

A criação de uma heatmap do Plotly envolve alguns passos-chave. Primeiro, você precisa importar as bibliotecas necessárias e carregar seus dados. O Plotly Express, uma interface de alto nível para o Plotly, pode ser usado para criar heatmaps com apenas algumas linhas de código. Aqui está um exemplo básico:

import plotly.express as px
 
# Supondo que df seja um DataFrame do pandas
fig = px.imshow(df)
fig.show()

Neste exemplo, px.imshow() é usado para criar um heatmap a partir do DataFrame df. O heatmap resultante pode ser exibido usando fig.show().

Adicionando Anotações a um Heatmap do Plotly

Anotações podem ser adicionadas a um heatmap do Plotly para fornecer informações adicionais sobre os pontos de dados. Isso pode ser feito usando a função add_annotation() no Plotly. Aqui está um exemplo:

import plotly.graph_objects as go
 
fig = go.Figure(data=go.Heatmap(
                   z=[[1, 20, 30],
                      [20, 1, 60],
                      [30, 60, 1]]))
fig.add_annotation(text="Heatmap Anotado",
                  xref="paper", yref="paper",
                  x=0.5, y=-0.15, showarrow=False)
 
fig.show()

Neste exemplo, uma anotação é adicionada abaixo do heatmap. Os parâmetros xref e yref são definidos como "paper", o que significa que as coordenadas são

relativas ao tamanho da figura, com (0,0) sendo o canto inferior esquerdo e (1,1) sendo o canto superior direito.

Criando um Correlated Heatmap em Python

Um correlated heatmap é um tipo de heatmap frequentemente usado para visualizar a matriz de correlação de um conjunto de dados. A matriz de correlação é uma tabela que mostra os coeficientes de correlação entre várias variáveis. Cada célula na tabela mostra a correlação entre duas variáveis. Uma matriz de correlação é usada para resumir dados, como entrada em uma análise mais avançada e como diagnóstico para análises avançadas.

Em Python, você pode usar a biblioteca Plotly para criar um correlated heatmap. Aqui está um exemplo:

import plotly.figure_factory as ff
import numpy as np
import pandas as pd
 
# Supondo que df seja um DataFrame do pandas
corr_matrix = df.corr()
heatmap = ff.create_annotated_heatmap(z=corr_matrix.values, 
                                      x=list(corr_matrix.columns), 
                                      y=list(corr_matrix.index), 
                                      annotation_text=corr_matrix.round(2).values, 
                                      showscale=True)
 
heatmap.show()

Neste exemplo, primeiro calculamos a matriz de correlação do DataFrame df usando a função corr(). Em seguida, criamos um annotated heatmap usando a função create_annotated_heatmap() do plotly.figure_factory. Os valores de correlação são arredondados para duas casas decimais para o texto de anotação.

Alterando a Escala de Cores em um Heatmap do Plotly

A escala de cores de um heatmap pode ser alterada para melhor se adequar aos dados ou às preferências estéticas do usuário. O Plotly fornece uma variedade de escalas de cores para escolher, incluindo Cividis, Electric, Viridis e mais. Aqui está como você pode alterar a escala de cores:

import plotly.express as px
 
# Supondo que df seja um DataFrame do pandas
fig = px.imshow(df, colorscale='Viridis')
fig.show()

Neste exemplo, definimos a escala de cores como 'Viridis' usando o parâmetro colorscale na função imshow(). O heatmap resultante usará a escala de cores Viridis, que varia de roxo escuro a amarelo.

Heatmap com Plotly Express

O Plotly Express é uma interface de alto nível para o Plotly que torna mais fácil criar visualizações complexas com menos código. É particularmente útil para criar heatmaps. Aqui está um exemplo de como criar um heatmap com o Plotly Express:

import plotly.express as px
 
# Supondo que df seja um DataFrame do pandas
fig = px.imshow(df)
fig.show()

Neste exemplo, usamos a função imshow() do Plotly Express para criar um mapa de calor. Essa função infere automaticamente os rótulos x e y do DataFrame, tornando ainda mais fácil a criação de um mapa de calor.

Painel Interativo com Mapa de Calor do Plotly

Uma das características mais poderosas do Plotly é sua capacidade de criar painéis interativos. Esses painéis podem incluir várias visualizações, incluindo mapas de calor, e permitem que os usuários interajam com os dados em tempo real. Aqui está um exemplo de como criar um painel interativo com um mapa de calor do Plotly:

import plotly.graph_objs as go
from plotly.subplots import make_subplots
 
# Assuming df1 and df2 are pandas DataFrames
fig = make_subplots(rows=1, cols=2)
 
heatmap1 = go.Heatmap(z=df1.values, colorscale='Viridis')
heatmap2 = go.Heatmap(z=df2.values, colorscale='Cividis')
 
fig.add_trace(heatmap1, row=1, col=1)
fig.add_trace(heatmap2, row=1, col=2)
 
fig.show()

Neste exemplo, criamos um subplot com duas colunas. Em seguida, criamos dois mapas de calor usando DataFrames diferentes e os adicionamos ao subplot. O painel resultante irá exibir ambos os mapas de calor lado a lado, permitindo que os usuários os comparem interativamente.

Crie Facilmente um Mapa de Calor com o PyGWalker

Outra opção para criar um mapa de calor a partir do seu dataframe do pandas sem usar o plotly é usando o PyGWalker, uma biblioteca Python de código aberto, onde você pode criar visualizações de dados arrastando e soltando variáveis.

Veja como você pode começar rapidamente:

Configurando o pygwalker

Antes de começar, certifique-se de instalar os pacotes necessários através da linha de comando usando o pip ou conda. Usando o Pip: Para instalar o PygWalker, basta executar

pip install pygwalker

Se você quiser manter sua versão atualizada com o lançamento mais recente, tente:

pip install pygwalker --upgrade

Alternativamente, você também pode usar

pip install pygwalker --upgrade --pre

para obter os recursos e correções de bugs mais recentes.

Usando o Conda-forge:

Para instalar o PygWalker através do conda-forge, execute um dos seguintes comandos

conda install -c conda-forge pygwalker

ou

mamba install -c conda-forge pygwalker

Para obter mais ajuda, verifique o feedstock do conda-forge.

Execute o PyGWalker

Depois de ter o PygWalker instalado, você pode começar a usá-lo no Jupyter Notebook importando pandas e PygWalker.

import pandas as pd
import pygwalker as pyg

O PygWalker se integra perfeitamente ao seu fluxo de trabalho existente. Por exemplo, para chamar o Graphic Walker com um dataframe, você pode carregar seus dados usando o pandas e em seguida, executar:

df = pd.read_csv('./bike_sharing_dc.csv', parse_dates=['date'])
gwalker = pyg.walk(df)

Se você estiver usando polars (versão pygwalker >= 0.1.4.7a0), você também pode usar o PygWalker desta maneira:

import polars as pl
df = pl.read_csv('./bike_sharing_dc.csv', try_parse_dates=True)
gwalker = pyg.walk(df)

Para obter ainda mais flexibilidade, você pode experimentar o PygWalker online através do Binder (opens in a new tab), Google Colab (opens in a new tab), ou Kaggle Code (opens in a new tab).

Isso é tudo. Agora você tem uma interface de usuário semelhante ao Tableau para analisar e visualizar dados arrastando e soltando variáveis. PyGWalker com uma interface semelhante ao Tableau

Crie um Mapa de Calor

Após importar o dataframe do Pandas ou Polars, você pode criar facilmente um mapa de calor:

  1. Clique no botão Tipo de Marcação na barra de ferramentas e selecione 'Retângulo'.
  2. Clique esquerdo na sua variável e um menu aparecerá. Escolha a opção BIN.

PyGWalker é construído com o apoio de uma comunidade apaixonada de cientistas de dados e desenvolvedores. Confira a página do GitHub do PyGWalker (opens in a new tab) e dê uma estrela!

Perguntas Frequentes

  1. O que é um mapa de calor do Plotly? Um mapa de calor do Plotly é um tipo de mapa de calor que pode ser gerado usando a biblioteca Plotly em Python. Ele oferece uma variedade de recursos que tornam uma ferramenta poderosa para criar visualizações de mapa de calor complexas.

  2. Como criar um mapa de calor do Plotly? Você pode criar um mapa de calor do Plotly usando a função imshow() do Plotly Express ou a função Heatmap() do plotly.graph_objects. Você precisará passar seus dados para essas funções e elas retornarão uma figura que você pode exibir usando fig.show().

  3. Posso adicionar anotações a um mapa de calor do Plotly? Sim, você pode adicionar anotações a um mapa de calor do Plotly usando a função add_annotation(). Isso permite adicionar texto ou informações adicionais ao mapa de calor.