728x90
반응형
SMALL
matplotlib 개념
데이터 시각화를 위한 파이썬 라이브러리
pyplot를 통하여 기능 사용
.plot() 메서드를 통해 데이터를 시각화함
.show() 메서드를 통해 화면에 출력함
설치 및 사용 방법
1) pip install matplotlib
2) 사용 : import matplotlib.pyplot as plt
종류
라인플롯 | pyplot.plot(y) |
막대 플롯 | pyplot.bar(x,y), pyplot.barh(x,y) xticks, yticks를 통하여 해당 축의 값들 나열 가능 |
파이 플롯 | pyplot.pie(데이터 , labels= , colors=, autopact= , shadow=True/False) |
히스토그램 | pyplot.hist(data ,bins) |
박스 플롯 | pyplot.boxlot(data) |
산점도 플롯 | pyplot.scatter(x , y, s = ‘마커사이트’, c=‘마커색상’) |
공통 메소드
▶. title(‘타이틀’)
▶. xlabel(‘x축 label’)
▶. ylabel(‘y축 label’)
▶. legend([‘범례 1’,’ 범례 2’...]) # 하나의 그래프에 여러 개의 plot이 있을 때 설정
▶. axis([xmin, xmax, ymin, ymax])
▶. xlim(min, max)
▶. ylim(min, max)
▶. grid(True, axis='y') #x도 가능
실사용예
단순 배열데이터
import matplotlib.pyplot as plt
plt.plot([1, 3, 2])
plt.show()
데이터가 두 그룹일 경우
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4],[4,3,2,1])
plt.show()
딕셔너리를 이용한 x, y값 작성
import matplotlib.pyplot as plt
tmp = {'data_x': [1, 2, 3, 4, 5], 'data_y': [1,4,9,16,25]}
plt.plot('data_x', 'data_y', data=tmp)
plt.show()
x축 라벨, y축 라벨 설정, 표 이름 설정, 그리드와 범례 설정
import matplotlib.pyplot as plt
plt.title('Input Graph Title Here.')
plt.plot([1,2,3,4],[1,4,9,16], label='power')
plt.xlabel('X-Axis')
plt.ylabel('Y-Axis')
plt.grid(True, axis='y')
plt.legend()
plt.show()
바(Bar) 타입 그래프
import matplotlib.pyplot as plt
import numpy as np
y=np.arange(3)
y_val=[100,200,300]
plt.barh(y,y_val, color='r')
plt.show()#이건 가로 바
plt2.bar(y,y_val, color='r')
plt2.show()#이건 세로 바
각 데이터별 x축 라벨링
import matplotlib.pyplot as plt
import numpy as np
y=np.arange(3)
y_val=[100,200,300]
plt.bar(y,y_val, color='r')
tmp_val=['A store', 'B store', 'C store']
plt.xticks(y,tmp_val)
plt.show()
여러 개의 x, y가 있는 경우 다중 그래프
import matplotlib.pyplot as plt
import numpy as np
tmp = np.arange(0.,10.,0.1)
plt.plot(tmp, tmp, 'r--'
, tmp+1, tmp**2, 'g+', tmp+2, tmp**3, 'bs')
plt.show()
산점도 그래프를 그리기
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0)
n= 30
x= np.random.rand(n)
y= np.random.rand(n)
s_marker=(20 * np.random.rand(n))**2
col= np.random.rand(n)
plt.scatter(x, y, s=s_marker, c=col)
plt.show()
728x90
반응형
LIST
'인공지능 > 머신러닝' 카테고리의 다른 글
8. 데이터 결측치 시각화 - 데이터 결측치 시각화 (0) | 2023.09.25 |
---|---|
6. 딥러닝을 위한 프레임 워크 - 파이토치(PyTorch) (0) | 2023.09.19 |
3. 머신러닝을 위한 판다스(Pandas) (0) | 2023.09.05 |
2. 머신러닝을 위한 넘파이(NumPy) (0) | 2023.09.05 |
1. 인공지능과 머신러닝 개념 (0) | 2023.08.29 |
댓글