Criar Gráficos de Contorno 3D Personalizados

Beginner

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

Introdução

Neste laboratório, você aprenderá como criar um gráfico de contorno 3D preenchido triangular usando a biblioteca Matplotlib em Python. O gráfico será criado usando grades triangulares não estruturadas e triangulação personalizada. Você poderá controlar o ângulo de visão e o mapa de cores do gráfico.

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

O primeiro passo é importar as bibliotecas necessárias. Neste caso, precisaremos de Matplotlib, Numpy e Matplotlib Tri.

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.tri as tri

Criar as Coordenadas

Em seguida, criaremos as coordenadas x, y, z dos pontos. Criaremos a malha em coordenadas polares e calcularemos x, y, z.

n_angles = 48
n_radii = 8
min_radius = 0.25

radii = np.linspace(min_radius, 0.95, n_radii)
angles = np.linspace(0, 2*np.pi, n_angles, endpoint=False)
angles = np.repeat(angles[..., np.newaxis], n_radii, axis=1)
angles[:, 1::2] += np.pi/n_angles

x = (radii*np.cos(angles)).flatten()
y = (radii*np.sin(angles)).flatten()
z = (np.cos(radii)*np.cos(3*angles)).flatten()

Criar uma Triangulação Personalizada

Nesta etapa, criaremos uma triangulação personalizada e mascararemos os triângulos indesejados.

triang = tri.Triangulation(x, y)
triang.set_mask(np.hypot(x[triang.triangles].mean(axis=1),
                         y[triang.triangles].mean(axis=1))
                < min_radius)

Criar o Gráfico

Agora, criaremos o gráfico usando a função tricontourf() e personalizaremos o ângulo de visualização.

ax = plt.figure().add_subplot(projection='3d')
ax.tricontourf(triang, z, cmap=plt.cm.CMRmap)
ax.view_init(elev=45.)

plt.show()

Resumo

Neste laboratório, você aprendeu como criar um gráfico de contorno preenchido 3D triangular usando Matplotlib em Python. Você aprendeu como criar as coordenadas, criar uma triangulação personalizada e personalizar o ângulo de visualização e o mapa de cores do gráfico.