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

열려 있는 모든 Matplotlib 그림을 한 번에 하나의 파일에 저장

<시간/>

열려 있는 모든 Matplotlib 그림을 한 번에 하나의 파일에 저장하려면 다음 단계를 수행할 수 있습니다. −

  • 그림 크기를 설정하고 서브플롯 사이 및 주변 여백을 조정합니다.
  • 새 그림 만들기 (fig1) 또는 Figure()를 사용하여 기존 Figure를 활성화합니다. 방법.
  • plot()을 사용하여 첫 번째 줄을 플로팅합니다. 방법.
  • 새 그림 만들기 (fig2) 또는 Figure()를 사용하여 기존 Figure를 활성화합니다. 방법.
  • plot()을 사용하여 두 번째 줄을 플로팅합니다. 방법.
  • 변수 초기화, 파일 이름 , pdf 파일을 만듭니다.
  • 사용자 정의 기능, save_multi_image, 만들기 한 번에 하나의 파일에 열려 있는 모든 matplotlib 그림을 저장하기 위해 호출합니다. 새 PdfPages 만들기 개체, pp.
  • 열린 숫자의 수를 구합니다.
  • 열린 그림을 반복하고 파일에 저장합니다.
  • 그림을 표시하려면 show()를 사용하세요. 방법.

예시

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

plt.rcParams["figure.figsize"] = [7.50, 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)

출력

코드를 실행하면 다음 두 플롯이 PDF 파일 (multi.pdf)로 저장됩니다. 프로젝트 디렉토리에 있습니다.

열려 있는 모든 Matplotlib 그림을 한 번에 하나의 파일에 저장 열려 있는 모든 Matplotlib 그림을 한 번에 하나의 파일에 저장