Data Visualizaion

Jeff·2020년 9월 7일
0

데이터 분석

목록 보기
1/2

Matplotlib

Matplotlib는 파이썬에서 데이터를 차트나 플롯(Plot)으로 그려주는 라이브러리 패키지로서 가장 많이 사용되는 시각화(Data Visualizaion) 패키지

Matplotlib는 라인 플롯, 바 차트, 파이차트, 히스토그램, Box plot, Scatter Plot 등을 비롯하여 다양한 차트와 플롯 스타일을 지원

import matplotlib.pyplot as plt

Basic Attributes

alpha : 투명도
kind : 그래프 종류 'line', 'bar', 'barh', 'kde'
logy : Y축에 대해 Log scaling
use_index : 객체의 색인을 눈금 이름으로 사용할지 여부
rot : 눈금 이름 돌리기 (rotating) 0 ~ 360
xticks, yticks : x, y축으로 사용할 값
xlim, ylim : X, Y축의 한계
grid : 축의 그리드를 표현할지 여부
subplots : 각 column에 독립된 subplot 그리기
sharex, sharey : subplots=True 이면 같은 X,Y축을 공유하고 눈금과 한계를 연결
figsize : 생성될 그래프의 크기를 tuple로 지정
title : 그래프의 제목 지정
legend : subplot의 범례 지정
sort_columns : column을 알파벳 순서로 그린다.

Multi Graph

subplot을 이용해 여러개의 그래프를 한번에 그릴 수 있음

# 데이터 준비
hist_data = np.random.randn(100)
scat_data = np.arange(30)
plt.subplot(2, 2, 1)
plt.plot(data)

plt.subplot(2, 2, 2)
plt.hist(hist_data, bins = 20)

plt.subplot(2, 2, 3)
plt.scatter(scat_data, np.arange(30) + 3)

plt.show()

Graph Line Option

그래프를 그릴 때 표시되는 색이나 마커 패턴을 바꾸는 것

  • 색상: b(파란색), g(초록색), r(빨간색), c(청록색), y(노란색), k(검은색), w(흰색)
    - 검은색만 'k' 니까 주의
  • 마커: o(원), v(역삼각형), ^(삼각형), s(네모), +(플러스), .(점)
plt.plot(data, 'g--')
plt.show()

Graph Size

figsize를 이용하여 가로, 세로 길이 조절 가능 (단위는 inch)
주의 ) figsize는 항상 맨 위에 올라 와야 함

plt.figure(figsize= (10, 5))
plt.plot(data, 'k+')
plt.show()

여러 그래프에 대한 크기 조절
(그냥 plt.figure만 해주면 된다. 똑같다)

plt.figure(figsize= (10, 10))

plt.subplot(2, 2, 1)
plt.plot(data)

plt.subplot(2, 2, 2)
plt.hist(hist_data, bins = 20)

plt.subplot(2, 2, 3)
plt.scatter(scat_data, np.arange(30) + 3)

plt.show()

Graph Legend

그래프 범례추가

  1. 머신러닝, 딥러닝에서 val셋 비교에 자주 사용
#데이터 준비
data = np.random.randn(30).cumsum()

# 데이터 시각화
plt.plot(data, 'k--', label = 'Default')
plt.plot(data, 'b--', drawstyle = 'steps-post', label = 'steps-post')
plt.legend()
plt.show()

위 코드와 다른 방법으로

plt.legend(['XXX', 'YYY'])

도 있다.

Graph Name

그래프 이름 달기

  1. 한눈에 보기 쉽게 만들기 위해 사용
  2. 문서에 서식에 맞춰 타이핑 하기 싫을 때도 사용
# 데이터 준비
plt.plot(np.random.randn(1000).cumsum())
# 데이터 시각화
plt.title('Random Graph')
plt.xlabel('Stages')
plt.ylabel('Values')
plt.show()

한글 폰트 코드

다양한 한글 폰트 사용 코드들이 있지만 안되는 경우가 종종 있었지만 이 코드는 계속 사용 중
그래프 사이즈까지 같이 묶어서 주로 사용

# 한글 폰트 적용
from matplotlib import font_manager, rc
font_name = font_manager.FontProperties(fname="c:/Windows/Fonts/malgun.ttf").get_name()
rc('font', family=font_name)
# 그래프 사이즈
plt.rcParams["figure.figsize"] = (16,6)

++ 자주 쓰는 내용으로 계속 업그레이드 할 거임

profile
살어리 살어리랏다 청산에 살어리랏다.

0개의 댓글