Seaborn의 barplot()은 기본적으로 각 막대에 신뢰 구간(confidence interval)을 나타내는 오차 막대(error bar)를 함께 표시합니다. 데이터의 불확실성을 보여주는 유용한 요소이지만, 시각화 목적에 따라서는 오히려 그래프를 복잡하게 만들 수 있습니다. 이 경우 ci 매개변수를 활용하면 오차 막대를 손쉽게 제거할 수 있습니다.
오차 막대를 끄는 방법
오차 막대를 제거하려면 다음 단계를 따르세요.
- 예제 데이터셋 로드: Seaborn에서 제공하는 온라인 저장소의 예제 데이터셋을 불러옵니다. (인터넷 연결 필요)
- 막대 그래프 생성:
ci=None옵션을 지정하여 오차 막대 없이 막대만 표시합니다. - 그래프 출력: Matplotlib의
show()메서드로 결과를 화면에 렌더링합니다.
핵심 포인트: ci 매개변수
ci(confidence interval) 매개변수는 부트스트랩 방식으로 추정한 신뢰 구간의 크기를 설정합니다. 기본값은 95이며, 이 값을 None으로 지정하면 오차 막대가 아예 그려지지 않습니다.
전체 예제 코드
import seaborn as sns
import matplotlib.pyplot as plt
# 그림 크기 및 자동 레이아웃 설정
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
# 타이타닉 예제 데이터셋 로드
df = sns.load_dataset('titanic')
# ci=None으로 오차 막대 제거
sns.barplot(x='class', y='age', hue='survived', data=df, ci=None)
plt.show()실행 결과
위 코드를 실행하면 타이타닉 데이터셋의 객실 등급(class)별 평균 나이가 생존 여부(survived)에 따라 구분되어 표시되며, 막대 위쪽의 오차 막대가 나타나지 않는 것을 확인할 수 있습니다.
참고: 최신 버전에서의 변경 사항
Seaborn 0.12 버전부터는 ci 매개변수가 deprecated(사용 중단 예정)되었으며, 대신 errorbar=None을 사용하는 것이 권장됩니다. 사용 중인 Seaborn 버전에 따라 적절한 매개변수를 선택하세요.
# Seaborn 0.12 이상 권장 방식 sns.barplot(x='class', y='age', hue='survived', data=df, errorbar=None)