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.