Seaborn의 포인트 플롯(Point Plot)은 산점도 형태의 기호를 사용해 각 범주별 점 추정치(point estimate)와 신뢰 구간(confidence interval)을 한눈에 보여주는 시각화 기법입니다. 이러한 플롯은 seaborn.pointplot() 함수로 손쉽게 그릴 수 있으며, 오차 막대(error bar) 끝에 상한선, 즉 '캡(cap)'을 추가하고 싶다면 capsize 매개변수를 사용하면 됩니다.
데이터 준비
이번 예제에서는 크리켓 선수 정보가 담긴 CSV 파일(Cricketers.csv)을 데이터셋으로 사용합니다.
1. 필요한 라이브러리 불러오기
import seaborn as sb
import pandas as pd
import matplotlib.pyplot as plt
2. CSV 파일을 Pandas DataFrame으로 불러오기
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers.csv")
3. capsize 매개변수로 오차 막대 캡 설정하기
sb.pointplot(dataFrame['Role'], dataFrame['Age'], capsize=.3)
capsize=.3처럼 값을 지정하면 오차 막대 양 끝에 가로 방향의 캡이 생성되어, 신뢰 구간의 경계를 더욱 명확하게 확인할 수 있습니다.
전체 예제 코드
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")
sb.set_theme(style="darkgrid")
# 포인트 플롯 그리기
# capsize 매개변수로 오차 막대에 캡 설정
sb.pointplot(dataFrame['Role'], dataFrame['Age'], capsize=.3)
# 그래프 출력
plt.show()
실행 결과
위 코드를 실행하면 다음과 같은 포인트 플롯이 출력됩니다. 역할(Role)별 평균 나이가 점으로 표시되고, 각 오차 막대 끝에 캡이 함께 나타나는 것을 확인할 수 있습니다.

참고: 최신 버전 Seaborn에서 권장되는 작성 방식
Seaborn 0.13 버전부터는 열 데이터를 위치 인자로 전달하는 방식이 지원 중단(deprecated)되었습니다. 따라서 새 프로젝트에서는 아래와 같이 x, y 키워드 인자를 명시적으로 사용하는 것이 좋습니다.
# 개별 Series 전달
sb.pointplot(x=dataFrame['Role'], y=dataFrame['Age'], capsize=.3)
# 또는 DataFrame 전체를 data로 전달
sb.pointplot(data=dataFrame, x='Role', y='Age', capsize=.3)