(우쒸 !!! 포스팅 날짜를 보면 알 수도 있겠지만... 작성하던 내용을 날려먹었다 ㅠㅠ 😢 다시 작성하려니 ㅠㅠ)

 

지난 번에 살펴본 03장 Matplotlib 과 짝꿍으로 사용되는 seaborn 이라는 시각화 라이브러리에 대해 공부해보자.

 

개인적으로는 좀 더 예쁜 그래프가 필요할 때 seaborn을 사용하곤 했다 ^^

- https://seaborn.pydata.org/

 

 

 

1. 내장 데이터셋

pandas처럼 seaborn도 공부를 위한 내장 데이터셋을 제공해준다.

 

 

데이터셋을 불러와보자.

 

 

불러온 데이터셋은 pandas의 DataFrame 타입이기 때문에,

앞에서 공부한 pandas의 다양한 기능들을 그대로 사용할 수 있다.

 

제공해주는 데이터셋의 종류는 교재에서 너무나 잘 정리해주고 있다.

 

 

 

2. Graph

seaborn에서 제공해주는 그래프 유형은 다음과 같다.

- https://seaborn.pydata.org/examples/

 

 

전부 살펴볼 수는 없으니,

교재에서는 6종 그래프를 기준으로 설명을 해주고 있다.

 

① 범주형 변수 산점도 그래프

② 빈도 그래프

③ 선형 회귀선 있는 산점도

④ 히스토그램과 커널 밀도 추정 그래프

⑤ 조인트 그래프

⑥ 관계 그래프

 

하나씩 살펴보자.

 

① 범주형 변수 산점도 그래프: stripplot() / swarmplot()

연속형(Continuous) 변수가 아닌 범주형(Categorical) 변수를 위한 그래프 유형이다.

 

 

출력되는 그래프는 다음과 같다.

 

 

두 그래프는 거의 유사하지만,

swarmplot()의 경우 데이터 포인트가 겹치지 않도록 적절한 위치에 배치해준다는 차이가 있다.

 

 

② 빈도 그래프: countplot()

이번 그래프 역시 범주형(Categorical) 변수를 위한 것이다.

 

 

 

③ 선형 회귀선 있는 산점도: regplot()

이번에는 연속형(Continuous) 변수를 위한 것이다.

그리고 특히 두 변수 간의 선형 관계를 시각화하는 데 사용하는 그래프이다.

 

 

파악하기 어려운 파라미터가 보인다.

- scatter_kws: 산점도의 점 스타일을 지정

- line_kws: 회귀선의 스타일을 지정

- fit_reg: False로 설정하면 산점도를 그리지 않고 회귀선만 그린다.

 

 

 

④ 히스토그램과 커널 밀도 추정 그래프: histplot()

개인적인 생각이지만, 가장 많이 사용되는 그래프 형태이지 않을까 싶다.

 

이번 그래프 역시 연속형(Continuous) 변수를 위한 것인데,

Histogrm은 일정 간격으로 나누어 각 구간별 데이터 빈도를 막대그래프로 표현하는 그래프이다.

 

'커널 밀도 추정 그래프(Kernel Density Estimate Plot, KDE Plot)'은

막대 그래프 대신 부드러운 곡선을 사용한다는 차이가 있다.

 

 

 

⑤ 조인트 그래프: jointplot()

이번 그래프 역시 연속형(Continuous) 변수를 위한 것이고,

두 연속형 변수 간의 이변량 분포를 표현하며 주로 산점도와 히스토그램으로 함께 시각화하곤 한다.

 

 

파라미터 中 kind 부분에서 사용할 수 있는 결합 플롯의 유형은 다음과 같다.

- scatter: 산점도 플롯(기본값)

- kde: 커널 밀도 추정 그래프

- hex: 육각형 바이닝 플롯

- reg: 회귀선을 포함한 산점도 플롯

- resid: 회귀 분석 잔차 플롯

 

 

⑥ 관계 그래프: pairplot()

데이터셋의 모든 연속형(Continuous) 변수들 간의 산점도와 히스토그램을 한 번에 나타낸다.

 

 

파라미터 中 특이한 것만 알아보자.

- kind: 각 변수 간의 관계를 시각화 하는 방법 선택

  . scatter: 산점도 플롯(기본값)

  . kde: 커널 밀도 추정 그래프

  . hist: 히스토그램

  . reg: 회귀선을 포함한 산점도 플롯

- diag_kind: 대각선에 나타낼 그래프의 종류를 선택

  . hist: 히스토그램(기본값)

  . kde: 커널 밀도 추정 그래프

  . None: 대각선에 아무런 그래프도 표시하지 않음

 

 

Matplotlib에 비하면 분량이 적어서 천만 다행이었다 !!! 😍

반응형

+ Recent posts