AIFFEL FD #07 데이터 시각화 Data Visualization

이재준·2021년 7월 11일
0

AIFFEL Fundamental

목록 보기
8/25

✅ 핵심 내용

  • 파이썬 라이브러리 Pandas, Matplotlib, Seaborn 등을 이용한 다양한 그래프
  • 데이터 시각화를 통한 탐색적 데이터 분석 (EDA)

📈 데이터 시각화

데이터 시각화는 데이터를 잘 분석하기 위한 필수이다. 각종 데이터를 그 데이터 특성과 용도에 맞는 다양한 그래프를 이용해 시각화 할 수 있다. 파이썬은 데이터 시각화를 위해 Pandas, Matplotlib, Seaborn 등의 다양한 라이브러리를 제공한다.

Matplotlib 는 선그래프, 바 차트, 파이차트, 히스토그램, 박스 플롯, scatter 플롯 등의 다양한 차트와 플롯 스타일을 지원한다.


출처 : towarddatascience -Python Data Visualization with Matplotlib

Matplotlib 를 사용하기 위해서는 matplotlib.pyplot 를 import 하여 사용한다.
간단한 예로 A,B 두 사람이 일주일 간 쓴 돈을 선 그래프로 나타내었다.

xlabel , ylabel 과 같이 여러 메소드를 통해 그래프에 추가적인 설정이 가능하다.

  • xlabel(), ylabel() : x라벨 추가, y라벨 추가
  • title() : 그래프 제목 추가
  • xlim(), ylim() : x 좌표 범위 설정, y 좌표 범위 설정
  • annotate() : 주석 추가
  • grid() : 그리드(격자눈금) 추가

또한 plt.plot() 의 인자로 x 데이터, y 데이터, 마커옵션, 색상 등의 다양한 인자들을 설정 할 수 있다.

pandas.plot 메서드 인자기능
label그래프 라벨 이름 설정
ax그래프를 그릴 matplotlib의 서브플롯 객체
style각종 스타일 설정
alpha투명도 설정
kind그래프의 종류
logyY축에 대한 로그스케일
xticks,yticksx축, y축으로 사용할 값
xlim, ylimx축, y축 한계
grid축의 그리드 표시 여부

seaborn 을 이용하면 인자들을 더 쉽게 나타낼 수 있다.

다음은 seaborn 의 예제 데이터들을 matplotlib 와 seaborn 을 이용해 시각화한 예시이다.

불러온 데이터는 결측치가 없으며 2개의 수치형 데이터(total_bill,tip) 와 5개의 범주형 데이터(sex,smoker,day,time,size) 로 이루어져있음을 알 수 있다.

범주형 데이터 분석

범주형 데이터는 주로 막대 그래프를 사용하여 수치를 시각화한다. 가로, 세로, 누적, 그룹화된 막대그래프 등 다양한 막대 그래프를 사용하여 시각화 할 수 있다.

5개의 범주형 데이터 중에서 식사 시간대(time)에 대한 tip 의 평균 값에 대한 막대 그래프를 그려보자.

수치형 데이터 분석

수치형 데이터는 주로 산점도(scatter plot) 이나 선 그래프를 이용하여 시각화한다. 또한 도수분포표를 그래프로 나타낸 히스토그램도 자주 사용된다.

또한 색상으로 표현할 수 있는 다양한 정보를 열분포 형태의 그래픽으로 나타내는 heatmap 형식으로도 시각화가 가능하다. hearmap 를 표현하기 위해서는 pivot 해야 하는 경우가 있다.

또한 데이터간의 상관관계를 파악할때 heatmap을 유용하게 사용할 수 있다.

위에 소개한 그래프를 포함하여 수많은 형태의 그래프들이 존재한다. 따라서 사용할 데이터의 구조 및 특성을 잘 보고 적절한 형태의 그래프로 시각화하는 것이 중요하다.

profile
🏫 𝑲𝒚𝒖𝒏𝒈 𝑯𝒆𝒆 𝑼𝒏𝒊𝒗. / 👨‍🎓 𝑪𝒐𝒍𝒍𝒆𝒈𝒆 𝒐𝒇 𝑬𝒏𝒈𝒊𝒏𝒆𝒆𝒓𝒊𝒏𝒈

0개의 댓글