http://cafe.naver.com/mhjune/31


MATLAB의 기본

그래프(2D)

>> plot([1 2 3],[4 5 6])

(commend 창에 치세요)

>> (xlabel('시간'))

>> (ylabel('속도'))

그래프에 눈금을 넣어주는것 >>grid

제목 넣어주는 것 title(' ')

선의 모양 및 색깔 넣어주는 것 plot([ ],[ ],[' '])

':' , '-.' , '--' , '--r' , '*k' 등등

plot([1 2 3],[4 5 6],['--r'])

이제부터 한 그래프안에 여러개의 그래프를 넣는 방법

plot([1 2 3],[4 5 6 ],['-r'],[1 2 3],[8 9 10],['--b'], [1 2 3],[1 2 3],[':k'])

그래프안에 선의 이름을 정해 주는 것

legend('x1-date','x2-date','x3-date')

경우에 따라 그래프를 겹쳐야 할때도 있고 뺄때도 있으므로 이럴땐

이런 방법을 사용함

>> plot([1 2 3],[4 5 6],['--r'])

>> hold on

>> plot([1 2 3],[8 9 10],['-b'])

>> hold on

해제를 시킬 경우는

>> hold off

>> plot([1 2 3],[8 9 10],['-b'])

>>

그래프를 별도의 figure에 해야 될 경우

>> figure(1)

>>

>> plot([1 2 3],[1 2 3],['*b'])

>> figure(1)

이 figure(1)에 대한 그래프가 나오고

>> figure(2)

>>

>> plot([1 2 3],[1 2 3],['--b'])

>> figure(2)

이 figure(1)에 대한 그래프가 나옵니다.


하나의 figure에 안에 따로 따로 모았을 경우

>> subplot(221)

>> plot([1 2 3],[1 2 3],['--b'])

>> subplot(222)

>> plot([1 2 3],[4 5 6],['-b'])

>> subplot(223)

>> plot([1 2 3],[8 9 10],['*b'])

>> subplot(224)

>> plot([1 2 3],[8 9 10],[':b'])



subplot(221)의 의미는

앞에 22는 행과 열의 의미이여 뒤에 1은 행과 열의 순서라고 보면 됩니다.

횡일때는 순서를 왼쪽에서 오른쪽으로 잡으며 종일때는 위에서 밑으로 합니다.


연습문제

>> t=[0:0.1:20+pi];

>> subplot(221)

>> plot(sin(t))

>> xlabel('t'),ylabel('sin(t)')

>> subplot(222)

>> plot(cos(t))

>> xlabel('t'),ylabel('cos(t)')

>> subplot(223)

>> syms t

>> ezplot(tan(t))

>> xlabel('t'),ylabel('tan(t)')

>> subplot(224)

>> ezplot(t)

>> xlabel('t'),ylabel('t')

>> figure(2)

>>

>> t=[0:0.1:20+pi];

>> plot(t.^2+2*t+1)

>> xlabel('t.^2+2*t+1'),ylabel('t')

>>

3D그래프 (축이 3개)

>> plot3([1 2 3 4],[5 6 7 8],[9 10 11 12])

>> x=[0:pi/50:pi];

>> y=[0:pi/50:pi];

>> z=sin(x)+cos(y);

>> plot3(x,y,z)

>> grid

>>

[삼차원]mesh:(y의 한지점을 기준으로 해서 x의 모든 경우의 수를 고려해서 그때의 축을 만들어줌)

함수를 만들기 전 meshgrid를 먼저 만들어 줘야 한다.

>> x=[0:pi/50:pi];

>> y=[0:pi/50:pi];

>> [X,Y]=meshgrid(x,y);

>> mesh(X,Y,sin(X)+cos(Y)) (삼차원 그래프가 등장)

>> surf(X,Y,sin(X)+cos(Y))(z의 값에 따라 색이 다름)


>> surfc(X,Y,sin(X)+cos(Y)) (2D+3D로 등곡선 표시)

>> colorbar(X,Y,sin(X)+cos(Y)) (값에 따른 색상 표시)


>> contour(X,Y,sin(X)+cos(Y)) (등곡선만 2차원으로 표시

반응형

+ Recent posts