Introdução
Na visualização de dados, os rótulos de marcação (tick labels) desempenham um papel importante na transmissão de informações aos visualizadores. Às vezes, pode ser necessário ajustar o alinhamento dos rótulos de marcação para torná-los mais legíveis ou para evitar sobreposições. Neste laboratório, aprenderemos como usar o Matplotlib para ajustar o alinhamento dos rótulos de marcação.
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 às limitações do 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 Matplotlib e AxisArtist
Primeiramente, precisamos importar o Matplotlib e o AxisArtist, que fornece ferramentas adicionais para criar eixos personalizados.
import matplotlib.pyplot as plt
import mpl_toolkits.axisartist as axisartist
Definir uma Função para Configurar os Eixos
Para simplificar o código, podemos definir uma função que recebe um objeto figura e uma posição como entrada, e retorna um objeto eixo com rótulos de marcação (tick labels) personalizados.
def setup_axes(fig, pos):
ax = fig.add_subplot(pos, axes_class=axisartist.Axes)
ax.set_yticks([0.2, 0.8], labels=["short", "loooong"])
ax.set_xticks([0.2, 0.8], labels=[r"$\frac{1}{2}\pi$", r"$\pi$"])
return ax
Criar uma Figura e Adicionar Subplots
Em seguida, podemos criar um objeto figura e adicionar três subplots usando a função setup_axes.
fig = plt.figure(figsize=(3, 5))
fig.subplots_adjust(left=0.5, hspace=0.7)
ax = setup_axes(fig, 311)
ax.set_ylabel("ha=right")
ax.set_xlabel("va=baseline")
ax = setup_axes(fig, 312)
ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")
ax.set_ylabel("ha=center")
ax.set_xlabel("va=top")
ax = setup_axes(fig, 313)
ax.axis["left"].major_ticklabels.set_ha("left")
ax.axis["bottom"].major_ticklabels.set_va("bottom")
ax.set_ylabel("ha=left")
ax.set_xlabel("va=bottom")
Ajustar o Alinhamento dos Rótulos de Marcação (Tick Label)
Finalmente, podemos usar os métodos set_ha e set_va para ajustar o alinhamento horizontal e vertical dos rótulos de marcação (tick labels).
ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")
Exibir o Gráfico
Para exibir o gráfico, podemos usar o método show.
plt.show()
Resumo
Neste laboratório, aprendemos como usar Matplotlib e AxisArtist para ajustar o alinhamento dos rótulos de marcação (tick labels). Ao personalizar o alinhamento horizontal e vertical dos rótulos de marcação, podemos melhorar a legibilidade e a clareza das nossas visualizações de dados.