Seaborn 카운트 플롯(Count Plot)이란?
Seaborn의 카운트 플롯(Count Plot)은 범주형 데이터의 각 항목별로 관측치가 몇 개씩 존재하는지를 막대(bar) 형태로 보여주는 그래프입니다. 이를 위해 seaborn.countplot() 함수를 사용하며, 막대의 색상과 테두리는 facecolor, linewidth, edgecolor 매개변수를 통해 자유롭게 꾸밀 수 있습니다.
각 매개변수의 역할은 다음과 같습니다.
- facecolor : 막대 내부의 채우기 색상을 지정합니다. RGBA 값으로 투명도 조절도 가능합니다.
- linewidth : 막대 테두리 선의 두께를 지정합니다.
- edgecolor : 막대 테두리의 색상을 지정하며, Seaborn의 컬러 팔레트를 활용할 수 있습니다.
1. 필요한 라이브러리 불러오기
먼저 Seaborn, Pandas, Matplotlib 라이브러리를 임포트합니다.
import seaborn as sb
import pandas as pd
import matplotlib.pyplot as plt
2. CSV 파일을 Pandas DataFrame으로 불러오기
이번 예제에서는 크리켓 선수 정보가 담긴 CSV 파일(Cricketers.csv)을 데이터셋으로 사용합니다. pd.read_csv()로 파일을 읽어 DataFrame에 저장합니다.
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers.csv")3. 막대 스타일을 적용한 카운트 플롯 그리기
'Age'(나이) 열을 기준으로 카운트 플롯을 그리면서, 막대 내부를 투명하게 처리하고(facecolor=(0, 0.0, 0, 0)) 두꺼운 테두리에 'dark' 팔레트 색상을 적용해 보겠습니다.
sb.countplot(dataFrame["Age"], facecolor=(0, 0.0, 0, 0), linewidth=3, edgecolor=sb.color_palette("dark", 2))전체 예제 코드
지금까지의 과정을 하나로 묶은 전체 코드는 다음과 같습니다.
import seaborn as sb
import pandas as pd
import matplotlib.pyplot as plt
# CSV 파일을 Pandas DataFrame으로 불러오기
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers.csv")
# Age 열을 기준으로 카운트 플롯 생성 및 막대 디자인 적용
sb.countplot(dataFrame["Age"], facecolor=(0, 0.0, 0, 0), linewidth=3, edgecolor=sb.color_palette("dark", 2))
# 그래프 화면에 표시
plt.show()
실행 결과
위 코드를 실행하면 나이(Age)별 선수 인원수가 막대로 표현된 카운트 플롯이 출력됩니다. 막대 내부는 투명하게 처리되고, 진한 색상의 굵은 테두리만 남아 있어 각 연령대의 분포를 한눈에 파악할 수 있습니다.

참고 사항
Seaborn 0.12 버전 이상에서는 열 이름을 위치 인자 대신 x= 또는 y= 키워드 인자로 전달하는 것이 권장됩니다. 최신 버전 환경이라면 다음과 같이 작성하세요.
sb.countplot(x=dataFrame["Age"], facecolor=(0, 0.0, 0, 0), linewidth=3, edgecolor=sb.color_palette("dark", 2))