cs [matlab] 매트랩 그래프 그리는 법, 함수 그리는 법 기초 :: 맥스웰과 데자와

매트랩으로 그래프 그리는 법을 알면 여러모로 편리합니다.

문제를 풀다가 함수가 어떻게 생겼는지 감이 안 올 때 매트랩으로 그려낼 수 있기 때문입니다.

그럼 매트랩으로 함수 그리는 법을 알아보겠습니다.

 

우선 우리가 함수를 그릴 때 필요한 건 x 값, y 값이죠.

매트랩도 마찬가지입니다.

x 값, y 값을 지정해 주어야 합니다.

 

 

 

1. x 값 지정하기 (linspace)

 

linspace 는 선형 간격의 벡터를 생성하는 내장함수입니다.

x = linspace(x1,x2) 은 x1과 x2 사이에서 균일한 간격의 점 100개(기본값)로 구성된 행 벡터를 반환합니다.

x = linspace(x1,x2,n) 은 x1과 x2 사이에서 균일한 간격의 점 n 개로 구성된 행 벡터를 반환합니다.

예를 들어 x = linspace(-1,1,3) 은 -1에서 1까지 균일한 간격의 점 3개로 구성된 행 벡터를 반환하므로 쉽게 말해 점(-1, y), 점(0, y), 점(1, y)을 지정한다고 할 수 있습니다. 

 

 

 

2. y 값 지정하기 (함수)

 

y 값은 함수에 x 값을 대입함으로써 얻을 수 있죠.

즉 y 값을 지정하기 위해선 y=함수 를 입력해

그럼 우리가 linspace를 통해 지정했던 x 값에 대응하는 y 값을 얻을 수 있습니다.

예를 들어 내가 그려야 할 그래프가 y = x^2이라고 해봅시다.

명령 창에 x = linspace(-1,1,3), y = x^2를 입력하면, 매트랩은 (-1,1) , (0,0), (1,1)의 점을 지정할 것입니다.

 

 

 

3. 그래프 그리기

 

위 1, 2번 과정을 통해 우리가 지정한 점( x, y )을 하나하나씩 찍으면 그 함수의 그래프를 알 수 있습니다.

지정한 값이 많으면 많을수록 더욱 정확해지죠. (linspace에서 n의 값이 클수록 정확할 것입니다!)

우리가 무수히 많은 점들을 일일이 찍을 필요는 없습니다.

plot함수 하나면 매트랩이 우리가 linspace로 지정한 개수의 점들을 찍어서 그래프의 모양을 보여줄 겁니다.

 

 

 

4. 예시

 

저는 보다 정확한 그래프를 원하므로 점 1000개를 만들어

\(y = \sqrt{-1-x}\)

의 그래프를 그려보겠습니다. (linspace에 n의 값을 1000으로 지정할 것입니다.)

 

 

사진 속% 설명 참고해주세요.

 

다음 예시는

\(y=1/1+25x^{2}\)

함수입니다.

 

 

단 세 줄 만으로 각각의 그래프들이 그려졌습니다!!

두 번째 예시에서, 우리가 반환하는 x, y 값은 행 벡터이므로 / , ^2 앞에 점(. )을 붙여 ./.^2로 사용해야 한다는 점에 유의하셔야 합니다. (행 벡터는 사칙연산 앞에 .을 붙여야 계산이 가능합니다!)

 

 

 

+ Recent posts