matlab 构造n维矩阵,Matlab基础之高维矩阵创建和应用

前言:

高维矩阵在Matlab里是指维数大于等于3的矩阵,我们可以把三维矩阵比作一本书,其中行、列和页数构成了3维,在很多领域里有着特别的额应用。

一、创建高维矩阵

1.坐标点创建

定义一个3*3*3(3维)矩阵,先把每页的内容(行和列)确定好,在确定页数:

a(:,:,1)=[1 2 3;4 5 6;7 8 9];

a(:,:,2)=[10 20 30;40 50 60;70 80 90];

a(:,:,3)=[100 200 300;400 500 600;700 800 900];

disp(' ');

a

%%%%%

result:

a(:,:,1) =

1 2 3

4 5 6

7 8 9

a(:,:,2) =

10 20 30

40 50 60

70 80 90

a(:,:,3) =

100 200 300

400 500 600

700 800 900

2.函数生成法

函数有zeros(),randn()高斯随机阵,rand()随机阵和ones()全部为1的矩阵

比如: zeros(2,3,2) 是生成全部为0的3维矩阵

ans(:,:,1) =

0     0     0

0     0     0

ans(:,:,2) =

0     0     0

0     0     0

3.拼接函数法

有repmat(),reshape(),cat()等

a=1:18;

reshape(a,3,3,2)

ans(:,:,1) =

1     4     7

2     5     8

3     6     9

ans(:,:,2) =

10    13    16

11    14    17

12    15    18

二、三维绘图

三维相比较其他高位有着更广泛的应用

1.plot3()

t=0:0.1:15;

x=exp(-0.2*t).*cos(2*t);%矩阵之间对应数的相乘为点乘,不是矩阵的相乘

y=exp(-0.2*t).*cos(2*t);

subplot(2,1,1);

plot3(x,y,t);

subplot(2,1,2);

plot(x,y);

0818b9ca8b590ca3270a3433284dd417.png

2.surf()

x=1:10;

y=1:10;

z=zeros(10,10)%分配内存

for i=1:10

for j=1:10

z(i,j)=exp(-0.5*(x(i)^2+y(j)^2));

end

end

surf(x,y,z);

0818b9ca8b590ca3270a3433284dd417.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值