MATLAB の meshgrid()関数
このチュートリアルでは、Matlab の meshgrid()
関数を使用してグリッドを作成する方法について説明します。
MATLAB で meshgrid()
関数を使用してグリッドを作成する
Matlab で 2D および 3D グリッドを作成するには、Matlab の組み込み関数 meshgrid()
を使用できます。Matlab では、グリッドを使用して 3D 平面にデータをプロットします。ベクトルまたは行列を 3D 平面にプロットするには、meshgrid()
関数を使用して 2D または 3D グリッドを作成する必要があります。2D プロットでは、x 座標と y 座標をベクトルとして渡しますが、3D では、ベクトルではなく行列を渡す必要があります。meshgrid()
関数を使用して、ベクトルを行列に変換し、3D 平面にデータをプロットするために使用できます。たとえば、meshgrid()
関数を使用して、x 座標と y 座標を含む 2つのベクトルを行列に変換してみましょう。以下のコードを参照してください。
clc
x = 1:4
y = 1:6
[X,Y] = meshgrid(x,y)
出力:
x =
1 2 3 4
y =
1 2 3 4 5 6
X =
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
Y =
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
6 6 6 6
出力では、小さい x と y と大文字の X と Y の違いを確認できます。小さい x と y の座標を使用してデータを 3D 平面にプロットすることはできませんが、大文字の X と Y の座標を使用してプロットすることはできます。3D 平面のデータ。たとえば、X 座標と Y 座標、および surf()
関数を使用して、3D 平面にプロットするベクトルを作成しましょう。以下のコードを参照してください。
clc
x = 1:4;
y = 1:6;
[X,Y] = meshgrid(x,y);
Z = X.^2 + Y.^2;
surf(X,Y,Z)
出力:
surf()
関数は、行列 Z を 3D 平面にプロットするために使用されます。行列 Z は、X および Y 行列と同じサイズである必要があります。meshgrid()
関数を使用して、3つまたは 1つの入力ベクトルと 3つの出力変数を使用して 3D グリッドを作成することもできます。meshgrid()
関数は、グリッドポイントの立方体を形成する 3D グリッドを作成します。meshgrid()
関数で 1つの入力ベクトルのみを渡す場合、関数は最初のベクトルのインデックスから他の 2つの座標を取得します。