關閉→
當前位置:知科普>IT科技>matlab三維圖形如何繪製

matlab三維圖形如何繪製

知科普 人氣:2.86W

1、對於三維圖形其有x、y、z三個座標軸,數據也要按三維確定,如圖所示,下面是部分單位數據樣例。 2、首先需要將數據讀取到MATLAB工作空間(workspace)中,使用xlsread()函數即可,使用絕對路徑讀取,因為不在MATLAB默認路徑內。 3、接着,需

不論是在科研工作中,還是在實際工程應用中,常常會遇到三維或者更數據的處理,並且將處理的數據在圖形中顯示出來,MATLAB平台也提供了很多關於三維圖形繪製的函數,利用這些函數可以很方便的實現三維圖形的繪製,本文主要講解Matlab中關於三維圖形繪製相關的函數。

材料/工具

電腦

方法

調用plot3函數來繪製三維曲線圖,調用格式如下:

1、調用plot3函數來繪製三維曲線圖,調用格式如下: plot3(x1,y1,z1,’PropertyName’,’PropertyValue’); 其中PropertyName表示屬性名,可以是顏色,線型,線寬等屬性,PropertyValue表示屬性值,對應屬性名所包含的各種屬性值。 該函數調用對

       plot3(x1,y1,z1,’PropertyName’,’PropertyValue’...);

在matlab中可以利用三維數據等值面繪製函數isosurface來繪製三維隱函數的圖像 三維隱函數可以描述,為方程 f(x,y,z)=0; 如果我們定義函數v= f(x,y,z) 在一定的下x,y,z的定義域內計算出一個三維區間中v的值 然後方程f(x,y,z)=0的圖像,其實就是

其中PropertyName表示屬性名,可以是顏色,線型,線寬等屬性,PropertyValue表示屬性值,對應屬性名所包含的各種屬性值。

