Introdução
Neste laboratório, aprenderemos como usar o Matplotlib Axes Divider para criar layouts personalizados para subplots em uma figura.
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
Começaremos importando as bibliotecas necessárias para este laboratório: matplotlib.pyplot e mpl_toolkits.axes_grid1.
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import Divider
import mpl_toolkits.axes_grid1.axes_size as Size
Configurar a figura e os eixos
Criaremos um objeto figura e configuraremos quatro objetos eixos usando o método fig.add_axes.
fig = plt.figure(figsize=(5.5, 4))
rect = (0.1, 0.1, 0.8, 0.8)
ax = [fig.add_axes(rect, label="%d" % i) for i in range(4)]
Configurar o divisor de eixos
Configuraremos o divisor de eixos usando a classe Divider e as classes AxesX e AxesY do módulo mpl_toolkits.axes_grid1.axes_size. Em seguida, usaremos o método new_locator para definir a posição de cada eixo.
horiz = [Size.AxesX(ax[0]), Size.Fixed(.5), Size.AxesX(ax[1])]
vert = [Size.AxesY(ax[0]), Size.Fixed(.5), Size.AxesY(ax[2])]
divider = Divider(fig, rect, horiz, vert, aspect=False)
ax[0].set_axes_locator(divider.new_locator(nx=0, ny=0))
ax[1].set_axes_locator(divider.new_locator(nx=2, ny=0))
ax[2].set_axes_locator(divider.new_locator(nx=0, ny=2))
ax[3].set_axes_locator(divider.new_locator(nx=2, ny=2))
Personalizar os limites e a aparência dos eixos
Personalizaremos os limites e a aparência de cada eixo usando os métodos set_xlim, set_ylim e tick_params.
ax[0].set_xlim(0, 2)
ax[1].set_xlim(0, 1)
ax[0].set_ylim(0, 1)
ax[2].set_ylim(0, 2)
for ax1 in ax:
ax1.tick_params(labelbottom=False, labelleft=False)
Exibir o gráfico
Finalmente, exibiremos o gráfico usando o método show.
plt.show()
Resumo
Neste laboratório, aprendemos como usar o Matplotlib Axes Divider para criar layouts personalizados para subplots em uma figura. Criamos um objeto figura e configuramos quatro objetos eixos (axes), então usamos o axes divider para posicionar os eixos em uma grade. Personalizamos os limites e a aparência de cada eixo e exibimos o gráfico usando o método show.