Plotando Valores Mascarados e NaN

Beginner

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

Introdução

Na visualização de dados, é comum encontrar dados ausentes que precisam ser plotados. Neste tutorial, aprenderemos como plotar dados com valores ausentes usando Matplotlib. Exploraremos três métodos: remover pontos de dados indesejados, mascarar pontos e definir valores para NaN.

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

Precisamos importar as bibliotecas que usaremos neste tutorial. Usaremos Matplotlib e NumPy.

import matplotlib.pyplot as plt
import numpy as np

Criar Dados para Plotagem

Criaremos dados para plotar usando NumPy. Geraremos 31 pontos de dados entre -pi/2 e pi/2 e calcularemos o cosseno desses valores elevados à potência de 3.

x = np.linspace(-np.pi/2, np.pi/2, 31)
y = np.cos(x)**3

Remover Pontos

Removemos os pontos onde y > 0.7. Criaremos um novo array x e um array y com apenas os pontos restantes.

x2 = x[y <= 0.7]
y2 = y[y <= 0.7]

Mascar Pontos

Mascaremos os pontos onde y > 0.7 usando um array mascarado (masked array). Criaremos um novo array y com valores mascarados.

y3 = np.ma.masked_where(y > 0.7, y)

Definir como NaN

Definiremos como NaN onde y > 0.7. Criaremos um novo array y com valores NaN.

y4 = y.copy()
y4[y3 > 0.7] = np.nan

Plotar os Dados

Plotaremos todos os quatro conjuntos de dados usando diferentes marcadores e cores para diferenciá-los.

plt.plot(x*0.1, y, 'o-', color='lightgrey', label='No mask')
plt.plot(x2*0.4, y2, 'o-', label='Points removed')
plt.plot(x*0.7, y3, 'o-', label='Masked values')
plt.plot(x*1.0, y4, 'o-', label='NaN values')
plt.legend()
plt.title('Masked and NaN data')
plt.show()

Interpretar o Gráfico

O gráfico resultante terá quatro linhas de diferentes cores e marcadores. A primeira linha (cinza claro) representa os dados originais sem mascaramento. A segunda linha (laranja) representa os dados com pontos indesejados removidos. A terceira linha (verde) representa os dados com valores mascarados. A quarta linha (azul) representa os dados com valores NaN. Este gráfico mostra como dados ausentes podem ser visualizados usando diferentes métodos.

Resumo

Neste tutorial, aprendemos como plotar dados com valores ausentes usando Matplotlib. Exploramos três métodos: remover pontos de dados indesejados, mascarar pontos e definir valores para NaN. Criamos dados para plotar usando NumPy e usamos diferentes marcadores e cores para diferenciar os conjuntos de dados. Também interpretamos o gráfico resultante para entender os diferentes métodos de visualização de dados ausentes.