프로그래밍/파이썬

[Python] Matplotlib - 데이터 시각화 활용예제(Feat. 산점도, 히스토그램, 그래프, 차트)

매 석 2022. 10. 10. 17:19
반응형

1. Matplotlib이란 ?

 - Python 프로그래밍 언어 및 수학적 확장 NumPy 라이브러리를 활용한 플로팅 라이브러리입니다.

Tkinter , wxPython , Qt 또는 GTK 와 같은 범용 GUI 툴킷을 사용하여 애플리케이션에 플롯을 포함 하기 위한 객체 지향 API를 제공한다. Matplotlib은 매트랩과 유사하게 설계된 상태기계(예: OpenGL )을 기반으로 하는 절차적 "pylab" 인터페이스도 있지만 사용은 권장되지 않습니다.   SciPy는 Matplotlib을 활용합니다.

출처 : Matplotlib - 위키백과, 우리 모두의 백과사전 (wikipedia.org)

- 간단히 말하면 데이터 시각화를 도와주는 라이브러리입니다.

 

2. 설치

pip install matplotlib

import matplotlib.pyplot as plt

- matplotlib에서 가장 많이 쓰이는 메소드는 pyplot입니다. 줄여서 plt로 많이 사용합니다.

 

3. 간단한 명령어 정리

1 .plot() - 차트를 그림
EX) plt.plot(df.index, df['close'], 'b', label='Close')

2 .title() - 타이틀명 표시
EX) plt.title('KAKAO(20 day, 2 std) - Reversals')

3 .xlabel() - x축 이름 설정
EX)plt.xlabel('Risk') 

4 .ylabel() - y축 이름 설정
EX)plt.ylabel('Expected Returns') 

5 .show() - 만든 내용 출력
EX)plt.show()

6 .plot.scatter(x,y,c,cmap,edgecolors,figsize,grid) - 산점도 출력
EX)plt.scatter(x=max_sharpe['Risk'], y=max_sharpe['Returns'], c='r', 
    marker='*', s=300) 

7 .figure() - 전체적인 그림 사이즈 설정
EX)plt.figure(figsize=(9, 9))

8 .subplot() - 2행 1열 ,2행 2열과 같이 전체그림을 n등분 할 수 있음
EX)plt.subplot(3, 1, 1)

9 .fill_between() - 두 수평 방향의 곡선 사이를 채움]
EX)plt.fill_between(df.index, df['upper'], df['lower'], color='0.9')

10 .fill_betweenx() - 두 수직 방향의 곡선 사이를 채움
EX)plt.fill_betweenx(df.index, df['upper'], df['lower'], color='0.9')

11 .legend() - 범례 표시, 위치 변경 등등
EX)plt.legend(loc='best')

12 .grid() - 격자 표시 (눈금)
EX)plt.grid(True)

13 .yticks() - y축 눈금값 변경
EX)plt.yticks([-20, 0, 20, 40, 60, 80, 100, 120])   

14 .bar() -수직 막대 그래프 그리기
EX)plt.bar(df.index, df['IIP21'], color='g', label='II% 21day')

15 .barh() - 수평 막대 그래프 그리기
EX)plt.barh(df.index, df['IIP21'], color='g', label='II% 21day')

 

4. 활용 예시

- 산점도, 히스토그램, 차트, 그래프 등 다양한 형태로 시각화할 수 있고,

  이를 통해 주식 외에도 다양한 분야의 데이터 분석을 할 수 있다.