Création d'un PDF multipage avec Matplotlib

PythonPythonBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous allez apprendre à créer un fichier PDF multipage avec Python Matplotlib. Le fichier PDF contiendra plusieurs pages avec différents tracés et métadonnées. Vous allez également apprendre à attacher des annotations au fichier PDF.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet de notes pour accéder au carnet Jupyter Notebook pour pratiquer.

Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations du carnet Jupyter Notebook.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Importation des bibliothèques

Tout d'abord, vous devez importer les bibliothèques nécessaires pour créer le fichier PDF. Dans ce laboratoire, nous utiliserons les bibliothèques Matplotlib et datetime.

import datetime
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.backends.backend_pdf import PdfPages

Créer l'objet PdfPages

Ensuite, vous devez créer un objet PdfPages dans lequel vous enregistrerez les pages du fichier PDF. Vous pouvez utiliser l'instruction 'with' pour vous assurer que l'objet PdfPages est correctement fermé à la fin du bloc, même si une exception se produit.

with PdfPages('multipage_pdf.pdf') as pdf:

Créer la première page

Dans cette étape, vous allez créer la première page du fichier PDF. La page contiendra un tracé d'un graphique simple.

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()

Créer la deuxième page

Dans cette étape, vous allez créer la deuxième page du fichier PDF. La page contiendra un tracé d'une onde sinusoïdale.

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()

Créer la troisième page

Dans cette étape, vous allez créer la troisième page du fichier PDF. La page contiendra un tracé d'une parabole.

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()

Définir les métadonnées du fichier PDF

Dans cette étape, vous allez définir les métadonnées du fichier PDF. Vous pouvez définir le titre, l'auteur, le sujet, les mots-clés et la date de création/modification du fichier 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()

Sommaire

Dans ce laboratoire, vous avez appris à créer un fichier PDF multipage avec Python Matplotlib. Vous avez également appris à attacher des métadonnées et des annotations au fichier PDF. Vous pouvez utiliser ces techniques pour créer des rapports professionnels avec de multiples tracés et annotations.