본문 바로가기
MATLAB

2차원 plot 그리기 (matlab)

by deeplearningkakao 2022. 2. 19.
반응형

 

matlab에서는 그래프 그리는 함수를 제공하고있습니다

2차원, 3차원 모두 가능하지만, 우선 2차원 그래프 그리는 방법에 대해 살펴보겠습니다.

 

선 플롯 그리기

plot함수는 x값과 y값으로 구성된 선 plot을 그릴 수 있습니다.

x에는 x값을 넣어주고, y에는 함수를 만들어 줍니다. 첫번째 예제로 sin 함수를 만들어 보겠습니다.

 

x = 0:0.05:5;
y = sin(x.^2);
figure
plot(x,y)

해당 코드를 실행하면, 아래와 같이 sin 그래프를 그릴 수 있습니다.

선 플롯은, 여러개의 그래프를 동시에 그릴 수 있습니다.

sin과 cos 동시에 함수를 만들어 줍니다.

y1 = sin(x.^2);
y2 = cos(x.^2);
plot(x,y1,x,y2)

해당 코드를 실행하면, 아래와 같이 2개에 그래프를 동시에 그릴 수 있으며, color도 구분할 수 있습니다.

 

막대 플롯 그리기

bar함수를 사용해서 막대차트를 만들 수 있습니다. 이때 사용되는 bar함수는 세로 막대 차트를 그리는 것입니다.

만약에 가로 막대 차트를 그리고 싶으면, barh함수를 사용하면 되겠습니다.

 

x = -2.9:0.2:2.9;
y = exp(-x.*x);
bar(x,y)

x값의 범위를 설정해주고, y함수를 넣어서 bar(x,y)로 그립니다.

계단 플롯 그리기

stairs 함수는 계단 그래프를 그릴 수 있습니다. y값으로만 구성 된 plot을 만들수도 있고,

x,y 값으로 구성 된 계단 플롯을 만들 수 있습니다.

 

아래 코드를 실행해보겠습니다

우선, x값의 범위를 정해주고, y는 sin 함수를 만들어 줍니다. 그렇게 되면, 선그래프와 달리 계단그래프를 그릴 수 있습니다.

x = 0:0.25:10;
y = sin(x);
stairs(x,y)

 

오차 막대 플롯

errorbar 함수를 사용해서, 오차 막대그래프를 그릴 수 있습니다.

errorbar함수는 x,y,값의 선 플롯을 먼저 그린 후, 각 관측값 위에 세로 오차 막대를 겹쳐서 그려줍니다.

오차 막대의 크기를 지정하려면, 추가 입력 인수를 errorbar로 넘겨서 크기도 지정해줄 수 있습니다.

x = -2:0.1:2;
y = erf(x);
eb = rand(size(x))/7;
errorbar(x,y,eb)

rand함수는 random함수입니다. rand함수로 오차 막대의 크기를 지정해줄 수 있습니다.

errorbar에는 3가지 변수가 들어갑니다.

1. x값, 2. y값, 3. 오차크기

극좌표 그리기

polarplot 함수를 사용하면 극좌표를 그릴 수 있습니다.

polarplot 함수는 각도 라이안 값 theta 와 반지름 값 rho을 사용해서 극좌표 플롯을 그릴 수 있습니다.

 

theta = 0:0.01:2*pi;                      % angle
rho = abs(sin(2*theta).*cos(2*theta));    % radius
polarplot(theta,rho)

각도인 theta값을 정해주고, 반지름 값 radius 을 설정해줍니다.

그리고 polarplot에 각도와 반지름을 넣어서 극좌표 그래프를 아래처럼 출력합니다.

반응형

줄기 그래프 그리기

stem함수를 사용해서,  선 그래프에 세로선을 연결해 x와 y값에 대한 동그라미 마크를 그릴 수 있습니다.

x = 0:0.1:4;
y = sin(x.^2).*exp(-x);
stem(x,y)

stem을 통해 자동으로 세로선이 생깁니다.

산점도 그래프 그리기

scatter 함수를 사용해서 뿌리듯한 산점도 그래프를 그릴 수 있습니다.

x 값과 y값을 주고 산점도를 그려보겠습니다.

load patients Height Weight Systolic    % load data
scatter(Height,Weight)                  % scatter plot of Weight vs. Height
xlabel('Height')
ylabel('Weight')

 

또한 해당 산점도에 색깔도 입력할 수 있습니다.

scatter에 인수를 추가해서 동그라미마커의 크기와 색깔을 지정할 수 있습니다.

scatter(Height,Weight,20,Systolic)    % color is systolic blood pressure
xlabel('Height')
ylabel('Weight')
colorbar

 

동그라미 크기를 20으로 지정하고, systolilc을 사용해서 컬러를 정해줍니다.

 

그럼 여기까지 matlab에서 plot을 하는 종류 여러가지를 소개해드렸습니다.

데이터 분석할 때 꼭 필요한 기능이니 

숙지하시길 바랄게요!

 

 

글이 도움되셨다면 공감버튼 꾹 눌러주세요! (로그인 안해도 가능!)

 

반응형

댓글