Matplotlib에서 플롯을 PDF 파일로 저장하는 방법
Suraj Joshi
2023년1월30일
Matplotlib에서 생성 된 플롯은savefig()
메소드에서 파일 이름의.pdf
확장자를 사용하여 PDF 파일로 간단히 저장할 수 있습니다. 하나의 PDF 파일에 여러 플롯을 저장하기 위해PdfPages
클래스를 사용합니다.
플롯을 PDF 파일로 저장하는savefig()
메소드
savefig()
메소드를 사용하여 Matplotlib에서 플롯을 이미지 파일로 간단히 저장할 수 있습니다.
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,
)
파라미터 섹션의fname
은 작업 디렉토리에 상대적인 파일 이름과 경로를 나타냅니다. 파일 이름의 확장자로.pdf
를 사용하면 플롯이 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")
생성 된 플롯을 현재 작업 디렉토리에서 savefig.pdf를 사용하여 파일을 PDF 파일로 저장으로 저장합니다.
PdfPages
클래스의savefig()
메소드
하나의 플롯에 여러 개의 플롯을 나타내려면 PdfPages
클래스의savefig()
메소드를 사용할 수 있습니다.
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()
Matplotlib에서 생성 된 4 개의 Figure를 현재 작업 디렉토리에서 파일 이름이 Save multiple plots as PDF.pdf
와 같은 단일 PDF 파일로 저장합니다.
여기서 우리는 각 플롯에 대한 그림을 반환 한 다음PdfPages
클래스의savefig()
메소드에 개별 그림을 전달하여 모든 그림을 단일 PDF 파일로 저장합니다.
작가: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn