플롯 만들기
기호 플로팅 함수를 사용하여 플로팅하기
MATLAB®은 다양한 수치 데이터 플로팅 기법을 제공합니다. MATLAB의 그래픽 기능에는 플로팅 툴, 표준 플로팅 함수, 그래픽 조작 및 데이터 탐색 툴, 그리고 그래픽스를 표준 형식으로 출력하고 내보내는 툴이 있습니다. Symbolic Math Toolbox™에서는 이러한 그래픽 기능을 확장하여 다음을 사용하여 기호 함수를 플로팅할 수 있습니다.
fplot
을 사용하여 기호 표현식 를 플로팅합니다. 기본적으로 fplot
은 범위 를 사용합니다.
syms x
fplot(sin(6*x))
ezpolar
를 사용하여 기호 표현식 또는 기호 함수를 극좌표 (반지름) 및 (편각)에 플로팅합니다. 기본적으로 ezpolar
는 기호 표현식 또는 기호 함수를 구간에 대해 플로팅합니다.
기호 표현식 를 극좌표로 플로팅합니다.
syms t
ezpolar(sin(6*t))
함수를 수치적으로 플로팅하기
표현식을 기호적으로 플로팅하는 대신, subs
를 사용하면 기호 변수에 숫자형 값을 대입할 수 있습니다. 그런 다음 MATLAB™에서 플로팅 함수에 이들 숫자형 값을 사용할 수 있습니다.
다음 표현식 u
와 v
에서, 기호 변수 x
와 y
에 meshgrid
로 정의된 숫자형 값을 대입합니다.
syms x y u = sin(x^2 + y^2); v = cos(x*y); [X, Y] = meshgrid(-1:.1:1,-1:.1:1); U = subs(u, [x y], {X,Y}); V = subs(v, [x y], {X,Y});
이제 표준 MATLAB 플로팅 함수를 사용하여 U
와 V
를 플로팅할 수 있습니다.
MATLAB quiver
함수를 사용하여, 함수 U(X,Y)
와 V(X,Y)
로 정의된 벡터장의 플롯을 만듭니다.
quiver(X, Y, U, V)
하나의 그래프에 여러 개의 기호 함수 플로팅하기
함수를 순차적으로 추가하여 하나의 그래프에 여러 개의 함수를 플로팅할 수 있습니다. 첫 번째 함수를 플로팅한 후에 hold on
명령을 사용하여 나머지 함수를 이어서 추가하면 됩니다. hold on
명령은 기존 플롯을 유지합니다. hold on
명령을 사용하지 않으면 기존 플롯이 각각의 새 플롯으로 바뀝니다. hold on
명령을 실행한 후에는 새로 그려지는 플롯은 기존 플롯 위에 표시됩니다. 플롯을 교체하는 디폴트 동작으로 다시 돌아가려면 hold off
명령을 사용하십시오.
fplot
을 사용하여 를 플로팅합니다. 과 의 플롯을 빨간색 파선으로 겹쳐 놓음으로써 의 범위를 표시합니다. fplot
에서 반환된 객체의 DisplayName
속성을 사용하여 제목을 설정합니다.
syms x y f = exp(x)*sin(20*x)
f =
obj = fplot(f,[0 3]); hold on fplot(exp(x), [0 3], '--r') fplot(-exp(x), [0 3], '--r') title(obj.DisplayName) hold off
하나의 Figure에 여러 개의 기호 함수 플로팅하기
subplot
을 사용하면 Figure 창을 여러 개의 서브플롯으로 나누어서 하나의 Figure에 여러 개의 함수를 나란히 표시할 수 있습니다. 명령 subplot(m,n,p)
는 Figure를 m
xn
크기의 서브플롯으로 나누고 서브플롯 p
를 선택합니다. 서브플롯을 선택하고 플로팅 명령을 사용하여 여러 개의 플롯을 개별 서브플롯에 표시합니다. 여러 개의 서브플롯에 플로팅하면 플롯을 나란히 비교할 때 유용합니다.
subplot
을 사용하여 서브플롯을 나란히 만들어서 에 대해 의 플롯을 비교합니다.
syms x y a f = sin((x^2 + y^2)/a); subplot(2, 2, 1) fsurf(subs(f, a, 10)) title('a = 10') subplot(2, 2, 2) fsurf(subs(f, a, 20)) title('a = 20') subplot(2, 2, 3) fsurf(subs(f, a, 50)) title('a = 50') subplot(2, 2, 4) fsurf(subs(f, a, 100)) title('a = 100')
기호 함수 플롯과 숫자형 데이터 플롯 결합하기
MATLAB 함수와 Symbolic Math Toolbox 함수를 함께 사용하여 동일한 그래프에 숫자형 데이터와 기호 데이터를 플로팅합니다.
범위 내의 숫자형 값의 경우, 를 구하고 에 난수 값을 추가하여 잡음이 있는 사인 곡선을 반환합니다. scatter
를 사용하여 점 를 플로팅하여 잡음이 있는 사인 곡선을 표시합니다.
x = linspace(-5,5); y = sin(x) + (-1).^randi(10, 1, 100).*rand(1, 100)./2; scatter(x, y)
사인 함수의 플롯을 겹쳐 놓아서 점들의 기본 구조를 표시해 보겠습니다. 먼저 hold on
을 사용하여 산점도 플롯을 유지합니다. 그런 다음 fplot
을 사용하여 사인 함수를 플로팅합니다.
hold on syms t fplot(sin(t)) hold off
3차원에서 수치 플롯과 기호 플롯 결합하기
MATLAB 플로팅 함수와 Symbolic Math Toolbox 플로팅 함수를 함께 사용하여 3차원에서 기호 플롯과 수치 플롯을 결합할 수 있습니다. Symbolic Math Toolbox에는 다음과 같은 3차원 플로팅 함수가 있습니다.
fplot3
을 사용해 파라미터 선을 플로팅하여 나선형 플롯을 만듭니다.
syms t x = (1-t)*sin(100*t); y = (1-t)*cos(100*t); z = sqrt(1 - x^2 - y^2); fplot3(x, y, z, [0 1]) title('Symbolic 3-D Parametric Line')
반지름이 1이고 중심이 (0, 0, 0)인 구의 플롯을 겹쳐 놓습니다. sphere
를 사용하여 구 위의 점을 수치적으로 찾습니다. mesh
를 사용하여 구를 플로팅합니다. 결과로 생성되는 플롯은 상단 반구를 감싸고 있는 기호 파라미터 선을 보여줍니다.
hold on [X,Y,Z] = sphere; mesh(X, Y, Z) colormap(gray) title('Symbolic Parametric Plot and a Sphere') hold off