懂視移動端 視頻1 視頻21 視頻41 視頻61 視頻文章1 視頻文章21 視頻文章41 視頻文章61 視頻擴展1 視頻擴展6 視頻擴展11 視頻擴展16 文章1 文章201 文章401 文章601 文章801 文章1001 資訊1 資訊501 資訊1001 資訊1501 標簽1 標簽501 標簽1001 關鍵詞1 關鍵詞501 關鍵詞1001 關鍵詞1501
當前位置: 首頁 - 手機 - 正文

matlab怎么繪制三維曲面圖

來源:懂視網(wǎng) 責編:小OO 時間:2020-04-11 02:04:29
導讀matlab怎么繪制三維曲面圖,1、plot3三維曲線圖。啟動MATLAB,新建腳本(.m文件),在腳本編輯區(qū)輸入以下代碼,然后保存運行后,看到三維曲線圖。closeall;clearall;clcz=linspace(0,10,101);x=sin(z);y=cos(z);plot3(x,y,z,g,LineWidth,2)holdonplot3(x,y,z不論是在科研工作中,還是在實際

1、plot3三維曲線圖。 啟動MATLAB,新建腳本(.m文件),在腳本編輯區(qū)輸入以下代碼,然后保存運行后,看到三維曲線圖。 close all;clear all;clc z=linspace(0,10,101); x=sin(z);y=cos(z); plot3(x,y,z,'g','LineWidth',2) hold on plot3(x,y,z

不論是在科研工作中,還是在實際工程應用中,常常會遇到三維或者更數(shù)據(jù)的處理,并且將處理的數(shù)據(jù)在圖形中顯示出來,MATLAB平臺也提供了很多關于三維圖形繪制的函數(shù),利用這些函數(shù)可以很方便的實現(xiàn)三維圖形的繪制

材料/工具

電腦MATLAB

如果不是網(wǎng)格點數(shù)據(jù),那么請用griddata函數(shù)插值到網(wǎng)格點數(shù)據(jù),然后再surf 如: data=[ 1 1 5.14 1 2 9.56 1 3 8.66 2 1 12.55 2 2 10.51 2 3 2.7 3 1 22.03 3 2 22.97 3 3 32.94 4 2 55.58 4 3 24.55 ]; %第一列為x,第二列為y,第三列為z [xx,yy

方法

首先,打開MATLAB

三維曲面圖,可以用surf或mesh命令; 三維曲面圖,案例: xx=linspace(-1,1,50); yy=linspace(-2,2,100); [x,y]=meshgrid(xx,yy); z=x.^2+2*y.^2; surf(x,y,z) 結果: 參考:http://zhidao.baidu.com/question/304779250949044964 希望對你有幫

1、點擊“File”2、選擇“New” 3、點擊“Script”

樓主給的表達式和數(shù)據(jù)范圍是不是有問題? 1、就現(xiàn)在給的表達式來說,i是直接作為系數(shù)乘到z里面的,曲面無非值大小不同而已,不可能有別的區(qū)別。 2、表達式中有23251/x,x不能從0開始。 3、對于比較小的x,23251/x很大,再求e^(23251/x)就很容易

調(diào)用surf(得到含有等高線的三維曲面圖)來繪制三維曲面圖,調(diào)用格式如下:

看這些點是不是很規(guī)矩的網(wǎng)格點的數(shù)據(jù)。 如果是網(wǎng)格點數(shù)據(jù),適當做點重組,就可以用surf函數(shù)得到曲面圖。 如果不是網(wǎng)格點數(shù)據(jù),那么請用griddata函數(shù)插值到網(wǎng)格點數(shù)據(jù),然后再surf 如: data=[ 1 1 5.14 1 2 9.56 1 3 8.66 2 1 12.55 2 2 10.51 2

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

“墨西哥帽子”:由函數(shù)z=sin(r)/r確定曲面,其中r.^2=x.^2+y.^2 (-ay=[-8:0.5:8]; >>[X,Y]=meshgrid(x,y); >>r=sqrt(X.^2+Y.^2); >>Z=sin(r)./r; >>mesh(X,Y,Z) 或者 >>x=[-8:0.5:8]; >>y=[-8:0.5:8]; >>[X,Y]=meshgrid(-8:0.5:8); >>r=sqrt(X.^2

調(diào)用該函數(shù)對應m文件如下:

1 首先,打開MATLAB 2 1、點擊“File” 2、選擇“New” 3、點擊“Script” 3 調(diào)用surf(得到含有等高線的三維曲面圖)來繪制三維曲面圖,調(diào)用格式如下:surf(x,y,z,’PropertyName’,’PropertyValue’)調(diào)用該函數(shù)對應m文件如下:t=-2:0.1:2;[x,y] =meshg

t=-2:0.1:2;

data=xlsread('文件名.xlsx'); x=data(:,1); y=data(:,2); z=data(:,3); [X,Y,Z]=griddata(x,y,z,linspace(min(x),max(x))',linspace(min(y),max(y)),'v4'); figure; mesh(X,Y,Z);

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

3組數(shù)據(jù)就是曲面的x,y,z坐標,程序根據(jù)要求不同而異,程序可這樣寫: [x,y,z]=meshgrid(linspace(-5,5)); val=(x.^2 + (9/4)*y.^2 + z.^2 - 1).^3 - x.^2.*z.^3 - (1/9)*y.^2.*z.^3;%isosurface(x,y,z,val,0) p = patch(isosurface(x,y,z,val,0)

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

從你描述的問題可知,你的數(shù)據(jù)表中緯度相當于Y,經(jīng)度相當于X坐標,表中別的值相當于Z坐標,這樣可畫出三維圖形。但是,用經(jīng)緯度坐標時,一般是畫地圖的。你沒說清,是用一般的直角坐標畫圖呢,還是用地圖的畫法呢?請補充下。

surf(x,y,z);

x=1:10;y=16:25; [X,Y]=meshgrid(x,y); %你可以自己看一下X,Y長什么樣子,大概就是(X(i,j),Y(i,j))組成了所有(x,y)的組合。 %然后把z算出來,比如z=X.*Y就是說z=z(x,y)=xy mesh(X,Y,z)%或者surf(X,Y,z)或者其他函數(shù),看你想要什么樣的圖。 參看M

%%設置三維曲面x軸,y軸,z軸,標題對應內(nèi)容及三個坐標軸的取值范圍%%

這個問題已經(jīng)好幾年了,我也幾年沒在知道答題,看到這個問題又有了答題沖動。。。。 這4行代碼,第一行生成了網(wǎng)格數(shù)據(jù),賦值給了X、Y兩個變量。-3:.125:3表示范圍為-3到3,間隔0.125; 第二行用了一個內(nèi)置快捷函數(shù)peaks(),這個函數(shù)的作用是根據(jù)

xlabel('X');

方法:將兩組數(shù)據(jù)運用擬合的方法得到關于第三組數(shù)據(jù)的回歸方程,通過回歸方程和meshgrid擴充數(shù)據(jù)點。 工具:Matlab2011a 實例: (1)數(shù)據(jù)列: K/NM/° C/NMS/° At/NM 10 0.1 128 20 0.2 260 30 0.3 393 40 0.4 531 50 0.5 672 60 0.6 815 70 0.7

ylabel('Y');

你的目標函數(shù)有點問題,改成 p = @(X) mvnpdf(X,mu_dist1,cov_dist1).*(normcdf(Nf,X(:,1),X(:,2))).^r.* (1-normcdf(Nf,X(:,1),X(:,2))).^(n-r)*factorial(n)/(factorial(r)*factorial(n-r)); 就可以作圖了我得到的圖是這樣的 surf一般接受

zlabel('Z');

知道一系列點的坐標如下(1.486,3.059,0.1);(2.121,4.041,0.1);(2.570,3.959,0.1);(3.439,4.396,0.1);(4.505,3.012,0.1);(3.402,1.604,0.1);(2.570,2.065,0.1);(2.150,1.970,0.1);(1.794,3.059,0.2);(2.121,3.615,0.2);(2.5

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

編寫mymesh()函數(shù): function mymesh() temdat=load('D:test.txt'); if temdat== -1 ('Error opening the file'); end figure; h=plot3(temdat(:,1),temdat(:,2),temdat(:,3)); set(h,'linestyle','none') hold on; grid on; [x,y]=meshgrid(lin

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

這種圖形是要有參數(shù)的,并且用三維的函數(shù)進行繪制,所以,必須根據(jù)自己的參數(shù)來進行設置。

點擊這個綠色的按鈕,如圖

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

此時,三維曲面就畫好了

X(1) = 29*pi/180:0.5*pi/180:39*pi/180; X(2) = 62*pi/180:0.5*pi/180:75*pi/180; [Y1,Y2] = meshgrid(X(1),X(2)); % 生成畫曲面需要的格點 Z = f(Y1,Y2); % 計算格點對應的函數(shù)值,如果還有關于alpha取平均這件事,你是可以寫在函數(shù)f內(nèi)部進行

擴展閱讀,以下內(nèi)容您可能還感興趣。

MATLAB怎么畫出一個平面與一個三維曲面的交線,三維曲面是由散點圖畫出來的

從你描述的問題可知,你的數(shù)據(jù)表中緯度相當于知Y,經(jīng)度相當于X坐標,表中別的值相當于Z坐標,這樣可畫出三維圖形。但是道,用經(jīng)緯度回坐標時,一般是畫地圖的。你沒說清,是用一般的直角坐標畫圖呢,還是用地圖的畫法呢?請補答充下。追問用地圖的畫法

matlab繪制三維曲面圖的問題

x=1:10;y=16:25;

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

%你可以自己百看一下X,Y長什么樣度子,大概就是(X(i,j),Y(i,j))組成了所有問(x,y)的組合。

%然后把z算出來答,比如z=X.*Y就是說z=z(x,y)=xy

mesh(X,Y,z)%或者回surf(X,Y,z)或者其他函數(shù),看你想要什么樣的圖。

參看MATLAB里meshgrid、mesh這些函數(shù)的答幫助。追問z與x,y的關系也不是某種明確的函數(shù)關系,就是一組(x,y)值都對應一個確定的z值,(x,y)的組合有10x10組,所以也有100個z值,我就是想問,除了上面我說的方法,有什么更簡單的方法能用這100組數(shù)畫出曲面圖。

主要是數(shù)據(jù)我不想那樣幾乎一個個的輸入,想問一下有沒有比較簡單的方法,謝謝追答如果對z(x,y)啥都不知道大概就只能輸入數(shù)據(jù)了。如果你已經(jīng)有原式數(shù)據(jù),可以考慮讀到MATLAB里再處理一下(比如reshpae()神馬的)變成X,Y那種樣子。

請教MATLAB繪制三維曲面圖的問題

這個問題已經(jīng)好幾年了,知我也幾年沒在知道答題,看到這個問題又有了答題沖動。。。。

這4行代碼,第一行生成了網(wǎng)格數(shù)據(jù),賦值給了X、Y兩個變量。-3:.125:3表示道范圍為-3到3,間隔0.125;

第二行用了一內(nèi)個內(nèi)置快捷函數(shù)peaks(),這個函數(shù)的作用是根據(jù)輸入的X、Y得到Z的數(shù)據(jù),得到有峰有谷這樣的一個圖形。直接運行peaks(50)就能畫出一個圖;

第三行meshc()是一個繪圖函數(shù),比mesh()多了一個等高線。將前面得到的X、Y、Z三個參數(shù)傳入就得到了你附的圖;

第四行設置坐容標軸范圍,6個數(shù)分別是x軸、y軸、z軸的取值范圍。去掉這行也能畫出圖。

如何使用MATLAB對任意三維數(shù)據(jù)繪制三維曲面

方法:將兩組數(shù)據(jù)運用擬合的方法得到關于第三組數(shù)據(jù)的回歸方程,通過回歸方程和meshgrid擴充數(shù)據(jù)點。

工具:Matlab2011a

實例:

(1)數(shù)據(jù)列:

K/NM/° C/NMS/° At/NM

10 0.1 128

20 0.2 260

30 0.3 393

40 0.4 531

50 0.5 672

60 0.6 815

70 0.7 954

80.27 0.8 1102

90 0.9 1251

100 1 1406

(2)繪制K_C_At之間的三維曲面

(3)步驟:

1)直接在matlab的command窗口導入數(shù)據(jù)

2)編寫m.文件

源文7a686964616fe78988e69d8331333363376431件如下:

%%************Three Dimensional**************%%

%%輸入數(shù)據(jù)

%%剛度K,阻尼C與扭簧峰值差Pt間的三維曲面

%x1:輸入剛度K,單位NM/°

%x2:輸入阻尼C,單位NMS/°

%y :扭簧振幅差Pt

%%*******************************************

x1=data(:,1);%c數(shù)據(jù)列

x2=data(:,2);%k數(shù)據(jù)列

y=data(:,3);%At數(shù)據(jù)列

%%********************************************

%將多元分線性回歸轉化為線性回歸方程求解

X=[ones(size(x1)) x1.*x1 x1 x2.*x2 x2 x1.*x2];

[b,bint,r,rint,stats]=regress(y,X,0.05);

b

%三維散點圖分布

scatter3(x1,x2,y,'filled')

hold on;

%%*********************************************

%數(shù)據(jù)差值

x1fit=10:1:109;

x2fit=0.1:0.009:1;

%%**********************************************

[xi,yi]=meshgrid(x1fit,x2fit);

%非線性擬合方程

zi=b(1)+b(2)*xi.*xi+b(3)*xi+b(4)*yi.*yi+b(5)*yi+b(6)*xi.*yi;

%繪制三維曲面

meshc(xi,yi,zi);

hold on;

%調(diào)整視角

% view(140,30)

%%************************************************

%加注坐標

xlabel('stiffness/(NM/°)');ylabel('damping/(NMS/°)');

zlabel('amplitude of aberration with torque/(NM)');

figure(2)

%殘差分析

rcoplot(r,rint);

matlab中怎么畫不出三維曲面圖

你的目標函數(shù)有點問題,改成

p = @(X) mvnpdf(X,mu_dist1,cov_dist1).*(normcdf(Nf,X(:,1),X(:,2))).^r.*...

(1-normcdf(Nf,X(:,1),X(:,2))).^(n-r)*factorial(n)/(factorial(r)*factorial(n-r));

就可以作圖了我得到的圖是這樣的

surf一般接受二維矩陣的輸入,默認矩陣中位置相鄰的點是相互連接的

假如你有X,Y,Z三個對應的大小一致的二維矩陣

(1,1)-(1,2)-......

       |               |

(2,1)-(2,2)-.......

      |                |

......................................   

surf默認圖中的四點是按照矩陣中的下標位置相連的

x和y數(shù)據(jù)可以是不等間距的,但是數(shù)據(jù)必須e799bee5baa6e4b893e5b19e31333335323464是單調(diào)遞減或遞增的

那樣才能保證在數(shù)組中的位置相鄰的數(shù)據(jù)所表示的點在空間中也是相連的

而有隨機數(shù)產(chǎn)生的x y數(shù)組位置是不確定的,

而用surf畫圖的時候,還是按數(shù)組位置去連接各個節(jié)點,

所以得到的曲面圖是亂七八糟的你可以試試surf(rand(10),rand(10),rand(10))

曲面是慘不忍睹的

要畫這種隨機散點的圖,通常用三角形網(wǎng)格畫分法

首先要根據(jù)數(shù)據(jù)點劃分三角網(wǎng)格,確保每個三個網(wǎng)格是有最近鄰的三個點組成

這樣才能保證畫曲面的時候,近鄰的點能夠被連接在一起

其實用matlab實現(xiàn)三角網(wǎng)格的劃分和畫曲面圖也不麻煩

假如你現(xiàn)在有了隨機產(chǎn)生的數(shù)組x和y

他們只需要是nx1的數(shù)組就可以了,不需要矩陣

然后利用目標函數(shù)p可以得到 z,也是nx1的數(shù)組

tri=delaunay(x,y) ;   %根據(jù)x,y數(shù)據(jù)劃分三角網(wǎng)格

trisurf(tri,x,y,z);         %利用三角網(wǎng)格畫曲面圖

根據(jù)你的數(shù)據(jù)和目標函數(shù),用1000個隨機點

x=rand(1000,1)*2;

ry=rand(1000,1)*0.4;

rz=p([rx ry]);

tri=delaunay(rx,ry) ;   

trisurf(tri,rx,ry,rz);

shading interp;

隨機得到圖片

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:0731-84117792 E-MAIL:11247931@qq.com

  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

iphone語言備忘錄的錄音音頻怎么導出傳到電腦 新版百度地圖該如何查經(jīng)緯度 該怎么查詢開戶行 .step文件應該怎么打開 如何修改個人微信號 公司安裝網(wǎng)絡中添加打印機或打印機感嘆號是什么 如何把電腦錄制的歌上傳到全民K歌里面去 怎樣打開caj文件 勇敢愛手勢舞教程 wps如何徹底去掉修訂 聯(lián)想拯救者鍵盤燈該如何開 如何隱藏桌面所有圖標 12306身份核驗時間,待檢驗用戶如何通過 怎么刪除word中的水印 聯(lián)想筆記本出現(xiàn) 已接通電源但未充電 解決方法 怎么在win10中設置ie瀏覽器 支付寶應該怎么解綁銀行卡 如何在word的小方框里打對勾 win10系統(tǒng)怎么使開機破8秒 IE瀏覽器下載的文件在哪里?如何找 解決“IME已禁用”最新最有效的方法 wow7.3射擊獵PVE副本dps天賦加點(阿古斯) 怎么統(tǒng)計word文檔里的字數(shù) 教大家解析包時出現(xiàn)問題應該怎么解決 wps表格宏如何啟用?如何開啟宏 excel表格中怎樣對成績排序 怎么在excel中進行條件計數(shù) 如何使用番號或者名字下載電影 微信電腦版該如何截圖 vivo手機該如何導入通訊錄 微擎微贊本地模塊和模板的安裝步驟! 怎么開啟微信、支付寶的二維碼到賬語音提醒 怎樣才能使excel文字居中 怎么快速關閉當前打開的網(wǎng)頁 steam該如何更改郵箱 win7系統(tǒng)運行命令該如何打開 Win7系統(tǒng)打開電腦控制面板的三種方法 excel里斜線表頭該如何做 華為手機情景智能如何關閉 Steam游戲下載時提示寫入磁盤錯誤
Top