파이썬으로 1차함수 그래프 그리기
2021. 4. 25. 07:31ㆍ캐리의 데이터 세상/파이썬
반응형
수학 기초에 대한 결핍을 조금이나마 해소하고자 얼마 전 구매한 <기초수학 with 파이썬> 책을 새벽에 조금씩 보기 시작했는데요, 가물가물했던 함수 개념부터 소개하면서 이를 파이썬 코드로 구현하는 책이라 몇 달 동안 어려운 책들 보다가 첫 장에 덮어버렸던 것과는 다르게 꾸준히 1 회독을 목표로 합니다:) 해당 코드는 저자 GitHub에서도 확인할 수 있습니다.
1. 일차 함수 그래프 그리기(파이썬)
arrowed_spines() 함수는 미리 만들어 놓은 함수를 호출했습니다. (GitHub 참고)
주피터 노트북으로 연습하면서 fig를 img 폴더에다 저장했는데요, 저장이 불필요하면 file_print == False 로 변경해주세요. Colab 환경을 위한 별도 환경설정 또한 깃헙에 나와 있습니다.
- numpy.linspace(start, stop, num) 함수는 start에서 시작하여 stop 으로 끝나는 구간에서 num개 숫자를 등간격으로 생성하여 돌려줌. np.linspace(0,3,4)라고 하면 [0,1,2,3]이 반환됨 | numpy reference
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
mpl.style.use('bmh') #그래프에서 사용할 테마 설정은 plt.style.available에서 확인
mpl.style.use('seaborn-whitegrid')
fig=plt.figure(figsize=(10,7)) #크기 (10,7)인 그림 생성
ax = fig.add_subplot(1,1,1) # 그림에 좌표축 생성
ax.xaxis.set_tick_params(labelsize=18) #좌표축에 표시되는 좌표값 숫자 크기 지정
ax.yaxis.set_tick_params(labelsize=18)
plt.xlabel('$x$', fontsize=25) # 축 이름, font 사이즈
plt.ylabel('$y$', fontsize=25)
x=np.linspace(-3, 2, 10) # 그릴 정의역 np.linspace(start, stop, num)함수로 생성, 정의역에 대한 함숫값 계산
y = 2*x+4 #2,3차 함수 그리고 싶으면 교체
ax.plot(x,y,'k') #평면에 연속 점 찍어 그래프 그리기. k 대신 '.'으로 바꿔 그리면 선 대신 점 열개만 찍힘
arrowed_spines(fig, ax) #미리 만들어 놓은 arrowed_spines() 함수 호출 (깃헙 참고)
if file_print == True :
fig.savefig("img/fig2-10.png", dpi=100, bbox_inches='tight')
plt.show()
2. 1차함수 그래프
-
첫 번째 그래프는 np.linspace(-3,2,10) 함수로 10개의 값만 계산했지만 ax.plot(x, y, 'k') k 옵션으로 계산한 값 사이를 채워줌.
-
두 번째 그래프는 ax.plot(x, y, '.')으로 바꿔 점 열 개만 찍힘.
출처 :머신 러닝, 딥 러닝에 필요한 <기초 수학 with 파이썬> , 조준우 지음
반응형
'캐리의 데이터 세상 > 파이썬' 카테고리의 다른 글
파이썬 datetime 모듈 - 날짜, 시간, 타임존 출력하기 (0) | 2021.08.11 |
---|---|
파이썬 0~1 스케일링 최소 최대 MinMaxScaler (0) | 2021.06.15 |
파이썬으로 지수함수 그래프 그리기 (0) | 2021.04.27 |
파이썬 리스트 명령어 (0) | 2021.04.23 |
파이썬 크롤링 연습(3) 랭킹 기사로 워드클라우드 만들기 (0) | 2020.07.22 |
파이썬 크롤링 연습(2) - 랭킹 뉴스 끌어오기 (0) | 2020.07.21 |
파이썬 - 주피터 노트북(Jupyter Notebook) 단축키 모음 (0) | 2020.07.20 |