Introdução
Neste laboratório, você aprenderá como criar um arquivo PDF de várias páginas com Python Matplotlib. O arquivo PDF conterá várias páginas com diferentes gráficos e metadados. Você também aprenderá como anexar anotações ao arquivo PDF.
Dicas da 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 Bibliotecas
Primeiramente, você precisa importar as bibliotecas necessárias para criar o arquivo PDF. Neste laboratório, usaremos as bibliotecas Matplotlib e datetime.
import datetime
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.backends.backend_pdf import PdfPages
Criar o Objeto PdfPages
Em seguida, você precisa criar um objeto PdfPages no qual salvará as páginas do arquivo PDF. Você pode usar a instrução 'with' para garantir que o objeto PdfPages seja fechado corretamente no final do bloco, mesmo que ocorra uma exceção.
with PdfPages('multipage_pdf.pdf') as pdf:
Criar a Primeira Página
Nesta etapa, você criará a primeira página do arquivo PDF. A página conterá um gráfico de um gráfico simples.
plt.figure(figsize=(3, 3))
plt.plot(range(7), [3, 1, 4, 1, 5, 9, 2], 'r-o')
plt.title('Page One')
pdf.savefig()
plt.close()
Criar a Segunda Página
Nesta etapa, você criará a segunda página do arquivo PDF. A página conterá um gráfico de uma onda senoidal.
plt.rcParams['text.usetex'] = True
plt.figure(figsize=(8, 6))
x = np.arange(0, 5, 0.1)
plt.plot(x, np.sin(x), 'b-')
plt.title('Page Two')
pdf.attach_note("plot of sin(x)") ## attach metadata (as pdf note) to page
pdf.savefig()
plt.close()
Criar a Terceira Página
Nesta etapa, você criará a terceira página do arquivo PDF. A página conterá um gráfico de uma parábola.
plt.rcParams['text.usetex'] = False
fig = plt.figure(figsize=(4, 5))
plt.plot(x, x ** 2, 'ko')
plt.title('Page Three')
pdf.savefig(fig) ## or you can pass a Figure object to pdf.savefig
plt.close()
Definir os Metadados do Arquivo PDF
Nesta etapa, você definirá os metadados do arquivo PDF. Você pode definir o título, autor, assunto, palavras-chave e data de criação/modificação do arquivo PDF.
d = pdf.infodict()
d['Title'] = 'Multipage PDF Example'
d['Author'] = 'Jouni K. Sepp\xe4nen'
d['Subject'] = 'How to create a multipage pdf file and set its metadata'
d['Keywords'] = 'PdfPages multipage keywords author title subject'
d['CreationDate'] = datetime.datetime(2009, 11, 13)
d['ModDate'] = datetime.datetime.today()
Resumo
Neste laboratório, você aprendeu como criar um arquivo PDF de várias páginas com Python Matplotlib. Você também aprendeu como anexar metadados e anotações ao arquivo PDF. Você pode usar essas técnicas para criar relatórios profissionais com múltiplos gráficos e anotações.