Histograma 3D com Matplotlib

Beginner

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

Introdução

Neste laboratório, você aprenderá como criar um histograma 3D de dados 2D usando Python Matplotlib. Um histograma é uma representação gráfica de dados que agrupa uma faixa de valores em bins (classes), e o histograma 3D estende esse conceito adicionando uma terceira dimensão à visualização.

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 Bibliotecas

Antes de podermos criar o histograma 3D, precisamos importar as bibliotecas necessárias. Neste caso, usaremos NumPy e Matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Gerar Dados

Em seguida, geraremos alguns dados 2D aleatórios para usar no histograma. Usaremos a função random.rand() do NumPy para gerar 100 valores aleatórios para as variáveis x e y.

## Fixing random state for reproducibility
np.random.seed(19680801)

x, y = np.random.rand(2, 100) * 4

Criar o Histograma

Agora que temos nossos dados, podemos criar o histograma 3D. Usaremos a função histogram2d() do NumPy para criar um histograma 2D de nossos dados e, em seguida, usaremos a função bar3d() do Matplotlib para criar um gráfico de barras 3D do histograma.

hist, xedges, yedges = np.histogram2d(x, y, bins=4, range=[[0, 4], [0, 4]])

## Construct arrays for the anchor positions of the 16 bars.
xpos, ypos = np.meshgrid(xedges[:-1] + 0.25, yedges[:-1] + 0.25, indexing="ij")
xpos = xpos.ravel()
ypos = ypos.ravel()
zpos = 0

## Construct arrays with the dimensions for the 16 bars.
dx = dy = 0.5 * np.ones_like(zpos)
dz = hist.ravel()

ax.bar3d(xpos, ypos, zpos, dx, dy, dz, zsort='average')

Exibir o Histograma

Finalmente, podemos exibir o histograma usando a função show() do Matplotlib.

plt.show()

Resumo

Neste laboratório, você aprendeu como criar um histograma 3D de dados 2D usando Python Matplotlib. Você também aprendeu como gerar dados aleatórios, criar um histograma 2D e criar um gráfico de barras 3D do histograma. Seguindo estes passos, você pode criar seus próprios histogramas 3D para visualizar seus próprios dados.