matlab作圖問題 P是n 3矩陣,每行都是資料點

2021-05-06 04:33:55 字數 6244 閱讀 2775

1樓:匿名使用者

% 你說的情況是畫三維曲線:

x=p(:,1);

y=p(:,2);

z=p(:,3);

plot3(x,y,z)

如何建立matlab三維矩陣?請給出乙個matlab三維矩陣建立的具體過程。

2樓:匿名使用者

在matlab中習慣性的會將二維陣列中的第一維稱為「行」第二維稱為「列」,而對於三維陣列的第三位則是習慣性的稱為「頁」。在matlab中將三維及三維以上的陣列統稱為高維陣列,三維陣列也是高階運算的基礎

比如說,我的資料是四列的,分別表示座標:x,y,z,和對應點的溫度值!

x  y   z    t

1  1  1  15

2  2   2  20

3  3   3  22

4  4   4   25

5   5   5   23

用a(a,b,c)=b的方法來賦值,a=[1 2 3] 用a(:,:,2)=[2 3 4]就可以表示另乙個面

但這個方法很麻煩,

通常情況下用三維矩陣的時候先初始化好,確定要用的三維矩陣是多大的。

西洋棋的棋盤(8*8)可以看作二維的,而每乙個格仔上可以放乙個棋子,用數字1到6和7到12對應兩方6類棋子,0表示不放棋子,那麼乙個8*8的矩陣,各元素是0--12,就可以表示一盤棋。現在有5個盤棋,那麼就有乙個三維矩陣(8*8*5),顯然矩陣中每乙個元素都是0到12中的乙個數。

用a表示這個三維矩陣,那麼a(:,:,1)表示第1個棋盤,a(:,:,2)表示第2個棋盤。。。。依次類推。

用matlab作圖,知球面上一些點的座標(x,y,z)和相應的值p,怎樣畫出三維立體圖 10

3樓:

matlab中可以用到的函式有:

surf,su***ce等

呼叫語法:

surf(z)surf(z,c)surf(x,y,z)surf(x,y,z,c)

su***ce(z) su***ce(z,c) su***ce(x,y,z) su***ce(x,y,z,c)

su***ce示例:

[x,y] = meshgrid(-2:0.2:2,-2:0.2:2);

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

figure

su***ce(x,y,z);

view(3)

上述**可得到如下圖:

注意;surf(x,y,z,c)

su***ce(x,y,z,c)

這兩個函式中的c代表的是對這個面上色所使用的顏色值,可以進行指定,比如用你的p值來指定。

用matlab畫三維圖,是乙個長度不規則的矩陣,出現以下錯誤,求大神解答~感激不盡!!!

4樓:匿名使用者

矩陣沒有元素的地方用0補上,你矩陣最後一行只有六個元素,你是不是少輸了乙個數,沒有的話用零補上。

5樓:上海皮皮龜

維數不相符,可能z與x,y不符???

6樓:

請問你這個問題解決了嗎?我也是不規則的矩陣要在三維座標中作圖

請問如何用matlab畫三維點,已知x,y,z的座標,在三維座標系上顯示

7樓:憤進青年

例如 :

x=1,y=2,z=3;

**就是:

plot3(1,2,3,'*')

grid on%加網格

8樓:

plot3(x,y,z,'*')

知道xy z座標怎麼在matlab中生成三維圖??

9樓:小小歐平兒

1、首先開啟matla軟體,準備好要做三維圖的資料,有xyz和屬性資料。

2、根據資料分布確定各點之間的間隔,並使用griddata命令將屬性資料也進行插值,這裡僅作為例子,我們使用預設的插值方法。

3、然後可以嘗試使用plot3命令,可以看到圖形以列為單位繪製出了多條線。當然,如果這不是想要的圖形,接下來可以使用其他命令。

4、先試試contour3命令,這與contour命令相同,不過生成的等值線是三維分布。

5、下面介紹surf和surfc命令,預設的命令如下:surf(xx,yy,zz),figure,surfc(xx,yy,zz)。

6、當然,我們也可以對影象稍加處理。我們以surf生成的影象為例。可以往裡面加入圖名,xyz座標屬性:

title('水深圖');xlabel('經度');ylabel('緯度');zlabel('深度')。

8、去掉座標軸之後,可以最終得到如下圖形,當然也可以使用旋轉命令調整到合適的角度進行展示。

10樓:匿名使用者

你想要散點的 還是 曲面的?

11樓:送葉風

(一)三維線圖

plot3 —— 基本的三維圖形指令

呼叫格式:

plot3(x,y,z) —— x,y,z是長度相同的向量

plot3(x,y,z) —— x,y,z是維數相同的矩陣

plot3(x,y,z,s) —— 帶 開關量

plot3(x1,y1,z1,』s1』, x2,y2,z2,』s2』, …)

二維圖形的所有基本特性對三維圖形全都適用。 定義三維座標軸

大小axis([xmin xmax ymin ymax zmin zmax ])

grid on(off) 繪製三維網格

text(x,y,z,『string』) 三維圖形標註

(二) 三維餅圖

pie3([4 3 6 8 9])

(三)三維多邊形

fill3 = fill —— 三維多邊形的繪製和填色與二維多邊形完全相同

(四)三維網格圖

mesh —— 三 維網線繪圖函式

呼叫格式:

mesh(z) —— z為n×m的矩陣,x與y座標為元素的下標

mesh(x,y,z) —— x,,y,z 分別為三維空間的座標位置

(五)三維曲面圖

surf —— 三維曲面繪圖函式,與網格圖看起來一樣

與三維網線圖的區別:

網線圖:線條有顏色,空擋是 黑色的(無顏色)

