티스토리 뷰

728x90
반응형

임의의 그래프 그리기

import numpy as np

def val_show(v, name):
    print(name, ' = ', v, type(v), v.shape)

np.random.seed(1)
x = np.arange(10) #1, 2, 3, 4, .... 10
y = np.random.rand(10) #random

val_show(x, 'x')
val_show(y, 'y')
    '''
    x  =  [0 1 2 3 4 5 6 7 8 9] <class 'numpy.ndarray'> (10,)
    y  =  [4.17022005e-01 7.20324493e-01 1.14374817e-04 3.02332573e-01
     1.46755891e-01 9.23385948e-02 1.86260211e-01 3.45560727e-01
     3.96767474e-01 5.38816734e-01] <class 'numpy.ndarray'> (10,)
    '''

plt.plot(x,y)
plt.show()

 

그래프를 그리기 위해 matplotlibpyplot 라이브러리를 import 하고  plt이라는 별칭을 사용하자.

여기서 random.seed(1)은 고정값이기 때문에 랜던 값이 일정하게 나와 프로그램을 실행할 때 마다 그래프도 일정하게 나온다.

 

x는 1~10 값을 y는 10개의 고정된 랜덤 값이 들어간다.

 

plt.plot(x, y)로 그래프가 등록되어 plt.show()를 통해 그려진다.

 

 

 

3차 함수 그래프 그리기

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-3,3,50)
y1 = f(x, 2)
y2 = f(x, 1)

plt.plot(x,y1, color='blue', label = '$w=2$')
plt.plot(x,y2, color='orange', label = '$w=1$')
plt.plot(x,f(x, 0), color='red', label = '$w=0$')
plt.legend(loc='upper left')
plt.title('$f(x,w)$')
plt.ylim(-15, 15)
plt.xlim(-3, 3)
plt.xlabel('$x$')
plt.ylabel('$y$')
plt.show()

 

 

그래프 그리는 범위를 결정하기

  •  np.linspace(-3, 3, 50) 은 -3부터 3 사이에 50개의 값을 균등하게 가져온다.
  • np.arange(-3, 3.5, 0.5) 는 -3~3까지의 값을 0.5 단위로 가져온다. 3까지 가져오려면 2번째 인자에 3.0+0.5= 3.5 값을 넣어준다.
  • plt.plot()은 차트를 정하고 인자로 차트의 옵션을 정한다.
  • plt.plot(x,y1, color='blue', label = '$w=2$') 는 ,첫 번째 인자는 x 값, 두 번째 인자는 y 값,  선 색깔은 파란색, 라벨명은 w=2로 정한다.
  • plt.xlim은 x축의 범위를 plt.ylim은 y축의 범위를 나타낸다.
  • plt.xlabel, plt.ylabel은 x축, y축 라벨이며. plt.legend()는 범례를 표시한다.
  • plt.title은 차트 제목이며
  • plt.grid(True)는 차트 안에 그리드를 그려준다.
  • plt.show()를 통해 그래프를 그려준다.

 

출처

- (책) 파이썬으로 배우는 머신러닝의 교과서

728x90
반응형
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함