반응형

안녕하세요, 왕초보 코린이를 위한 코딩유치원에 오신 것을 환영합니다.

코딩유치원에서는 파이썬 기초부터 사무자동화, 웹크롤링, 데이터 분석 등의 다양한 패키지까지 초보자도 알기 쉽도록 내용을 정리해 놓았습니다.

업무는 물론 투자에도 도움이 될만한 전자공시시스템(DART) 텔레그램(Telegram) 관련 패키지도 배울 수 있으니 많은 관심 부탁드립니다.

 

 

<seaborn 관련 글>

 

2021.08.08 - [파이썬 패키지/데이터시각화] - [Python/Seaborn] 데이터 시각화 라이브러리_1편. Seaborn 소개

2021.08.18 - [파이썬 패키지/데이터시각화] - [Python/Seaborn] 데이터 시각화 라이브러리_2편. Seaborn 학습을 위한 데이터 셋 3종 소개 (ft. 붓꽃, 타이타닉, 팁 데이터 셋)

2021.08.19 - [파이썬 패키지/데이터시각화] - [Python/Seaborn] 데이터 시각화 라이브러리_3편. Seaborn 그래프 종류 총 정리(ft. Relational plots)

2021.08.22 - [파이썬 패키지/데이터시각화] - [Python/Seaborn] 데이터 시각화 라이브러리_4편. Seaborn 그래프 종류 총 정리(ft. Distribution plots)

2021.08.23 - [파이썬 패키지/데이터시각화] - [Python/Seaborn] 데이터 시각화 라이브러리_5편. Seaborn 그래프 종류 총 정리(ft. Categorical plots(상))

 


 

오늘은 지난 시간에 이어서, 나머지 Categorical plots에 대해서 공부해보겠습니다.

 

Categorical plots

1) barplot

2) countplot

3) boxplot

4) violineplot

5) stripplot

6) swarmplot

7) boxenplot

8) pointplot

9) catplot

 

 

1. stripplot

  • 연속형 변수와 범주형 변수의 관계를 나타내는 scatterplot
  • scatterplot은 연속형과 연속형 사이의 관계를 나타냄
  • 어느 축에 연속형 변수를 넣느냐에 따라 그래프의 방향이 바뀜

 

지난시간의 violineplot에서 입력했던 변수를 그래프 이름만 바꾸어서 그려보겠습니다.

 

#지난 시간의 violinplot
#ax = sns.violinplot(x="day", y="total_bill", data=tips)

#stripplot
ax = sns.stripplot(x="day", y="total_bill", data=tips)

 

 

2. swarmplot

  • 위에서 배운 stripplot과 매우 흡사
  • 단순히 데이터 포인트를 표시하는 것이 아닌 분포 정도를 함께 표현
  • violinplot과 함께 쓰이기도 함

 

swarmplot과 방금 전 그려본 stripplot의 차이를 파악하셨다면 그걸로 충분합니다.

ax = sns.swarmplot(x="day", y="total_bill", data=tips)

 

swarmplot은 세부적인 데이터 분포는 보여주지 못하는 violinplot을 보완하기 위해서 아래와 같이 사용되기도 합니다.

 

sns.violinplot(x="day", y="total_bill", data=tips)
sns.swarmplot(x="day", y="total_bill", data=tips, color="white")

 

 

3. boxenplot

  • boxplot과 거의 같음
  • boxplot에 데이터의 분포에 따른 박스의 크기를 반영한 버전
  • boxplot과 violinplot의 애매한 경계선에 있는 듯한 그래프 (잘 안쓰일 것 같음)

 

ax = sns.boxenplot(x="day", y="total_bill", data=tips)

 

지난 시간 배운 boxplot과 차이를 비교해보세요.

 

4. pointplot

  • 연속형 변수와 범주형 변수의 관계를 error bar와 함께 그려주는 그래프
  • 언제 필요한지 잘 모르겠음

 

해당 그래프는 쓸모를 잘 모르겠어서 이런 것이 있다는 정도만 알려드리고 넘어가겠습니다.

ax = sns.pointplot(y="tip", x="day", hue="sex", data=tips)

 

 

5. catplot

  • 지금까지 배운 Categorical plots를 모두 그릴 수 있음
  • kind 파라미터로 설정 가능 --> strip(기본값), swarm, box, violin, boxen, point, bar, count
  • relplot, displot과 마찬가지로 서브 플롯을 그릴 수 있음 (row, col 파라미터로 설정)

 

ax= sns.catplot(x="day", y="tip", col="sex", data=tips, kind="bar")

 

 

다른 그래프들도 마찬가지였지만  catplot에는 수 많은 파라미터를 설정 가능하므로, 그래프의 색상이나 높이, 폭비율, 범례 등의 설정이 궁금하신 분들은 아래의 seaborn 공식 문서를 참고해주세요.

 

https://seaborn.pydata.org/generated/seaborn.catplot.html#seaborn.catplot

 

seaborn.catplot — seaborn 0.11.2 documentation

The kind of plot to draw, corresponds to the name of a categorical axes-level plotting function. Options are: “strip”, “swarm”, “box”, “violin”, “boxen”, “point”, “bar”, or “count”.

seaborn.pydata.org

 

 

다음 시간에는 Regression plots와 Matrix plots 대해 공부해보겠습니다.

 

오늘도 코딩유치원을 찾아주신 모든분들께 감사드립니다.

 


 

반응형

+ Recent posts