4.1 데이터 플로팅
4.1.1 plot 함수
plot
함수로 길이가 같은 두 벡터를 x축, y축 좌표로 하는 그래프를 플로팅할 수 있다.
plot(x, y)
plot(x,y,"MarkerStyle", "LineStyle", StyleValue)
마커 스타일 지정
플로팅 함수는 선 사양을 인수로 받는다. 이에 따라 생성된 그래프를 수정할 수 있다. 인수로 사용되는 선 사양은 다음과 같다.
- 선 스타일
- 마커 기호
- 색
선 스타일 | 설명 |
---|---|
- |
실선 |
-- |
파선 |
: |
점선 |
-. |
일점 쇄선 |
마커 | 설명 |
---|---|
o |
원 |
+ |
플러스 기호 |
* |
별표 |
. |
점 |
x |
십자 |
_ |
가로선 |
| |
세로선 |
s |
정사각형 |
d |
다이아몬드 |
^ |
위쪽 방향 삼각형 |
v |
아래쪽 방향 삼각형 |
> |
오른쪽 방향 삼각형 |
< |
왼쪽 방향 삼각형 |
p |
펜타그램 |
h |
헥사그램 |
색 | 설명 |
---|---|
y |
노란색 |
m |
자홍색 |
c |
녹청색 |
r |
빨간색 |
g |
녹색 |
b |
파란색 |
w |
흰색 |
k |
검은색 |
plot(x,y,"r--o") \\ 원 마커(o), 빨간색(r), 파선(--)을 사용한 플로팅
선 속성 지정
플로팅에 사용되는 선의 속성을 지정할 수 있다.
색 | 설명 |
---|---|
LineWidth |
선의 너비 지정(단위: pt) |
MarkerEdgeColor |
마커 색 또는 채워진 마커의 가장자리 색 지정 |
MarkerFaceColor |
채워진 마커의 면 색 지정 |
MarkerSize |
마커의 크기 지정(단위: pt >= 0) |
벡터 플로팅
하나의 벡터만을 사용해 플로팅하면 벡터 값들이 y축 데이터로, x축 데이터는 1부터 n(요소의 개수)로 지정된다.
plot(v)
4.1.2 다른 선을 겹쳐서 plot
hold on
명령을 통해 이전 플롯을 유지한 채 다른 선을 추가한다.
plot(x,y)
hold on
plot(w,z)
디폴트 동작으로 되돌려, 각 플롯마다 따로 그려지게 하려면 hold off
.
4.1.3 레이블 달기
플롯 제목 - title
title
함수를 사용. 플롯에 레이블을 추가한다.
title("Plot Title")
문자열과 변수를 결합해서 주석을 달 수도 있다.
title("Sample" + v(1) + " Data")
축 레이블 - xlabel, ylabel
축 별로 레이블을 추가할 때는 xlabel
, ylabel
함수.
xlabel("Time")
ylabel("Position")
범례 - legend
플롯마다 범례를 추가할 때는 legend
legend("Plot A", "Plot B")
legend
함수에는 string형 배열을 사용할 수도 있다.
4.1.4 관심 영역 확대
축 범위 제한 - xlim, ylim
plot(x,y)
xlim([xmin, xmax]) \\ x축을 xmin ~ xmax로 제한하여 플로팅.
4.1.5 loglog 함수
loglog
함수는 각 축에 로그 스케일을 적용한 데이터를 플로팅한다. 사용 방법은 plot 함수와 같다.
4.1.6 plot 애니메이션
pause
는 일정 시간동안 루프를 중지시킨다. for
문과 hold
, pause
를 이용해 플롯이 움직이도록 애니메이션을 만들 수 있다.
for idx = 1:7
hold on
plot(idx,density(idx),'*')
hold off
pause(0.2)
end
위 코드를 실행하면 매 0.2초동안 루프가 중지되며 그 때마다 플로팅되는 점의 수(idx)가 늘어나게 된다.