서브플롯(subplot)

yulsikogi·2024년 2월 23일
post-thumbnail

데이터를 분석하고 시각화 작업을 할 때, 서브플롯이라는 개념을 사용해서 시각화를 했다. 그렇다면 서브플롯은 무엇일까? 이해를 하고 넘어가보자.

서브플롯이란?

서브플롯은 하나의 그래픽 캔버스(또는 윈도우) 안에 여러 개의 작은 플롯들을 배열하는 방식이다. 각각의 작은 플롯은 독립적으로 그 내용을 나타내며, 다양한 데이터 세트나 다양한 관점의 데이터를 비교하는 데 유용하다.

쉽게 이해를 하면, 플롯이라는 단위가 존재하며, 하나의 캔버스에 하나의 플롯이 아닌 여러 플롯을 가질 수 있게 해주는 것이 서브플롯이라 볼 수 있다.

서브플롯은 왜 사용하고, 언제 사용할까?

서브플롯을 사용하는 이유는, 서로 다른 데이터 세트나 다양한 관점의 정보를 동시에 비교하고 분석할 수 있게 해주기 때문이다. 이런 방식은 복잡한 데이터를 보다 명확하고 효과적으로 시각화하며, 이해와 해석을 용이하게 해준다. 그렇기 때문에 한 번에 여러 관점을 보고 싶을 때, 서브플롯을 사용한다.

matplotlib에서 subplot() 사용하기

우선 subplot() 함수를 사용하면, 전체 그림과 서브플롯을 생성한다.

  1. Figure: 전체 그래픽 캔버스(윈도우)를 나타내며, 하나 이상의 서브플롯을 포함한다.
  2. Axes: 각 서브플롯을 나타내며, 각각의 Axes 객체는 독립적인 그래프를 그릴 수 있다.

예시코드

import matplotlib.pyplot as plt

fig, ax1 = plt.subplots(figsize=(10, 6))

subplot()을 사용하면 다음과 같이 사용할 수 있다. 각각의 저장된 형태를 보면 다음과 같다.

fig = Figure(2000x1200)
ax1 = Axes(0.125,0.11;0.775x0.77)

주로 서브플롯을 사용할 때

현재는 Airbnb와 관련해서 데이터를 분석하고 있는데, 서브플롯은 지역별 숙소의 개수와 평균 가격을 시각화하기 위해 사용했다.

이런 식으로 사용을 했다. 첫 번째 서브플롯은 지역별 숙소의 개수로, 막대 그래프 형태를 가지고 있다. 두 번째 서브플롯은 지역별 평균 가격으로 선 그래프 형태를 가지고 있다.

이렇게 시각화해서 보면 한눈에 알 수 있다. Manhattan이라는 지역이 가장 많은 숙소를 가지고 있고, 평균 가격도 가장 높다는 것이다. 이처럼 두 가지 이상의 관점에서 데이터를 비교하기 위해 서브플롯을 사용했다.

(지금은 하나의 그래프에 x축을 공유하도록 해서 그래프가 겹치도록 했지만, 각각을 독립적으로 플롯을 형성할 수도 있다.)

결론

서브플롯은 하나의 캔버스에서 다양한 관점을 볼 수 있게 제공해주는 개념이다. 시각화 작업을 할 때, 자주 사용되기 때문에 기본적인 이해를 해두는 것이 좋다.

profile
Let's enjoy it. For me

0개의 댓글