2 回答

TA貢獻1804條經驗 獲得超3個贊
1、函數:
meshgrid是MATLAB中用于生成網格采樣點的函數。在使用MATLAB進行3D圖形繪制方面有著廣泛的應用。
2、功能:
生成繪制3D圖形所需的網格數據。在計算機中進行繪圖操作時, 往往需要一些采樣點,然后根據這些采樣點來繪制出整個圖形。在進行3D繪圖操作時,涉及到x、y、z三組數據,而x、y這兩組數據可以看做是在Oxy平面內對坐標進行采樣得到的坐標對(x, y)。
3、語法:
[X,Y] = meshgrid(x,y)
解釋:輸出X的每一行的數值都是復制的x的值;輸出Y的每一列的數值都是復制的y的值。
[X,Y]=meshgrid(x)與[X,Y]=meshgrid(x,x)是等同的
[X,Y,Z]=meshgrid(x,y,z)生成三維數組,可用來計算三變量的函數和繪制三維立體圖
相關函數: plot3、mesh、surf、automesh、ndgrid
4、示例:
示例一:
x=-3:1:3;y=-2:1:2;
[X,Y]= meshgrid(x,y);
這里meshgrid(x,y)的作用是分別產生以向量x為行,向量y為列的兩個大小相同的矩陣,其中x的行是從-3開始到3,每間隔1記下一個數據,并把這些數據集成矩陣X;同理y的列則是從-2到2,每間隔1記下一個數據,并集成矩陣Y。即
X=
-3 -2 -1 0 1 2 3
-3 -2 -1 0 1 2 3
-3 -2 -1 0 1 2 3
-3 -2 -1 0 1 2 3
-3 -2 -1 0 1 2 3
Y =
-2 -2 -2 -2 -2 -2 -2
-1 -1 -1 -1 -1 -1 -1
0 0 0 0 0 0 0
1 1 1 1 1 1 1
2 2 2 2 2 2 2

TA貢獻1811條經驗 獲得超5個贊
-8:.5:8表示產生-8到8之間一組間隔0.5的數
[a,b]=meshgrid(-8:.5:8),就表示x,y軸都是這些數組成的網格,即從一維擴充到二維了。
-8和8決定了圖像的范圍,0.5決定了曲面網格的大小或者說光滑程度
- 2 回答
- 0 關注
- 215 瀏覽
添加回答
舉報