1. mesh(z)語句
mesh(z)語句可以給出矩陣z元素的三維消隱圖,網路表面由z座標點定義,與前面敘述的x-y平面的線格相同,圖形由鄰近的點連線而成.它可用來顯示用其它方式難以輸出的包含大量資料的大型矩陣,也可用來繪製z變數函式.
顯示兩變數的函式z=f(x,y),第一步需產生特定的行和列的x-y矩陣.然後計算函式在各網格點上的值.最後用mesh函式輸出.
下面我們繪製sin(r)/r函式的圖形.建立圖形用以下方法:
x=-10:1:10;
y=x';
x=ones(size(y))*x;
y=y*ones(size(y))';
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
mesh(z) %%試執行mesh(x,y,z),看看與mesh(z)有什麼不同之處?
各語句的意義是:首先建立行向量x,列向量y;然後按向量的長度建立1-矩陣;用向量乘以產生的1-矩陣,生成網格矩陣,它們的值對應於x-y座標平面;接下來計算各網格點的半徑;最後計算函式值矩陣z.用mesh函式即可以得到圖形.
第一條語句x的賦值為定義域,在其上估計函式;第三條語句建立乙個重複行的x矩陣,第四條語句產生y的響應,第五條語句產生矩陣r(其元素為各網格點到原點的距離).用mesh方法結果如上.
[x, y]=meshgrid(-10:1:10)
2 meshc用法
meshc與函式mesh的呼叫方式相同,只是該函式在mesh的基礎上又增加了繪製相應等高線的功能.下面來看乙個meshc的例子:
[x,y]=meshgrid([-4:.5:4]);
z=sqrt(x.^2+y.^2);
meshc(z) %%試執行meshc(x,y,z),看看與meshc(z)有什麼不同之處?
函式meshz與mesh的呼叫方式也相同,不同的是該函式在mesh函式的作用之上增加了遮蔽作用,即增加了邊界面遮蔽.例如:
[x,y]=meshgrid([-4:.5:4]);
z=sqrt(x.^2+y.^2);
meshz(z) %%試執行meshz(x,y,z),看看與meshz(z)有什麼不同之處?
3 surf函式也是matlab中常用的三維繪圖函式.其呼叫格式如下:
surf(x,y,z,c)
輸入引數的設定與mesh相同,不同的是mesh函式繪製的是一網格圖,而surf繪製的是著色的三維表面.matlab語言對表面進行著色的方法是,在得到相應網格後,對每一網格依據該網格所代表的節點的色值(由變數c控制),來定義這一網格的顏色.若不輸入c,則預設為c=z.
我們看下面的例子:
%繪製地球表面的氣溫分布示意圖.
[a,b,c]=sphere(40);
t=abs(c); %求絕對值
surf(a,b,c,t);
axis equal
colormap('hot')
座標軸的控制函式axis,呼叫格式如下:
axis([xmin,xmax,ymin,ymax,zmin,zmax])
用此命令可以控制座標軸的範圍.
axis auto 自動模式,使得圖形的座標範圍滿足圖中一切圖元素
axis equal 嚴格控制各座標的分度使其相等
axis square 使繪圖區為正方形
axis on 恢復對座標軸的一切設定
axis off 取消對座標軸的一切設定
axis manual 以當前的座標限制圖形的繪製
(2)grid on在圖形中繪製座標網格.
grid off取消座標網格.
(3)xlabel, ylabel, zlabel分別為x軸, y軸, z軸新增標註.title為圖形新增標題.
以上函式的呼叫格式大同小異,我們以xlabel為例進行介紹:
xlabel('標註文字','屬性1','屬性值1','屬性2','屬性值2',…)
這裡的屬性是標註文字的屬性,包括字型大小、字型名、字型粗細等.
例如:[x, y]=meshgrid(-10:1:10);
r=sqrt(x.^2+y.^2);
z=-cos(r);
mesh(x,y,z)
xlabel('x\in[-4,4]','fontweight','bold');
ylabel('y\in[-4,4]','fontweight','bold');
zlabel('z=-cos(sqrt(x^2+y^2))','fontweight','bold');
學習了這幾個函式的使用,我想應該就夠了,其他的函式可以到用的時候查閱。
matlab 三維繪製
1.mesh z 語句 mesh z 語句可以給出矩陣z元素的三維消隱圖,網路表面由z座標點定義,與前面敘述的x y平面的線格相同,圖形由鄰近的點連線而成 它可用來顯示用其它方式難以輸出的包含大量資料的大型矩陣,也可用來繪製z變數函式 顯示兩變數的函式z f x,y 第一步需產生特定的行和列的x y...
Matlab之三維曲面的繪製
在繪製曲面之前,需要先將資料點生成平面資料網格,其生成的資料是網格的座標。生成的方式有兩種 1 利用矩陣運算生成 示例 x 2 6 y 3 8 x ones size y x y y ones size x 其中,x,y為生成的網格資料,下圖為網格資料的示意圖。2 利用meshgrid函式生成 x,...
matlab之連續 離散的三維曲面繪製
連續 其實也不算連續,但為了和離散區分,定義為連續,與下面離散點的不同就是,連續表示z可以用x,y來表示,而離散是純的散點。z沒有乙個確定的關於x,y的函式形式 一般採用surf x,y,z 命令。注意x於y是同維數還是不同維數,均需要採用meshgrid 函式將其變為同維數的矩陣。z為以x與y作為...