블로그 이미지
Salt n Light

calendar

            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

Notice

Recent Comment

Recent Trackback

Archive

2008.03.17 16:30 Season#2 - M.S./Programming

MATLAB 기초 강좌(2)

 

  • MATLAB에서 그래픽을 그리는 일반적인 절차

(1) plot할 데이터를 준비한다.

(2) 데이터를 plot할 그림 창을 선택하고 Single graphic으로 할 건지 Multi graphic으로 할건지를 선택한다.

(3) plot함수를 호출한다.

(4) Line이나 marker의 property를 선택한다.

(5)축의 한계값, Grid line등을 설정한다.

(6) xlabel, legend, text등으로 그래픽 객체에 라벨링을 한다.

(7) 그래픽 객체를 출력한다.

 

  • Line을 그리는 그래픽 함수들

함수

설명

plot

x와 y축에 대해서 모두 선형 배율(linear scale)로 된 그래프를 그린다.

loglog

x와 y축에 대해서 모두 log 배율(linear scale)로 된 그래프를 그린다.

semilogx

x축에 대해서는 log 배율(linear scale)로 y축에 대해서는 선형 배율(linear scale)로 된 그래프를 그린다.

Semilogy

x축에 대해서는 선형 배율(linear scale)로 y축에 대해서는 log 배율(linear scale)로 된 그래프를 그린다.

plotyy

y축의 좌우에 값으로 라벨이 된 그래프를 그린다.


  • plot를 사용한 선 그리기

(1) 2차원 데이터의 선 그리기의 경우

plot(x,y,Color+LineStyle+Marker)

(2) 3차원 데이터의 선 그리기의 경우

plot(x,y,z,Color+LineStyle+Marker)

(3) 여러 쌍의 데이터를 하나의 그림 창에 한꺼번에 그리고 싶은 경우

plot(x1,y1,CSM1, x2,y2,CSM2,, xn,yn,CSMn,)


  • Line을 그리는 함수들에서 사용 가능한 선의 color

MATLAB에서의 symbol

Color (RGB값)

MATLAB에서의 symbol

Color (RGB값)

c

Cyan (011)

g

green (010)

m

Magenta (101)

b

blue (001) (default 값)

y

yellow (110)

w

white (111)

r

red (100)

k

black (000)


  • Line을 그리는 함수들에서 사용 가능한 선의 style

MATLAB에서의 symbol

Style

MATLAB에서의 symbol

Style

-

Solid line (default 값)

:

Dotted line

--

Dashed line

-.

Dash-dot line

none

No line



 

  • Line을 그리는 함수들에서 사용 가능한 선의 marker

MATLAB에서의 symbol (용어)

Marker Style

MATLAB에서의 symbol (용어)

Marker Style

+ (Plus sign)

+

^ (Upward pointing triangle)

O (Circle)

O

v (Downward pointing triangle)

* (Asterisk)

*

> (Right pointing triangle)

. (Point)

·

< (Left pointing triangle)

X (Cross)

×

pentagram (Five pointed star)

square (Square)

hexagram (Six pointed star)

diamond (Diamond)

none

No marker (default 값)


  • 그랙픽 객체에 라벨링을 하는 그래픽 함수들

함수 명

설명

title

그래프의 제목을 더한다.

xlabel

x축에 라벨을 더한다.

ylabel

y축에 라벨을 더한다.

zlabel

z축에 라벨을 더한다.

legend

그래프에 범례를 더한다.

text

그래픽 객체의 임의의 위치에 문자열을 더한다.

gtext

마우스를 사용하여 그래픽 객체의 임의의 위치에 문자열을 더한다

grid

그래픽 객체에 격자를 더하거나 없앤다.


  • 극 좌표계에서의 선 그리기

polar(각도,반지름, Color+LineStyle+Marker)


  • 좌표계의 변환

(1) 직각 좌표계에서의 데이터를 극 좌표계의 데이터로 변환 하는 함수

 [각도,반지름]=cart2pol(x좌표,y좌표)

[각도,반지름,높이]=cart2pol(x좌표,y좌표,z좌표)