曲面圖:線條是黑色的,空擋有顏色(把線條之間的空擋填充顏色,沿z軸按每一網格變化

surfc(x,y,z) — 帶等高線的曲面圖

[x,y,z]=peaks(30);surfc(x,y,z)

surfl(x,y,z) —— 被光照射帶陰影的曲面圖

[x,y,z]=peaks(30);surfl(x,y,z)

cylinde(r,n) — 三維柱面繪圖函式

r 為半徑;n為柱面圓周等分數

有個x、y、z三組資料,在matlab中怎麼才能生成乙個對應的三維陣列? 10

12樓:武陵笑天

要用x,y,z畫曲面嗎?如果是,一般要求x與y是網格。用meshgrid生成。z的規格(行數與列數)與x,y的規格相同。

13樓:狂靚影

下x,y,z的資料是啥形式的麼。是向量,矩陣還是什麼?

14樓:

舉例:>> x = rand( 3 )

x =0.0326 0.6692 0.

46070.5612 0.1904 0.

98160.8819 0.3689 0.

1564>> y = rand( 3 )

y =0.8555 0.1909 0.

12060.6448 0.4283 0.

58950.3763 0.4820 0.

2262>> z = rand( 3 )

z =0.3846 0.2904 0.

82440.5830 0.6171 0.

98270.2518 0.2653 0.

7302>> mat3 = cat( 3, x, y, z )mat3(:,:,1) =

0.0326 0.6692 0.

46070.5612 0.1904 0.

98160.8819 0.3689 0.

1564mat3(:,:,2) =

0.8555 0.1909 0.

12060.6448 0.4283 0.

58950.3763 0.4820 0.

2262mat3(:,:,3) =

0.3846 0.2904 0.

82440.5830 0.6171 0.

98270.2518 0.2653 0.

7302

用matlab如何在三維座標圖中標出幾個點

15樓:匿名使用者

hold on

plot3(0,0,0,'r*')

plot3(0,0,1,'r+')

hold off

matlab(矩陣實驗抄室)是matrix laboratory的縮襲

寫,是一款由美國baithe mathworks公司出品的商du業數學軟體。

zhimatlab是一種用於算dao法開發、資料視覺化、資料分析以及數值計算的高階技術計算語言和互動式環境。除了矩陣運算、繪製函式/資料影象等常用功能外,matlab還可以用來建立使用者介面及與呼叫其它語言(包括c,c++和fortran)編寫的程式。

16樓:匿名使用者

hold on

plot3(0,0,0,'r*')

plot3(0,0,1,'r+')

hold off

matlab知道三個三維空間點的座標,如何繪製經過這三個點的園,要求顯示出空間直角座標系。急,**坐等! 5

17樓:匿名使用者

%p1=[x1,y1,z1];

%p2=[x2,y2,z2];

%p3=[x3,y3,z4];

%p=[p1;p2;p3];

%   | x1  y1  z1 |

%p =| x2  y2  z2 |

%   | x3  y3  z3 |

p=rand(3);%三點的xyz座標正好是合拼成3x3的矩陣,這裡用3x3的隨機矩陣測試

%利用隨機數生成3個點的座標

%實際使用中,將已知的三點座標按上述順序排成p矩陣既可以了

a=diff(p);

n=cross(a(1,:),a(2,:)); %n是三點組成的平面的法向量

if all(n==0),error('not a ********');end %如果n是0向量,表示三點共線

a=[a;n];                  %從三點座標很容易求得三點平面所在的方程

b=sum(diff(p.^2),2)/2;    %而外接圓心都各點距離相等,又可以列幾條方程

b=[b;dot(n,p(1,:))];      %將方程聯立可以解得圓心座標cc

cc=(a\b)';                %這裡有個複雜的推導過程,

%最終結果cc(1) cc(2) cc(3)就是圓心的x,y,z座標

r=sqrt(sum((cc-p(1,:)).^2)); %點cc到任意一點的距離都可以求出圓的半徑;

c1=p(1,:)-cc;                    %第一點到圓心的向量c1

c2=cross(c1,n./sqrt(sum(n.^2))); %c2是三點所在平面內與c1垂直的向量

theta=(0:360)';%畫圓所需的角度取樣間隔,0到360度,間隔可以自己根據需要調整

cirxyz=repmat(cc,[length(theta) 1])+cosd(theta)*c1+sind(theta)*c2;

%cirxyz是361x3的矩陣,3列分別是圓上每點的x,y,z座標

plot3(p(:,1),p(:,2),p(:,3),'ko');grid on;hold on; %畫出三點

plot3(cirxyz(:,1),cirxyz(:,2),cirxyz(:,3),'r-');hold off; %畫出圓

以下是某次空間隨機三點和他們的外接圓影象

matlab符號等式化簡問題,matlab 符號等式化簡問題

syms m m g u fn th fn solve tan th m m g u fn sin th fn cos th m m fn sin th u fn cos th fn fn m m g tan th sin th m tan th sin th m tan th u cos th m...

matlab影象旋轉問題,matlab中關於影象旋轉問題

rotate,旋轉影象 你可以看看下面這個鏈結 還有,如果你認識那個叫 楊華楊華軍 的人,麻煩催一下讓他把那個問題快點解決掉,別老吊著死不要臉。matlab中關於影象旋轉問題 這段 的功能是對通過雙線性插值對影象進行旋轉變換。迴圈體前面的 主要是計算旋轉後影象的大小以及一些輔助資料,迴圈體中對旋轉變...

MATLAB問題,高分懸賞乙個MATLAB問題,高分懸賞!

a reshape 1 9,3,3 將1到bai9這九個數重寫 du成乙個3 3的矩陣 zhi,一dao列一列來寫 a 5,5 111 矩陣a的第5行第5列個元素為回111 a 6 222 矩陣a的所有行答第六列個元素為222 aa a 1 6,1 6 讓矩陣aa的所有行為a的所有行,第一到第12列...