Introdução
Matplotlib é uma biblioteca de visualização de dados para a linguagem de programação Python. Ela oferece uma ampla gama de ferramentas para criar diferentes tipos de gráficos e diagramas. O módulo GridSpec em Matplotlib nos permite criar layouts de subplots flexíveis e complexos. Neste tutorial, aprenderemos como usar GridSpec para criar layouts de subplots com múltiplas colunas/linhas.
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
Primeiramente, precisamos importar as bibliotecas necessárias. Usaremos Matplotlib e GridSpec.
import matplotlib.pyplot as plt
from matplotlib.gridspec import GridSpec
Criar uma figura
Em seguida, precisamos criar uma figura usando a função plt.figure(). Podemos definir o parâmetro layout como "constrained" para garantir que os subplots caibam dentro da figura.
fig = plt.figure(layout="constrained")
Criar um GridSpec
Podemos criar um objeto GridSpec usando a função GridSpec(). Precisamos especificar o número de linhas e colunas que desejamos em nossa grade. Neste exemplo, criaremos uma grade 3x3.
gs = GridSpec(3, 3, figure=fig)
Adicionar subplots ao GridSpec
Podemos adicionar subplots ao GridSpec usando a função fig.add_subplot(). Podemos especificar a localização do subplot na grade usando a notação de indexação do objeto GridSpec. Por exemplo, gs[0, :] especifica a primeira linha e todas as colunas.
ax1 = fig.add_subplot(gs[0, :])
ax2 = fig.add_subplot(gs[1, :-1])
ax3 = fig.add_subplot(gs[1:, -1])
ax4 = fig.add_subplot(gs[-1, 0])
ax5 = fig.add_subplot(gs[-1, -2])
Personalizar subplots
Podemos personalizar os subplots conforme necessário. Por exemplo, podemos definir o título da figura usando a função fig.suptitle(), e podemos formatar os eixos usando a função format_axes().
fig.suptitle("GridSpec")
def format_axes(fig):
for i, ax in enumerate(fig.axes):
ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center")
ax.tick_params(labelbottom=False, labelleft=False)
format_axes(fig)
Exibir o gráfico
Finalmente, podemos exibir o gráfico usando a função plt.show().
plt.show()
Resumo
Neste tutorial, aprendemos como usar o GridSpec para criar layouts de subplots com múltiplas colunas/linhas em Matplotlib. Criamos uma grade 3x3 e adicionamos subplots a ela. Personalizamos os subplots e exibimos o gráfico. GridSpec é uma ferramenta poderosa para criar layouts de subplot complexos em Matplotlib.