Seaborn은 데이터 시각화를 돕는 파이썬 라이브러리로, 세련되게 디자인된 테마와 고수준 인터페이스를 제공하여 누구나 손쉽게 아름다운 그래프를 만들 수 있도록 지원합니다.
막대 그래프(barplot)와 점 그래프(pointplot)
barplot 함수는 범주형 변수와 연속형 변수 사이의 관계를 나타내는 데 사용됩니다. 데이터는 직사각형 막대 형태로 표현되며, 막대의 길이가 해당 범주에 속한 데이터의 비율을 의미합니다.
점 그래프(pointplot)는 막대 그래프와 유사하지만, 채워진 막대 대신 다른 축의 특정 높이에 위치한 점으로 데이터 포인트의 추정값을 표현한다는 차이가 있습니다.
factorplot이란 무엇인가?
범주형 데이터는 범주형 산점도(categorical scatter plot) 또는 두 개의 개별 플롯을 통해 시각화할 수 있으며, 이때 pointplot이나 더 높은 수준의 추상화를 제공하는 factorplot 함수를 활용할 수 있습니다.
factorplot 함수는 'kind' 매개변수를 사용하여 FacetGrid 위에 범주형 플롯을 그립니다. 별도로 지정하지 않으면 FacetGrid는 기본적으로 pointplot 함수를 사용합니다.
그럼 Seaborn에서 factorplot을 사용해 시각화를 구현하는 방법을 살펴보겠습니다.
예제 코드
import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
my_df = sb.load_dataset('exercise')
sb.factorplot(x = "time", y = "pulse", hue = "kind",data = my_df);
plt.show()실행 결과

코드 설명
- pandas, seaborn, matplotlib 등 필요한 패키지들을 임포트합니다.
- 입력 데이터는 seaborn 라이브러리에서 제공하는 'exercise' 데이터셋입니다.
- 'load_dataset' 함수를 사용해 해당 데이터를 불러온 후, 데이터프레임(my_df)에 저장합니다.
- 'factorplot' 함수를 호출하여 데이터를 시각화합니다.
- 이때 데이터프레임이 data 매개변수로 전달되며, x축에는 'time', y축에는 'pulse' 값이 지정됩니다.
- hue 매개변수에 'kind'를 지정하여 운동 종류별로 구분된 결과를 한눈에 확인할 수 있습니다.
- plt.show()를 통해 최종 그래프가 화면에 출력됩니다.
참고 사항
Seaborn 0.9.0 이상 버전에서는 factorplot이 catplot으로 이름이 변경되었습니다. 최신 버전을 사용 중이라면 sb.catplot(x = "time", y = "pulse", hue = "kind", data = my_df)처럼 동일한 방식으로 호출하면 됩니다.