MATLAB 中的 meshgrid() 函式
Ammar Ali
2022年5月11日
本教程將討論使用 Matlab 中的 meshgrid()
函式建立網格。
使用 MATLAB 中的 meshgrid()
函式建立網格
為了在 Matlab 中建立 2D 和 3D 網格,我們可以使用 Matlab 的內建函式 meshgrid()
。在 Matlab 中,網格用於在 3D 平面上繪製資料。要在 3D 平面上繪製向量或矩陣,我們必須使用 meshgrid()
函式建立 2D 或 3D 網格。在 2D 圖中,我們將 x 和 y 座標作為向量傳遞,但在 3D 中,我們必須傳遞矩陣而不是向量。我們可以使用 meshgrid()
函式將向量轉換為矩陣,這些矩陣將用於在 3D 平面中繪製資料。例如,讓我們使用 meshgrid()
函式將包含 x 和 y 座標的兩個向量轉換為矩陣。請參閱下面的程式碼。
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()
函式用於在 3D 平面上繪製矩陣 Z。矩陣 Z 應與 X 和 Y 矩陣具有相同的大小。我們還可以使用 meshgrid()
函式使用三個或一個輸入向量和三個輸出變數建立一個 3D 網格。meshgrid()
函式將建立一個 3D 網格,形成網格點的立方體。如果我們在 meshgrid()
函式中只傳遞一個輸入向量,該函式將從第一個向量的索引中獲取另外兩個座標。
Author: Ammar Ali