Eixos Locatáveis de Histograma e Dispersão

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Na visualização de dados, os gráficos de dispersão (scatter plots) são usados para mostrar a relação entre duas variáveis. Adicionalmente, os histogramas são úteis para mostrar a distribuição de uma única variável. Neste tutorial, você aprenderá como criar um gráfico de dispersão com histogramas usando a biblioteca Matplotlib do Python.

Dicas para a VM

Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.

Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.

Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.

Importar as Bibliotecas Necessárias

Nesta etapa, importaremos as bibliotecas necessárias.

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.axes_grid1 import make_axes_locatable

Criar Dados Aleatórios

Nesta etapa, criaremos dados aleatórios para usar no gráfico de dispersão.

np.random.seed(19680801)
x = np.random.randn(1000)
y = np.random.randn(1000)

Criar Gráfico de Dispersão

Nesta etapa, criaremos um gráfico de dispersão usando os dados aleatórios da Etapa 2.

fig, ax = plt.subplots(figsize=(5.5, 5.5))
ax.scatter(x, y)
ax.set_aspect(1.)

Criar Histogramas

Nesta etapa, criaremos histogramas para as variáveis x e y usando make_axes_locatable de mpl_toolkits.axes_grid1.

divider = make_axes_locatable(ax)
ax_histx = divider.append_axes("top", 1.2, pad=0.1, sharex=ax)
ax_histy = divider.append_axes("right", 1.2, pad=0.1, sharey=ax)

ax_histx.xaxis.set_tick_params(labelbottom=False)
ax_histy.yaxis.set_tick_params(labelleft=False)

binwidth = 0.25
xymax = max(np.max(np.abs(x)), np.max(np.abs(y)))
lim = (int(xymax/binwidth) + 1)*binwidth
bins = np.arange(-lim, lim + binwidth, binwidth)

ax_histx.hist(x, bins=bins)
ax_histy.hist(y, bins=bins, orientation='horizontal')

ax_histx.set_yticks([0, 50, 100])
ax_histy.set_xticks([0, 50, 100])

Exibir o Gráfico

Nesta etapa, exibiremos o gráfico de dispersão com histogramas.

plt.show()

Resumo

Neste tutorial, você aprendeu como criar um gráfico de dispersão com histogramas usando a biblioteca Matplotlib do Python. Primeiro, você importou as bibliotecas necessárias, em seguida, criou dados aleatórios para o gráfico de dispersão. Depois, você criou o gráfico de dispersão e os histogramas usando make_axes_locatable. Finalmente, você exibiu o gráfico.