Introdução
Neste laboratório, compararemos as linhas de base de texto calculadas para mathtext e usetex usando a biblioteca Matplotlib. Criaremos um gráfico que contém dois subgráficos, um com mathtext e o outro com usetex. Cada subgráfico exibirá quatro strings de teste com diferentes estilos e posições.
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 a biblioteca matplotlib.pyplot para criar o gráfico.
import matplotlib.pyplot as plt
Definir a fonte do Matplotlib
Precisamos definir a fonte a ser usada para o texto do Matplotlib. Usaremos a fonte Computer Modern e a definiremos como a fonte padrão para o Matplotlib.
plt.rcParams.update({"mathtext.fontset": "cm", "mathtext.rm": "serif"})
Criar os subplots
Criaremos uma figura que contém dois subplots, um com mathtext e o outro com usetex. Usaremos o método subplots() para criar os subplots.
fig, axs = plt.subplots(1, 2, figsize=(2 * 3, 6.5))
Adicionar strings de teste ao gráfico
Adicionaremos quatro strings de teste a cada subplot, cada uma com um estilo e posição diferentes. Usaremos o método text() para adicionar o texto aos subplots.
test_strings = ["lg", r"$\frac{1}{2}\pi$", r"$p^{3^A}$", r"$p_{3_2}$"]
for ax, usetex in zip(axs, [False, True]):
ax.axvline(0, color="r")
for i, s in enumerate(test_strings):
ax.axhline(i, color="r")
ax.text(0., 3 - i, s,
usetex=usetex,
verticalalignment="baseline",
size=50,
bbox=dict(pad=0, ec="k", fc="none"))
Definir os limites e rótulos do gráfico
Definiremos os limites e rótulos do gráfico para corresponder à saída desejada.
for ax in axs:
ax.set(xlim=(-0.1, 1.1), ylim=(-.8, 3.9), xticks=[], yticks=[])
ax.set_title(f"usetex={ax.usetex}\n")
Exibir o gráfico
Exibiremos o gráfico usando o método show().
plt.show()
Resumo
Neste laboratório, aprendemos como comparar as linhas de base de texto calculadas para mathtext e usetex usando Matplotlib. Criamos um gráfico que continha dois subplots, um com mathtext e outro com usetex. Adicionamos quatro strings de teste a cada subplot, cada uma com um estilo e posição diferentes. Finalmente, exibimos o gráfico para comparar as linhas de base de texto.