Appia의 IT세상

Python[파이썬] 데이터 시각화08 matplotlib 여러개의 Plot(플롯)을 한개의 PDF 파일로 저장하기 본문

Python/Python 기본

Python[파이썬] 데이터 시각화08 matplotlib 여러개의 Plot(플롯)을 한개의 PDF 파일로 저장하기

Appia 2021. 6. 25. 06:45
반응형

Python[파이썬] 데이터 시각화08 matplotlib 여러개의 Plot(플롯)을 한개의 PDF 파일로 저장하기 

Python[파이썬] 데이터 시각화07 matplotlib 여러개의 Plot(플롯)을 한개의 PDF 파일로 저장하기 

이전 포스팅은 여러개의 Plot을 한번에 출력하는 방법에 대해서 살펴봤습니다. 이번 포스팅은 이전 포스팅과 비슷하면서 약간은 차이가 있는 PDF 파일로 저장할 때에 대해서 이야기를 할려고 합니다. 이전에 한개의 plot에 대해서 저장하는 부분에 대해서 포스팅을 했었습니다. 

Python[파이썬] 데이터 시각화00 matplotlib 설치하기

 

Python[파이썬] 데이터 시각화00 matplotlib 설치하기

Python[파이썬] 데이터 시각화00 matplotlib 설치하기 이번 포스팅은 파이썬에서 가장 많이 사용하고 있는 데이터를 시각하는 하는 모듈에 대해서 설치하고 살펴보고자 합니다. 빅데이터 및 머신러닝

appia.tistory.com

이번 포스팅을 진행하기 위해서는 matplotlib 관련 모듈이 필요로 합니다. 따라서 상기 링크를 참조하셔서 관련해서 설치가 요구됩니다. 

 

일단, 위에서와 같이 여러개의 plot을 한개의 pdf포 설치하시길 위해서는 PdfPages클래스를 사용해야 합니다. 따라서 다음 부분에 대한 import가 필요로 합니다. 

from matplotlib.backends.backend_pdf import PdfPages

그리고 각 plot에 대해서 별도의 figure로 생성되어야 합니다. 따라서 좀더 쉽게 하기 위해서 plot에 대한 각 부분에 대한 figure생성을 함수로 처리하는 것이 효율적입니다. 

def returnfig(x,y):
    fig = plt.figure()
    a = plt.plot(x,y)
    return fig

 

그리고 PdfPages클래스를 생성해야합니다. 이 때 저장될 Path 및 파일이름을 인자로 사용하셔야 합니다. 그리고 위에서 생성한 함수를 이용하여, 각 부분에 대한 figure들을 savefig메소드를 이용하여 pdfpages에 추가해주셔야 합니다. 그럼 전체 코드를 살펴보겠습니다. 

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

def returnfig(x,y):
    fig = plt.figure()
    a = plt.plot(x,y)
    return fig

n1_figure = returnfig([1,2,3],[1,2,3])
n2_figure = returnfig([1,2,3],[3,2,1])


pdfsave = PdfPages("Twoplot.pdf")
pdfsave.savefig(n1_figure)
pdfsave.savefig(n2_figure)
pdfsave.close()

이의 코드를 실행하여 생성된 pdf를 실행하면 다음과 같은 결과가 나타납니다. 

pdf 실행 화면 

이와 같은 방법으로 여러개의 plot을 하나의 pdf파일로 저장이 가능합니다. 

Python[파이썬] 데이터 시각화06 matplotlib Plot(플롯) 파일로 저장하기 (이미지 파일, PDF파일로 저장하기)

이번 포스팅에서는 Python[파이썬] 데이터 시각화08 matplotlib 여러개의 Plot(플롯)을 한개의 PDF 파일로 저장하기라는 주제로 간단히 포스팅을 해봤습니다. 혹 궁금하신 점이나 문의 사항이 잇으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments