Crie Visualizações Personalizadas com Matplotlib

Beginner

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

Introdução

Neste tutorial, aprenderemos como criar e personalizar gráficos usando Matplotlib. Matplotlib é uma biblioteca Python que oferece uma ampla gama de ferramentas para criar visualizações estáticas, animadas e interativas em Python.

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ê.

Importando as Bibliotecas Matplotlib e NumPy

O primeiro passo é importar as bibliotecas. Usaremos o módulo pyplot do Matplotlib e a biblioteca numpy.

import matplotlib.pyplot as plt
import numpy as np

Criando uma Figura e Subplots

O próximo passo é criar uma figura e subplots. Criaremos uma figura com dois subplots lado a lado usando a função subplots.

fig, (ax0, ax1) = plt.subplots(ncols=2, figsize=(7, 4))

Definindo a Relação de Aspecto e Plotando Dados

Agora, definiremos a relação de aspecto do primeiro subplot para 1 usando a função set_aspect e plotaremos alguns dados usando a função plot.

ax0.set_aspect(1)
ax0.plot(np.arange(10))

Personalizando os Rótulos dos Eixos

Para personalizar os rótulos dos eixos, podemos usar as funções set_xlabel e set_ylabel. Também podemos adicionar quebras de linha usando o caractere "\n".

ax0.set_xlabel('this is a xlabel\n(with newlines!)')
ax0.set_ylabel('this is vertical\ntest', multialignment='center')

Adicionando Texto ao Gráfico

Podemos adicionar texto ao gráfico usando a função text. Podemos especificar a posição, rotação, alinhamento horizontal e vertical, e multialinhamento do texto.

ax0.text(2, 7, 'this is\nyet another test',
         rotation=45,
         horizontalalignment='center',
         verticalalignment='top',
         multialignment='center')

Adicionando Linhas de Grade

Para adicionar linhas de grade ao gráfico, podemos usar a função grid.

ax0.grid()

Adicionando Texto Multilinha ao Segundo Subgráfico

No segundo subgráfico, adicionaremos texto multilinha usando a função text. Podemos especificar a posição, tamanho, alinhamento vertical e horizontal, e bbox do texto.

ax1.text(0.29, 0.4, "Mat\nTTp\n123", size=18,
         va="baseline", ha="right", multialignment="left",
         bbox=dict(fc="none"))

ax1.text(0.34, 0.4, "Mag\nTTT\n123", size=18,
         va="baseline", ha="left", multialignment="left",
         bbox=dict(fc="none"))

ax1.text(0.95, 0.4, "Mag\nTTT$^{A^A}$\n123", size=18,
         va="baseline", ha="right", multialignment="left",
         bbox=dict(fc="none"))

Personalizando os Rótulos do Eixo X

Para personalizar os rótulos do eixo x, podemos usar a função set_xticks. Podemos especificar as posições e os rótulos dos ticks.

ax1.set_xticks([0.2, 0.4, 0.6, 0.8, 1.],
               labels=["Jan\n2009", "Feb\n2009", "Mar\n2009", "Apr\n2009",
                       "May\n2009"])

Adicionando uma Linha Horizontal e Título ao Segundo Subgráfico

Para adicionar uma linha horizontal ao segundo subgráfico, podemos usar a função axhline. Também podemos adicionar um título ao subgráfico usando a função set_title.

ax1.axhline(0.4)
ax1.set_title("test line spacing for multiline text")

Ajustando as Posições dos Subgráficos e Exibindo o Gráfico

Finalmente, podemos ajustar as posições dos subgráficos usando a função subplots_adjust e exibir o gráfico usando a função show.

fig.subplots_adjust(bottom=0.25, top=0.75)
plt.show()

Resumo

Neste tutorial, aprendemos como criar e personalizar gráficos usando Matplotlib. Cobrimos como criar uma figura e subgráficos, plotar dados, personalizar rótulos dos eixos, adicionar texto ao gráfico, adicionar linhas de grade, personalizar rótulos do eixo x, adicionar uma linha horizontal e título ao gráfico, e ajustar as posições dos subgráficos. Matplotlib oferece uma ampla gama de ferramentas para criar visualizações estáticas, animadas e interativas em Python, tornando-a uma biblioteca poderosa para visualização de dados.