데이터 시각화! Visualization 하기_3 plot 사용법

차보경·2022년 5월 6일
0

앞서 figure() 객체 생성, add_subplot()으로 서브플롯을 생성하여 plot을 그렸습니다.

하지만 plt.plot() 명령어를 통해 그래프를 그리면 matplotlib는 가장 최근의 figure객체와 서브플롯을 그리게 됩니다.

import numpy as np
x = np.linspace(0, 10, 100) 
plt.plot(x, np.sin(x),'o')
plt.plot(x, np.cos(x),'--', color='black') 
plt.show()

np.linspace(0, 10, 100)은 무슨 의미일까요?
말그대로 space! 0에서 10까지 균등한 간격으로 100개의 숫자를 만들라는 뜻입니다.

plot의 내용은 순서대로 x, y를 넣어주고, 이후 선스타일, 색상등을 설정할 수 있습니다:)

plt.subplot(2,1,1)
plt.plot(x, np.sin(x),'orange','o')

plt.subplot(2,1,2)
plt.plot(x, np.cos(x), 'orange') 
plt.show()

이렇게 plt.subplot()을 이용해서 추가할 수 있습니다.

Pandas로 그래프 그리기

NumPy, matplotlib 뿐만아니라 Pandas로도 plot()을 통해 그래프를 그릴 수 있는데, matplotlib와 연계해서 사용하면 좋습니다:)!

pandas.plot 메서드 인자

  • label: 그래프의 범례 이름.
  • ax: 그래프를 그릴 matplotlib의 서브플롯 객체.
  • style: matplotlib에 전달할 'ko--'같은 스타일의 문자열
  • alpha: 투명도 (0 ~1)
  • kind: 그래프의 종류: line, bar, barh, kde
  • logy: Y축에 대한 로그 스케일
  • use_index: 객체의 색인을 눈금 이름으로 사용할지의 여부
  • rot: 눈금 이름을 로테이션(0 ~ 360)
  • xticks, yticks: x축, y축으로 사용할 값
  • xlim, ylim: x축, y축 한계
  • grid: 축의 그리드 표시할지 여부

pandas의 data가 DataFrame 일 때 plot 메서드 인자

  • subplots: 각 DataFrame의 칼럼을 독립된 서브플롯에 그린다.
  • sharex: subplots=True 면 같은 X 축을 공유하고 눈금과 한계를 연결한다.
  • sharey: subplots=True 면 같은 Y 축을 공유한다.
  • figsize: 그래프의 크기, 튜플로 지정
  • title: 그래프의 제목을 문자열로 지정
  • sort_columns: 칼럼을 알파벳 순서로 그린다.

정리
1. fig = plt.figure(): figure 객체를 선언해 '도화지를 펼쳐' 줍니다.
2. ax1 = fig.add_subplot(1,1,1) : 축을 그립니다.
3. ax1.bar(x, y) 축안에 어떤 그래프를 그릴지 메서드를 선택한 다음, 인자로 데이터를 넣어줍니다.
4. 그래프 타이틀 축의 레이블 등을 plt의 여러 메서드 grid, xlabel, ylabel 을 이용해서 추가해 주고
5. plt.savefig 메서드를 이용해 저장해 줍니다.

파이썬 기반의 시각화 라이브러리인 Pandas, Matplotlib, Seaborn 모두 이런 식으로 그래프를 그리게 됩니다.

profile
차보의 Data Engineer 도전기♥ (근데 기록을 곁들인)

0개의 댓글