Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

matplotlib에서 하나의 PDF 파일에 여러 그림 저장

<시간/>

한 번에 하나의 PDF 파일에 여러 그림을 저장하려면 다음 단계를 수행할 수 있습니다.

단계

  • Figure 크기를 설정하고 서브플롯 사이와 주변의 패딩을 조정합니다.

  • 새 그림 만들기 (fig1) 또는 Figure()를 사용하여 기존 Figure 활성화 방법.

  • plot()을 사용하여 첫 번째 줄을 플로팅합니다. 방법.

  • 다른 그림 만들기(fig2 ) 또는 Figure()를 사용하여 기존 Figure 활성화 방법.

  • plot()을 사용하여 두 번째 줄을 플로팅합니다. 방법.

  • 파일 이름 변수 초기화 , pdf 파일을 만듭니다.

  • 사용자 정의 함수 save_multi_image() 만들기 여러 이미지를 PDF 파일로 저장합니다.

  • save_multi_image() 호출 파일 이름이 있는 함수입니다.

  • PdfPages 만들기 개체.

  • 열려 있는 숫자의 수를 가져옵니다.

  • 열린 그림을 반복하고 파일에 저장합니다.

  • 생성된 PDF 개체를 닫습니다.

예시

from matplotlib import pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

fig1 = plt.figure()
plt.plot([2, 1, 7, 1, 2], color='red', lw=5)

fig2 = plt.figure()
plt.plot([3, 5, 1, 5, 3], color='green', lw=5)


def save_multi_image(filename):
    pp = PdfPages(filename)
    fig_nums = plt.get_fignums()
    figs = [plt.figure(n) for n in fig_nums]
    for fig in figs:
        fig.savefig(pp, format='pdf')
    pp.close()

filename = "multi.pdf"
save_multi_image(filename)

출력

matplotlib에서 하나의 PDF 파일에 여러 그림 저장

실행 시 프로젝트 디렉토리에 PDF "multi.pdf"가 생성되고 해당 파일에 다음 두 이미지가 저장됩니다.

matplotlib에서 하나의 PDF 파일에 여러 그림 저장