Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Seaborn 막대 그래프에서 오차 막대(Error Bar) 제거하는 방법

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)