Visualização de dados 3D em Python

No post anterior fiz uma breve introdução ao Matplotlib, que é uma biblioteca para visualização de dados do python. Também demonstrei como criar gráficos 2D de uma forma simples e com poucos comandos. Esta mesma biblioteca permite também criar gráficos mais sofisticados e em 3D.

Para criar os gráficos em 3D, existe um pacote de ferramentas do  Matplotlib, o mplot3d e será utilizado a sua função axes3d. Será utilizado também o PyPlot que é um módulo do Matplotlib para criação de gráficos. Para deixar os gráficos mais amigáveis será utilizado o pacote cm, que disponibiliza um mapa com diversas cores.

Nos exemplos a seguir será utilizada a versão 3 do Python e a distribuição Anaconda, assim o ambiente será instalado de forma completa, pois ao utilizar esta distribuição já terá o Python e as bibliotecas necessárias instaladas.

 

Exemplo básico de um gráfico 3D wireframe plot

# Importando as bibliotecas necessárias
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt

# Criando a figura e projeção em 3D
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# Utilizando dados de teste
X, Y, Z = axes3d.get_test_data(0.10)

# Criando um Plot básico
ax.plot_wireframe(X, Y, Z, rstride=15, cstride=15)

# Exibindo o gráfico criado
plt.show()

Exemplo 1 de gráfico 3D em Python

Exemplo de um gráfico Filled contours

# Importando as bibliotecas necessárias
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm

# Criando a figura e projeção em 3D
fig = plt.figure()
ax = fig.gca(projection='3d')

# Utilizando dados de teste
X, Y, Z = axes3d.get_test_data(0.15)

# Criando o gráfico
cset = ax.contourf(X, Y, Z, cmap=cm.coolwarm)

# Exibindo o gráfico criado
plt.show()

Exemplo 2 de gráfico 3D em Python

Exemplo de um gráfico Plotting Contour – utilizando extend3d

# Importando as bibliotecas necessárias
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm

# Criando a figura e projeção em 3D
fig = plt.figure()
ax = fig.gca(projection='3d')

# Utilizando dados de teste
X, Y, Z = axes3d.get_test_data(0.05)

# Criando o gráfico com extend3d
cset = ax.contour(X, Y, Z, extend3d=True, cmap=cm.seismic)

# Exibindo o gráfico criado
plt.show()

Exemplo 3 de gráfico 3D em Python

Dicas para utilização de gráficos 3d em Python

Antes de iniciar a criação dos gráficos, sempre deve ser levado em consideração os tipos de dados a serem exibidos e para que serão utilizados. Em alguns casos o gráfico em 3D pode dificultar o entendimento e leitura das informações, pois requer um pouco mais de atenção na análise e conhecimento dos dados apresentados. Nestes casos é necessário analisar a melhor forma de criar as apresentações, pois como visto nos exemplos do post anterior e neste post, podem ser criados de diversas formas e para diversos fins.

Estes e outros exemplos podem ser encontrados na documentação oficial do pacote mpot3d.

Leave a Reply