본문 바로가기

시각화/Seaborn

Seaborn - 관계 그래프 : pairplot

반응형
이변수 데이터의 분포

인자로 전달되는 데이터프레임의 열(변수)을 두 개씩 짝 지을 수 있는 모든 조합에 대해서 표현

* 열은 정수/실수형이어야 함


3개의 열이라면 3행 x 3열의 크기로 모두 9개의 그리드를 만든다.


각 그리드의 두 변수 간의 관계를 나타내는 그래프를 하나씩 그리며

같은 변수끼리 짝을 이루는 대각선 방향으로는 히스토그램을 그린다.


서로 다른 변수 간에는 산점도를 그린다.

 

 

 

데이터 불러오기

 

https://steadiness-193.tistory.com/196

 

Seaborn - 이차원 밀집도 : kdeplot

이차원 밀집도는 두개의 컬럼을 이용하며 kdeplot으로 그릴 수 있다. seaborn의 타이타닉 데이터에서 https://steadiness-193.tistory.com/78 판다스 - 특잇값(outlier) 찾아내기 : Tukey Fences, Z-score https:/..

steadiness-193.tistory.com

 

위 포스팅에서 아웃라이어와 누락값들을 제거한 타이타닉 데이터프레임에서

 

 

나이, 등급, 요금, 성별 컬럼만 뽑아낸 ndf 데이터프레임을 이용한다.

 

 

 

 

 

pairplot

 

 

대각선 방향으로는 하나의 열의 히스토그램을 나타낸다.

 

대각선 기준 위 아래는 사실 축이 전환된 것 뿐 보여주는 결과는 같다.

 

 

 

 

 

 

 

hue 옵션 추가

 

 

기존 pairplot에 성별을 기준으로 나눠서 그릴 수도 있다.

 

 

 

 

 

색상 변화

palette='husl'

 

 

palette 옵션으로 전체 테마의 색상을 바꿀 수도 있다.

 

 

 

 

 

 

마커 변경

markers=['o', 's']

 

s=square

 

 

 

 

 

 

보고 싶은 컬럼 제한

vars=['컬럼명', '컬럼명', ...,]

 

 

 

숫자형 컬럼이 너무 많다면 그래프의 개수도 급증할 수 있다.

 

이 때 필요한 컬럼의 그래프만 보고 싶다면 vars 옵션에 원하는 컬럼만 입력해주면 된다.

 

 

 

 

 

 

크기 조절

height

 

 

 

height 옵션에 정수를 입력해서 그래프의 크기를 조정할 수도 있다.

 

 

 

 

 

 

 

대각선을 기준으로 한쪽만 남기기

corner=True

 

 

어찌 됐든 대각선 기준 위, 아래는 결과는 같으니 한쪽만 보려면

 

corner 옵션에 True를 넣으면 된다.

 

 

 

 

 

 

투명도 설정하기

plot_kws={'alpha': 0.2}

 

 

plot_kws 인자는 각각의 그래프에 전달할 개별 설정값을 지정한다.

 

위 예시에서는 alpha(투명도)를 0.2로 설정해줬다.

 

 

 

 

 

 

 

 

 

대각선을 기준으로 원하는 그래프 그리기

 

 

map_upper는 대각선 기준으로 위쪽에 그릴 그래프를 지정

map_lower는 대각선 기준으로 아래쪽에 그릴 그래프를 지정

map_diag는 대각선을 중심으로 그래프를 그림

 

위 예시는 위쪽엔 산점도를, 아래쪽엔 이차원 밀집도를 그렸으며

 

히스토그램은 대각선을 중심으로 그려졌다.

 

 

 

 

 

 

 

반응형