본문 바로가기
통계/데이터 분석 기초

Python Pandas 실무 데이터 분석 : 시각화 (그래프 저장 / 한글 폰트 / seaborn / matplotlib / 단일 변수 시각화)

by 만슨 2024. 3. 17.

 

오늘은 Matplot, Seaborn 라이브러리를 이용하여 데이터를 시각화 하는 방법에 대해서 알아보겠습니다. 

 

Matplot - 시각화에 있어 여러가지 옵션들을 다양하게 사용해서 시각화 할 수 있는 라이브러리 

Seaborn - Matplot 라이브러리를 기반으로 한 통계 전공 시각화 라이브러리 

 

데이터 시각화란?

 

데이터 시각화는 정보를 한 눈에 보기 쉽게 시각적으로 표현하여 인사이트를 도출하고 이해하기 쉽게 만드는 과정이다.

 

시각화 또한 데이터 타입에 따른 시각화 유형이 달라지게 된다

 

단일 변수

데이터 타입 유형
연속형 확률분포 or 히스토그램
범주형 빈도 수 그래프 (Bar / Pie Chart)

 

다변수

데이터 타입 유형
Y : 연속 / X : 연속 산점도 / 회귀 그래프 / 히트맵
Y : 연속 / X : 범주 막대 그래프 / 상자그림
Y : 연속 / X : 시간(순서) 선 그래프 / 포인트 그래프

 

 

 

 

위와같은 데이터를 시각화 해보겠습니다

 

 

 1. 단일변수 시각화 하기 

 

1.1 범주형 데이터 시각화

 

pandas에서 데이터수를 확인 할 때 value_counts() 를 사용하여 확인 하였었다.

 

 

이를 간단하게 시각화해서 알아보고 싶으면 seaborn 라이브러리를 사용하면 된다

 

Seaborn

seaborn 라이브러리를 불러오고 그 뒤에 그래프의 유형을 함수로 써준 다음 그 안에 알맞은 형태를 넣어주면 된다

ex) sns.countplot(data = df1, x='type_of_contract')

 

 

한국어 폰트를 설정해주지 않았기 때문에 위같이 한글이 나오지 않는다.

위 같은 경우 한국어 폰트를 Matplot에서 옵션을 설정해주면 된다.

 

 

2가지의 단일변수 데이터를 한 그래프로 보고싶으면 'hue' 를 설정해주면 된다.

 

 

 

이제 matplot 라이브러리를 사용하여 여러가지 옵션들을 설정해주자 

 

Matplot

 

Matplot 라이브러리는 2가지의 사용 툴이 있다.

 

1. matplotlib 안에 있는 pyplot모듈 안에 함수를 사용하는경우

 - 그래프 출력과 직접적으로 연관된 디테일한 옵션들을 사용할 경우 ex) 그래프 제목 , 사이즈, 위치 등..

 

2. matplotlib 라이브러리를 사용하는 경우 

- 외적인 디자인 부분을 사용할 경우 ex) 폰트 등..

 

 

 

Matplot 라이브러리의 rc 함수를 사용하여 폰트를 맑은고딕으로 설정 해주니 한국어가 잘 나왔다.

 

그래프의 제목을 설정해주자 

 

matplotlib 안에 있는 pyplot모듈 안에 title을 사용하여 제목을 설정해주었다.

 

기본적인 함수

 

  1. plt.figure(figsize = [0:0]) - 그래프의 x,y축 사이즈
  2. plt.legend(loc = 'right') - 범례 위치 지정

 

1.2 빈도수가 높은 순서대로 시각화 하기

 

방법 1

 

value_counts를 이용하여 높은 순서를 확인 한 다음 

 

 

하나하나 기입하는 방법이 있다. 하지만 이렇게 하기엔 너무 번거롭다고 느껴진다. 

 

다른 방법을 알아보자

 

 

방법 2.

 

value_counts로 나타낸 데이터의 index를  list형태로 불러온다.

그다음 그래프를 만들 때 order에 list형태로 저장해둔 데이터를 불러와 리스트 범위를 지정해주면 된다

 

 


1.3 연형 변수 시각화 하기 

 

연속형 변수를 시각화 할 때는 보통 히스토그램을 많이 사용한다

Seaborn 에 있는 histplot 함수 사용

 

ex) sns.histplot(data = df1, x = 'age')

 

kde 를 추가하여 확률분포선 또한 볼 수 있다. 

 


 

그래프 저장 

 

pyplot모듈 안에 savefig 함수를 사용하여 준다 

 

경로를 지정해주지 않으면 본인 스크립트가 있는 폴더에 저장되게 된다.

 

 

 

잘 저장된 것을 볼 수 있다!

 

 

참고 :  [매일10분 데이터 분석] 데이터 시각화를 쉽게 해보자 ! (Python / 그래프 / Seaborn / Matplot) (youtube.com)

           [매일10분 데이터 분석] 여러 가지 시각화 옵션 (그래프 저장 / 한글 폰트 / seaborn / matplotlib / 단일 변수 시각화) (youtube.com)