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

Seaborn KDE 플롯 축 레이블 지정 및 스케일 변경 방법 (Matplotlib)

Seaborn의 kdeplot()으로 그린 커널 밀도 추정(KDE) 그래프에서 축에 레이블을 지정하고 스케일을 변경하려면 다음 단계를 따르면 됩니다.

  • 그림(figure) 크기를 설정하고 서브플롯 사이와 주변의 여백(padding)을 자동으로 조정합니다.
  • NumPy를 사용하여 무작위 데이터 포인트를 생성합니다.
  • kdeplot() 메서드를 호출해 커널 밀도 추정 그래프를 그리고, 반환된 객체를 변수에 저장합니다.
  • 저장된 객체에서 눈금 값을 가져와 yticks()로 Y축 스케일을 설정하고, ylabel()로 축 레이블을 지정합니다.
  • show() 메서드를 사용하여 최종 그림을 화면에 표시합니다.

예제 코드

import numpy as np
import seaborn as sns
from matplotlib import pyplot as plt

# 그림 크기 및 자동 레이아웃 설정
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

# 무작위 데이터 생성
data = np.random.randn(10)

# KDE 플롯 그리기
k = sns.kdeplot(x=data, shade=True)

# Y축 눈금(스케일)과 레이블 설정
plt.yticks(k.get_yticks(), k.get_yticks())
plt.ylabel('Y', fontsize=7)

plt.show()

코드 설명

sns.kdeplot(x=data, shade=True)는 데이터의 확률 밀도를 부드러운 곡선으로 시각화하며, shade=True 옵션으로 곡선 아래 영역을 채워 줍니다. 이때 반환되는 Matplotlib Axes 객체를 변수 k에 저장한 뒤, k.get_yticks()로 현재 Y축 눈금 값을 가져올 수 있습니다. 가져온 눈금 값을 plt.yticks()에 그대로 전달하면 Y축 스케일이 명시적으로 고정되며, plt.ylabel('Y', fontsize=7)을 통해 원하는 글꼴 크기의 축 레이블을 추가할 수 있습니다.

실행 결과

Seaborn KDE 플롯 축 레이블 지정 및 스케일 변경 방법 (Matplotlib)