본문 바로가기
Matplotlib/공통

[파이썬 matplotlib] 한 화면에 그래프 여러개 그리기 (subplot2grid 이용)

by 만다린망고 2020. 11. 23.
반응형

[파이썬 matplotlib] 

한 화면에 그래프 여러개 그리기 (subplot2grid 이용)


한 화면에 그래프를 여러개 그래는 방법은 아래의 네가지 방법이 있습니다. 


1) subplot2grid

2) subplots 

3) subplot

4) add_subplot 


이번 글에서는 subplot2grid 를 이용하는 방법을 설명드리겠습니다. 아래 그래프를 통해 사용방법을 이해해봅시다. 


import numpy as np

import matplotlib.pyplot as plt


X = np.linspace(0,100,20)

Y1 = X

Y2 = X**2

Y3 = np.sin(X)

Y4 = np.tan(X)


grid=(2,4)


plt.subplot2grid(grid, (0,0),rowspan=1,colspan=3)

plt.plot(X,Y1)


plt.subplot2grid(grid, (0,3),rowspan=1,colspan=1)

plt.plot(X,Y2)


plt.subplot2grid(grid, (1,0),rowspan=1,colspan=2)

plt.plot(X,Y3)


plt.subplot2grid(grid, (1,2),rowspan=1,colspan=2)

plt.plot(X,Y4)


plt.tight_layout()

plt.show()



위 코드의 grid 자리에 들어간 2,4 는 화면을 2행4열로 분할한다는 의미입니다. 총 8칸이 생깁니다. 8칸 중 1행1열에 해당하는 위치가 (0,0)입니다. 1행2열은 (0,1) 입니다. 


첫번째 그래프인 아래 코드를 봅시다. (0,0)은 첫번째줄 첫번째 칸을 의미합니다. rowspan이 1, colspan 이 3이라는 것은 행1개 열3개를 쓴다는 의미입니다. 


plt.subplot2grid(grid, (0,0),rowspan=1,colspan=3)

plt.plot(X,Y1)


두번째 그래프인 아래 코드를 봅시다. (0,3)은 1행4열의 위치를 의미합니다. 첫번째줄 네번째 칸입니다. 한칸만 사용합니다. 


plt.subplot2grid(grid, (0,3),rowspan=1,colspan=1)

plt.plot(X,Y2)


반응형

댓글