(2) 극 좌표계에서의 데이터를 직각 좌표계의 데이터로 변환 하는 함수

[x좌표,y좌표]= pol2cart (각도,반지름)

[x좌표,y좌표,z좌표]=pol2cart(각도,반지름,높이)

(3) 직각 좌표계에서의 데이터를 구면 좌표계의 데이터로 변환 하는 함수

[f,q,반지름]=cart2sph(x좌표,y좌표,z좌표)

(4) 구면 좌표계에서의 데이터를 직각 좌표계의 데이터로 변환 하는 함수

[x좌표,y좌표,z좌표]=sph2cart(f,q,반지름)


  • 마우스를 사용한 좌표 값의 입력

 [x좌표,y좌표,Button]=ginput(N)


  • 래픽 객체를 파일로 저장하는 방법

print -f<handle> -device -options filename


  • 그래픽 객체를 파일로 저장하기 위한 device들

Device명

저장 파일 형식

Dmeta

파일 확장자가 EMF인 Meta파일 형식으로 저장한다.

Dbitmap

파일 확장자가 BMP인 Bitmap파일 형식으로 저장한다.

Dps

파일 확장자가 PS인 흑백 프린터를 위한 PostScript 파일 형식으로 저장한다. (흑백으로 저장됨)

Dpsc

파일 확장자가 PS인 칼라 프린터를 위한 PostScript 파일 형식으로 저장한다. (칼라로 저장됨)

dps2

파일 확장자가 PS인 흑백 프린터를 위한 Level 2 PostScript 파일 형식으로 저장한다. (흑백으로 저장됨)

dpsc2

파일 확장자가 PS인 칼라 프린터를 위한 Level 2 PostScript 파일 형식으로 저장한다. (칼라로 저장됨)

deps

파일 확장자가 EPS인 흑백 프린터를 위한 Encapsulated PostScript 파일 형식으로 저장한다. (흑백으로 저장됨)

depsc

파일 확장자가 EPS인 칼라 프린터를 위한 Encapsulated PostScript 파일 형식으로 저장한다. (칼라로 저장됨)

deps2

파일 확장자가 EPS인 흑백 프린터를 위한 Encapsulated Level 2 PostScript 파일 형식으로 저장한다. (흑백으로 저장됨)

depsc2

파일 확장자가 EPS인 칼라 프린터를 위한 Encapsulated Level 2 PostScript 파일 형식으로 저장한다. (칼라로 저장됨)

dhpgl

파일 확장자가 HGL인 Hewlett-Packard 7475A 플로터를 위한 HPGL파일 형식으로 저장한다.

dill

파일 확장자가 AL인 Adobe Illustrator 88 호환 파일 형식으로 저장한다.

djpeg<nn>

파일 확장자가 JPG인 JPEG 파일 형식으로 저장한다.

<nn>은 Jpeg파일의 질을 나타내는 것으로 0에서 100사이의 값을 가진다.

dtiff

파일 확장자가 TIF인 압축된TIFF 파일 형식으로 저장한다.

dtiffnocompression

파일 확장자가 TIF인 압축되지 않은 TIFF 파일 형식으로 저장한다.

dpng

파일 확장자가 PNG인 Portable Network Graphic 24-bit truecolor image 파일 형식으로 저장한다.

dmfile

저장할 그림 창을 다시 복원할 MATLAB의 M-file과 MAT-file을 만든다.


  • 그래픽 객체를 프린터로 출력하는 방법

(1) 현재 windows시스템에 설정된 기본 프린터로 현재 활성화 되어 있는 그림 창의 그래픽을 출력하는 경우

print

(2) device를 사용하여 프린터로의 출력을 제어 하는 경우

print -f<handle> -device -options

(3) 그림 창의 File 메뉴의 print관련 메뉴를 사용한다.


  •   그래픽 객체를 프린터로 출력하기 위한 device들

Device명

설명

dwin

그래픽 객체를 현재 설정된 프린터로 흑백으로 출력

Dwinc

그래픽 객체를 현재 설정된 프린터로 칼라로 출력

dsetup

출력은 하지 않고 Print Setup dialog box를 띄운다.

v

출력을 하기 위해서 Print dialog box를 띄운다.

