Cómo guardar gráficos como archivo PDF en Matplotlib
Los gráficos generados a partir de Matplotlib pueden guardarse simplemente como un archivo PDF utilizando la extensión .pdf
del nombre del archivo en el método savefig()
. Para guardar varias gráficos en un solo archivo PDF, utilizamos la clase PdfPages
.
Método savefig()
para guardar gráficos como archivo PDF
Simplemente podemos guardar un gráfico como un archivo de imagen en Matplotlib usando el método savefig()
.
Sintaxis para el método savefig()
:
matplotlib.pyplot.savefig(
fname,
dpi=None,
facecolor="w",
edgecolor="w",
orientation="portrait",
papertype=None,
format=None,
transparent=False,
bbox_inches=None,
pad_inches=0.1,
frameon=None,
metadata=None,
)
El fname
en la sección de parámetros representa el nombre y la ruta del archivo en relación con el directorio de trabajo. Si usamos .pdf
como la extensión del nombre de archivo, la trama se guarda como un archivo PDF.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 5, 50)
y = np.cos(2 * np.pi * x)
plt.scatter(x, y)
plt.plot(x, y)
plt.title("Plot of cosx")
plt.xlabel("x")
plt.ylabel("cosx")
plt.show()
plt.savefig("Save Plot as PDF file using savefig.pdf")
Esto guarda el diagrama generado con el nombre de archivo Guardar diagrama como archivo PDF usando savefig.pdf
en el directorio de trabajo actual.
Método savefig()
de la clase PdfPages
Si deseamos trazar varias gráficos en una sola, podemos usar el método savefig()
de la clase PdfPages
.
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
x = np.linspace(-3, 3, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = 1 / (1 + np.exp(-x))
y4 = np.exp(x)
def retFig(x, y):
fig = plt.figure()
a = plt.plot(x, y)
return fig
fig1 = retFig(x, y1)
fig2 = retFig(x, y2)
fig3 = retFig(x, y3)
fig4 = retFig(x, y4)
pp = PdfPages("Save multiple plots as PDF.pdf")
pp.savefig(fig1)
pp.savefig(fig2)
pp.savefig(fig3)
pp.savefig(fig4)
pp.close()
Esto guarda 4 figuras generadas en Matplotlib en un solo archivo PDF con el nombre del archivo como Guardar múltiples gráficos como PDF.pdf
en el directorio de trabajo actual.
Aquí, devolvemos figuras para cada gráfico y luego guardamos todas las figuras en un solo archivo PDF pasando figuras individuales en el método savefig()
de la clase PdfPages
.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn