이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

meshgrid

2차원 그리드와 3차원 그리드

설명

예제

[X,Y] = meshgrid(x,y)는 벡터 xy에 포함된 좌표를 바탕으로 2차원 그리드 좌표를 반환합니다. X는 각 행이 x의 복사본인 행렬이고, Y는 각 열이 y의 복사본인 행렬입니다. 좌표 XY로 표현되는 그리드에는 length(y)개의 행과 length(x)개의 열이 있습니다.

예제

[X,Y] = meshgrid(x)[X,Y] = meshgrid(x,x)와 동일하며, length(x)xlength(x)의 그리드 크기를 가진 정사각 그리드 좌표를 반환합니다.

예제

[X,Y,Z] = meshgrid(x,y,z)는 벡터 x, y, z로 정의되는 3차원 그리드 좌표를 반환합니다. X, Y, Z로 표현되는 그리드의 크기는 length(y)xlength(x)xlength(z)입니다.

예제

[X,Y,Z] = meshgrid(x)[X,Y,Z] = meshgrid(x,x,x)와 동일하며, length(x)xlength(x)xlength(x)의 그리드 크기를 가진 3차원 그리드 좌표를 반환합니다.

예제

모두 축소

벡터 x로 정의된 x 좌표와 벡터 y로 정의된 y 좌표로 2차원 그리드 좌표를 만듭니다.

x = 1:3;
y = 1:5;
[X,Y] = meshgrid(x,y)
X = 5×3

     1     2     3
     1     2     3
     1     2     3
     1     2     3
     1     2     3

Y = 5×3

     1     1     1
     2     2     2
     3     3     3
     4     4     4
     5     5     5

2차원 그리드에서 표현식 x2+y2을 계산합니다.

X.^2 + Y.^2
ans = 5×3

     2     5    10
     5     8    13
    10    13    18
    17    20    25
    26    29    34

구간 [-2,2]에서 균일한 간격의 x 좌표와 y 좌표를 가진 2차원 그리드를 만듭니다.

x = -2:0.25:2;
y = x;
[X,Y] = meshgrid(x);

2차원 그리드에서 함수 f(x,y)=xe-x2-y2을 계산하고 플로팅합니다.

F = X.*exp(-X.^2-Y.^2);
surf(X,Y,F)

R2016b부터는 그리드에서 작업을 수행하기 전에 반드시 그리드를 먼저 만들지 않아도 됩니다. 예를 들어, 표현식 xe-x2-y2을 계산하면 벡터 xy가 암시적으로 확장됩니다. 암시적 확장에 대한 자세한 내용은 배열 연산과 행렬 연산 항목을 참조하십시오.

surf(x,y,x.*exp(-x.^2-(y').^2))

구간 [0,6]에서 정의된 x 좌표, y 좌표, z 좌표로부터 3차원 그리드 좌표를 생성하고, 표현식 x2+y2+z2을 계산합니다.

x = 0:2:6;
y = 0:1:6;
z = 0:3:6;
[X,Y,Z] = meshgrid(x,y,z);
F = X.^2 + Y.^2 + Z.^2;

그리드의 크기를 파악합니다. 세 좌표 벡터는 길이가 달라 그리드 점으로 구성된 사각형 상자를 형성합니다.

gridsize = size(F)
gridsize = 1×3

     7     4     3

x에 정의된 좌표를 바탕으로 균일한 간격의 3차원 그리드를 생성하려면 단일 입력 구문을 사용하십시오. 새 그리드는 그리드 점으로 구성된 정육면체를 형성합니다.

[X,Y,Z] = meshgrid(x);
G = X.^2 + Y.^2 + Z.^2;
gridsize = size(G)
gridsize = 1×3

     4     4     4

입력 인수

모두 축소

점의 x 좌표로, 벡터로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

점의 y 좌표로, 벡터로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

점의 z 좌표로, 벡터로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

출력 인수

모두 축소

그리드 상의 x 좌표로, 2차원 배열(입력값 2개)이나 3차원 배열(입력값 3개)로 반환됩니다.

그리드 상의 y 좌표로, 2차원 배열(입력값 2개)이나 3차원 배열(입력값 3개)로 반환됩니다.

그리드 상의 z 좌표로, 3차원 배열로 반환됩니다.

  • 다차원 그리드 생성에 대한 자세한 내용은 그리드 표현 항목을 참조하십시오.

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

R2006a 이전에 개발됨