dljet2p

HP LaserJet IIP 프린터로 출력

dljet3

HP LaserJet III 프린터로 출력

ddeskjet

HP DeskJet and DeskJet Plus 프린터로 출력

dcdj550

HP Deskjet 550C (UNIX only) 프린터로 출력

dpaintjet

HP PaintJet color printer 프린터로 출력

dpcx24b

24-bit color PCX file format, 3 8-bit planes

dppm

Portable Pixmap (plain format)


  • 윤곽선 그래프

(1) 2차원 데이터의 윤곽선 그래프의 경우

contour(x,y,z,N)

(2) 3차원 데이터의 윤곽선 그래프의 경우

contour3(x,y,z,N)


면 그래프를 그리기 위한 그래픽 함수들

함수

설명

mesh, surf

면 그리기

meshc, surfc

contour(윤곽선,등고선)그리기가 포함된 면 그리기

meshz

curtain(막)그리기가 포함된 면 그리기

pcolor

평평한 면 그리기

surf1

임의의 광원을 가진 3차원shade된 면 그리기

surface

면 그리기 (Low-level function)


  • 막대 그래프를 그리는 함수들


2차원

3차원

수직 방향

bar

bar3

수평 방향

barh

barh3


  • 파이 챠트 그리기

(1) 2차원 파이 챠트의 경우

pie(y)

(2) 3차원 파이 챠트의 경우

pie3(y)


  • 히스토그램 그리기

(1) 직각 좌표계에서의 데이터의 경우

hist(y)

(2) 극 좌표계에서의 데이터의 경우

rose(theta)


  • stem plot

(1) 2차원 데이터의 stem plot의 경우

stem(x,y,Color+LineStyle+Marker)

(2) 3차원 데이터의 stem plot의 경우

stem3(x,y,Color+LineStyle+Marker)


  • 계단 그래프 그리기

stairs(x,y)


  • 방향 및 속도 벡터 그래프 관련 함수들

함수

설명

compass

Polar plot의 원점으로부터 발산하는 벡터를 그린다.

feather

수평선을 따라 등 간격으로 분포된 점들로부터 연장하는 벡터를 그린다.

quiver

(u,v)성분에 의해 정의 되는 2차원 벡터를 그린다.

quiver3

(u,v,w)성분에 의해 정의 되는 3차원 벡터를 그린다.


  • 애니메이션

(1) movie를 사용하는 방법

axis equal

M = moviein(n);

for j=1:n

  plot_command

  M(:,j) = getframe;

 end

Movie(M)


(2) redraw 와 erase를 사용하는 방법

p=erase_mode가 사용된plot_commad

hold on

axis를 사용한 축의 고정

for j=1:n

 변화되는 점의 계산

 set(p,x,x,y,y)

 drawnow

end

  • 기타의 그래픽 관련 유틸리티들

(1) subplot(m,n,i) 또는 subplot(mni)

하나의 그림 창에 여러 하부 그래픽 영역을 만든다.

(2) hold on/off

이미 존재하는 그래프에 기존의 그래프를 지우지 않고 새로운 그래프를 추가한다(hold on).

(3) axis([x축의 최소값, x축의 최대값, y축의 최소값, y축의 최대값])

축의 한계값을 입력된 벡터인 [x축의 최소값, x축의 최대값, y축의 최소값, y축의 최대값]에 맞추어 바꾼다.

(4) axis on/off

Tick mark와 축의 라벨을 보이거나(axis on) 감춘다(axis off).

(5) zoom

그래프를 확대 또는 축소 시킨다.

(6) colorbar

그래픽 객체에 색의 스케일을 나타내는 bar를 추가한다.

(7) hidden on/off

은선을 보이게(hidden off) 또는 보이지 않게(hidden on) 한다

(8) view(AZ,EL)

사용자가 그래픽 객체를 바라보는 높이와 방향을 의미하는 관찰점을 변경 시킨다.

(9) colormap

그림 창에 사용된 색의 수를 나타내는 행렬 값을 제어한다.



출처: http://myhome.naver.com/lsb2088/data/matlab/matlab3.html

posted by Salt n Light