程序如下: [x,y]=meshgrid(-1:0.01:1);z1=2*x.^2+y.^2;mesh(x,y,z1)hold onz=1.*(x>=-1&x

該函數調用對應的m文件如下:

1、打開matlab,在命令行窗口中輸入如下圖所示,繪製三維函數圖。 2、按回車鍵之後,可以看到繪製的三維函數圖。 3、接下來繪製三維餅圖,輸入“pie3([5 3 6 7 9])”。 4、按回車鍵之後,可以看到繪製的三維餅圖。 5、然後輸入相應的代碼文件,如

       clear all;%%表示清空所有變量及變量值%%

由於你沒有指定x,y座標的具體取值, 下面代碼就直接用整數序列代替了. x = 1:size(data,1); y = 1:size(data,2); [X,Y] = meshgrid(x,y); surf(X,Y,data);

       t=0:pi/360:2*pi;

用isosurface繪製 例子:繪製x^2+y^2-z^2=1的圖像 [x,y,z]=meshgrid(linspace(-10,10)); val=x.^2+y.^2-z.^2; isosurface(x,y,z,val,1) axis equal

       x=sin(t);

matlab中三維圖形的顏色的設置是輸入相關的字母代碼完成的。只需在繪圖的函數後加上相應的字母代碼即可,具體字母代表的顏色如下: MATLAB在數學類科技應用軟件中在數值計算方面首屈一指。MATLAB可以進行矩陣運算、繪製函數和數據、實現算法、創

       y=cos(t);

畫平面完全可以啊,比如 >> x=-20:20; >> y=x; >> [x,y]=meshgrid(x,y); >> z1=x+y+100; >> z2=2x+y+39; .. >> surf(x,y,z1) >> hold on >> surf(x,y,z2) 但是我覺得你要算體積,表面積的話,我覺得還是用autoCAD比較方便吧,先在autoCAD

       z=2*x.^2+y.^2;

解決方法: 1、根據y,z值,求出x值 2、分揀x>=1.5以上對應的y,z值 disp('x y z'); %顯示x>=1.5,0

       plot3(x,y,z,'Color','r','LineWidth',2);

畫平面完全可以啊,比如 >> x=-20:20; >> y=x; >> [x,y]=meshgrid(x,y); >> z1=x+y+100; >> z2=2x+y+39; .. >> surf(x,y,z1) >> hold on >> surf(x,y,z2) 但是我覺得你要算體積,表面積的話,我覺得還是用autoCAD比較方便吧,先在autoCAD

      %%三維曲線座標軸和標題的設置%%

看幫助中的mesh函數,解釋的很清楚 希望你能多看help,勝過市面上的任何matlab編程書籍,並且例子很詳細 只有自己去想方法,你才能真掌握 謝謝

      xlabel('x');

clc,cleara=-pi:0.05:pi;r=linspace(0,15,length(a));x=r.*sin(a);y=r.*cos(a);[X,Y]=meshgrid(x,y);Z=393+(X.^2+Y.^2)*107/225;mesh(Z)這個試試,希望可以幫到你

      ylabel('y');

1. 雙縱座標函數plotyy 在Matlab中,如果需要繪製出具有不同縱座標標度的兩個圖形,可以使用plotyy函數,它能把具有不同量綱,不同數量級的兩個函數繪製在同一個座標中,有利於圖形數據的對比分析。使用格式為:plotyy(x1,y1,x2,y2) x1,y1對應一

      zlabel('z');

正在思考截面圖 其他的都寫好了 >> t=-3:pi/50:3; >> x=sin(3*t); >> y=cos(3*t); >> [X,Y]=meshgrid(x,y); >> Z=2.*X.^2+Y.^2; >> subplot(2,2,1); >> mesh(X,Y,Z) >> axis([-1.2 1.2 -1.2 1.2 0 3]); >> title('網格圖'); >> subplot(2,2,2);

      title('三維曲線圖');

MATLAB繪圖北京科技大學數學實驗三維曲線繪圖三維曲面繪圖北京科技大學數學實驗二、MATLAB三維曲線繪圖plot3——三維曲線繪製指令plot3的調用格式:plot3(X,Y,Z)plot3(X,Y,Z,’String’)plot3(X1,Y1,Z1,’String1’,X2,Y2,Z2,’String2’,…)plot3與plot

      axis([-1.2 1.2 -1.2 1.2 0.5 2.2];

需要源代碼的我也可以給你 源代碼: clear;clc; [a,d]=meshgrid(linspace(0,2*pi,100),linspace(0.1,1,100)); mx=sqrt(25+16*cos(a).^2+94*d.^2.*sin(a).^2); my=sqrt(25+16*sin(a).^2+94*d.^2.*cos(a).^2); mz=sqrt(66+94*d.^2); surf(a,d,mx)

m文件操作及運行結果如下:

先將數據按上面的方式載入,然後: p=randn(3,100);%在此我以這個p為例; x = p(1,:); y = p(2,:);z = p(3,:);%載入x,y,z的數值; xi=linspace(min(x),max(x),50); yi=linspace(min(y),max(y),50);%插值點構造; [Xi,Yi]=meshgrid(xi,yi); Zi=griddat

matlab三維圖形如何繪製

調用surf、surfc(得到含有等高線的三維曲面圖)、surfl(帶燈光的三維曲面圖)三個函數來繪製三維曲面圖,調用格式如下:

方法/步驟 作為演示,以二元函數圖 z = xexp(-x^2-y^2) 為例講解基本操作,首先需要利用meshgrid函數生成X-Y平面的網格數據,如下所示: % 生成二維網格數據 xa = -2:0.2:2; ya = xa; [x,y] = meshgrid(xa,ya); 此外,需要計算縱軸數據(z軸),

       surf(x,y,z,’PropertyName’,’PropertyValue’...)

給你一個具體的例子,説明如何用matlab繪製三維圖形。 函數方程: 運行代碼: xi=-10:0.5:10;yi=-10:0.5:10; [x,y]=meshgrid(xi,yi); z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2); surf(x,y,z) 運行結果:

調用該函數對應m文件如下:

3.三維表面圖形的着色 三維表面圖實際上就是在網格圖的每一個網格片上塗上顏色。surf函數用缺省的着色方式對網格片着色。除此之外,還可以用shading命令來改變着色方式。 shading faceted命令將每個網格片用其高度對應的顏色進行着色,但網格線

       t=-2:0.1:2;

matlab如何讀取excel裏的數據,並繪製出三維的圖形.解決方法: 將Excel導入matlab,這主要用到xlsread,詳細用法請查看help xlsread。 畫圖,這個要看看,你是畫線,還是畫面。 如果畫線,請查看help plot3。 如果是畫面,請查看help surf。 MA

       [x,y] =meshgrid(t);%%表示區域網格控制,目地是為了讓x,y形成格點矩陣%%

X,Y = meshgrid(x,y); axis([55 75 0 1 0 200]); t1=0.90;%駕駛員反應時間與制動器協調時間之和 t2=0.15;%減速度的增長時間 v0=50;%前車的速度 r=5/18;%速度轉換系數,km/h轉換為m/s Z=X*r*t1+(X*r-v0*r)*t2*0.50+(X*r).^2./(2*10*Y)-(v0*r).^2.

       z=5*x.^2+8*y^3;

大概給你編了個函數,你參考一下: clear all;clc;x=-6*pi:pi/5:6*pi;y=-6*pi:pi/5:6*pi;[X,Y]=meshgrid(x,y);Z=15*(sin(X/2+pi/3)+cos(Y/2+pi/3));Z=Z.*(Z>0)+(Z

       surf(x,y,z);

求解思路: 1、用fmⅰncon最小值函數,求出L、t2 mⅰn L表達式 2、用mesh三維曲面繪畫函數,繪出其三維圖。 V0=[0:0.1:10] V1=[0:0.1:10] [ⅴ0,v1]=meshgrⅰd[V0,Ⅴ1] b=acos(L-387/1600.*ⅴ1.^2*t2^2/(t0*v0)) mesh(ⅴ1,v0,b)

       %%設置三維曲面x軸,y軸,z軸,標題對應內容及三個座標軸的取值範圍%%

plot3函數——繪製三維曲線 格式:plot3(x1,y1,z1,s1,x2,y2,z2,s2,…)%其中sn是字符串,用於指定顏色、標記符號或線型。 t=0:0.1:3*pi; x=t.^3.*sin(3*t).*exp(-t); y=t.^3.*cos(3*t).*exp(-t); z=t.^2; plot3(x,y,z) grid on 2. 繪製三維曲面 格式

       xlabel('X');

%説明下,下面的程序是已知三維座標並保存在txt文檔中,畫三維圖,和你的稍有不同,你參考下方法% clear all; clc close all temdat=load('F:test.txt'); x=temdat(:,1); y=temdat(:,2); z=temdat(:,3); minx = min(x); maxx = max(x); miny =

       ylabel('Y');

% 畫法與控制 Y = cool(7); subplot(3,2,1) bar3(Y,'detached') title('Detached') subplot(3,2,2) bar3(Y,0.25,'detached') title('Width = 0.25') subplot(3,2,3) bar3(Y,'grouped') title('Grouped') subplot(3,2,4) bar3(Y,0.5,'grouped') t

       zlabel('Z');

       title('surf三維曲面圖');

       axis([-2.5 2.5 -2.5 2.5 -5 25]);

m文件操作及運行結果如下:

先將數據按上面的方式載入,然後: p=randn(3,100);%在此我以這個p為例; x = p(1,:); y = p(2,:);z = p(3,:);%載入x,y,z的數值; xi=linspace(min(x),max(x),50); yi=linspace(min(y),max(y),50);%插值點構造; [Xi,Yi]=meshgrid(xi,yi); Zi=griddat

matlab三維圖形如何繪製 第2張

調用mesh、meshc(得到含有等值線的三維網格圖)、surfz(用於繪製包含零平面的網格線)三個函數來繪製三維曲面圖,調用格式如下:

       mesh(x,y,z,’PropertyName’,’PropertyValue’...)

       t=-2:0.1:2;

matlab如何讀取excel裏的數據,並繪製出三維的圖形.解決方法: 將Excel導入matlab,這主要用到xlsread,詳細用法請查看help xlsread。 畫圖,這個要看看,你是畫線,還是畫面。 如果畫線,請查看help plot3。 如果是畫面,請查看help surf。 MA

       [x,y] =meshgrid(t);%%表示區域網格控制,目地是為了讓x,y形成格點矩陣%%

X,Y = meshgrid(x,y); axis([55 75 0 1 0 200]); t1=0.90;%駕駛員反應時間與制動器協調時間之和 t2=0.15;%減速度的增長時間 v0=50;%前車的速度 r=5/18;%速度轉換系數,km/h轉換為m/s Z=X*r*t1+(X*r-v0*r)*t2*0.50+(X*r).^2./(2*10*Y)-(v0*r).^2.

       z=5*x.^2+8*y^3;

大概給你編了個函數,你參考一下: clear all;clc;x=-6*pi:pi/5:6*pi;y=-6*pi:pi/5:6*pi;[X,Y]=meshgrid(x,y);Z=15*(sin(X/2+pi/3)+cos(Y/2+pi/3));Z=Z.*(Z>0)+(Z

       mesh(x,y,z);

       %%設置三維曲面x軸,y軸,z軸,標題對應內容及三個座標軸的取值範圍%%

plot3函數——繪製三維曲線 格式:plot3(x1,y1,z1,s1,x2,y2,z2,s2,…)%其中sn是字符串,用於指定顏色、標記符號或線型。 t=0:0.1:3*pi; x=t.^3.*sin(3*t).*exp(-t); y=t.^3.*cos(3*t).*exp(-t); z=t.^2; plot3(x,y,z) grid on 2. 繪製三維曲面 格式

       xlabel('X');

%説明下,下面的程序是已知三維座標並保存在txt文檔中,畫三維圖,和你的稍有不同,你參考下方法% clear all; clc close all temdat=load('F:test.txt'); x=temdat(:,1); y=temdat(:,2); z=temdat(:,3); minx = min(x); maxx = max(x); miny =

       ylabel('Y');

% 畫法與控制 Y = cool(7); subplot(3,2,1) bar3(Y,'detached') title('Detached') subplot(3,2,2) bar3(Y,0.25,'detached') title('Width = 0.25') subplot(3,2,3) bar3(Y,'grouped') title('Grouped') subplot(3,2,4) bar3(Y,0.5,'grouped') t

       zlabel('Z');

       title('mesh三維網格圖');

       axis([-2.5 2.5 -2.5 2.5 -5 25]);

m文件操作及運行結果如下:

先將數據按上面的方式載入,然後: p=randn(3,100);%在此我以這個p為例; x = p(1,:); y = p(2,:);z = p(3,:);%載入x,y,z的數值; xi=linspace(min(x),max(x),50); yi=linspace(min(y),max(y),50);%插值點構造; [Xi,Yi]=meshgrid(xi,yi); Zi=griddat

matlab三維圖形如何繪製 第3張

調用contour3函數繪製三維等高線圖,調用格式如下:

     contour3(z,n);

     contour3(x,y,z,n);

編寫該函數調用的m文件,如下:

     [x,y]=meshgrid(-1.5:0.01:1.5);

     z=x.*exp(-x.^2-2*y.^2);

     contour3(x,y,z,15);

     grid off;%%關閉網格%%

     %%設置三維等高線x軸,y軸,z軸,標題對應內容及三個座標軸的取值範圍%%

     xlabel('X');

     ylabel('Y');

     zlabel('Z');

     title('contour3三維等高線圖');

     axis([-1.5 1.5 -1.5 1.5 -0.5 0.5]);

m文件操作及運行結果如下:

先將數據按上面的方式載入,然後: p=randn(3,100);%在此我以這個p為例; x = p(1,:); y = p(2,:);z = p(3,:);%載入x,y,z的數值; xi=linspace(min(x),max(x),50); yi=linspace(min(y),max(y),50);%插值點構造; [Xi,Yi]=meshgrid(xi,yi); Zi=griddat

matlab三維圖形如何繪製 第4張

特殊三維圖形調用函數:

       cylinder:三維柱面圖,sphere:三維球體 

       pie3: 三維餅狀圖,  ribbon:三維綵帶圖

matlab三維圖形如何繪製 第5張

特殊三維圖形繪製

      對上面所講的四種特殊三維圖形進行繪製,首先編寫對應的m文件如下:

      clear all;

      t=0:pi/20:2*pi;

      [x,y,z]=cylinder(1+cos(t));

      subplot(2,2,1)

      surf(x,y,z);

      axis([-3 3 -3 3 0 1]);

      title('三維柱面圖形');

      subplot(2,2,2)

     sphere;

     axis([-1 1 -1 1 -1 1]);

     title('三維球體圖形');

     subplot(2,2,3)

     a=[1 2 2.5 3 1.5];%%各部分所佔的比例%%

     b=[0 0 1 0 0];%%0,表示不單獨分離出來,1表示分離出來表示%%

     pie3(a,b);

     title('三維餅狀圖形')

     subplot(2,2,4)

     [X2,Y2]=meshgrid(-2:0.25:2);

     Z2=peaks(X2,Y2);

     ribbon(Y2,Z2);

     title('三維綵帶圖形');

m文件操作及運行結果如下:

先將數據按上面的方式載入,然後: p=randn(3,100);%在此我以這個p為例; x = p(1,:); y = p(2,:);z = p(3,:);%載入x,y,z的數值; xi=linspace(min(x),max(x),50); yi=linspace(min(y),max(y),50);%插值點構造; [Xi,Yi]=meshgrid(xi,yi); Zi=griddat

matlab三維圖形如何繪製 第6張

擴展閲讀,以下內容您可能還感興趣。

Matlab繪製三元(三維)函數圖像

解決方法:

1、根據y,z值,求出x值

2、分copy揀x>=1.5以上對應的y,z值

disp('x y z'); %顯示x>=1.5,0<y<0.5,0<z<6.0的值

3、用polt3()函數繪製圖形百,即

plot3(x,y,z)

4、具體代碼見附件。也可以通過私信上載。度追問哥你打得很辛苦,但好像不是我要的,我要的應該是一個曲線面就是f(x,y,z)=0是的曲面。你能幫我再想一下嗎?我可以加分數。

為什麼 我這個不行

clear

xa = 1.5:0.3:3.0

ya = 0:0.1:0.5

[x,y]=meshgrid(xa,ya)

z = 1/4/y+14.4/36/x-1/12-7.8/36/x/y

mesh(x,y,z)追答

ya=linspace(0,0.5,50);

za=linspace(0,6.0,50);

[y,z]=meshgrid(ya,za)

。。。。。

x0=solve(9*xi-3*xi.*y(k)-36*xi.*y(k).*z(k)+46.8*z(k)-7.8)

。。。。。

mesh(x,y,z)

Matlab GUI 繪製三維圖形,並實現使用控件使圖形旋轉

畫平面完全可以啊,百比如

>> x=-20:20;

>> y=x;

>> [x,y]=meshgrid(x,y);

>> z1=x+y+100;

>> z2=2x+y+39;

........

>> surf(x,y,z1)

>> hold on

>> surf(x,y,z2)

但是我覺得你要算體積度,表面積的話,我覺得還是用autoCAD比較問方便吧,先在autoCAD的三維界面中畫一個大的立方體,然後答每三個點就能確定一個平面,用這些平面切削那個立方體,然後 點擊那個被切削完的圖形,“工具/查詢” 就能找到體積了

怎樣使用matlab繪製三維圖形,多個波峯與波谷

看幫助中的mesh函數,解釋的很清楚

希望你能多看help,勝過市面上的任何matlab編程書籍,並且例子很詳細

只有自己去想方法,你才能真掌握

謝謝

matlab三維圖形繪製題目

clc,clear

a=-pi:0.05:pi;

r=linspace(0,15,length(a));

x=r.*sin(a);

y=r.*cos(a);

[X,Y]=meshgrid(x,y);

Z=393+(X.^2+Y.^2)*107/225;

mesh(Z)

這個試試,百希望可度以幫到你

matlab三維畫圖怎麼設置顏色

1. 雙縱座標函數plotyy

在Matlab中,如果需要繪製出具有不同縱座標標度的兩個圖形,知可以使用道plotyy函數,它能把具有不同量綱,不同數量級的兩個函數繪製在同一個座標中,有利於圖形數據的對比分析。使用格專式為:plotyy(x1,y1,x2,y2)

x1,y1對應一條曲線,x2,y2對應另一條曲線。橫座標的標度屬相同,縱座標有兩個,左邊的對應x1,y1數據對,右邊的對應x2,y2。追問是的,現在函數圖已經做出來了,想重新設置顏色,不知道該怎麼做

TAG標籤:#三維 #繪製 #圖形 #matlab #