资源描述:
《matlab 数组与绘图操作》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第11周Matlab一、二维数组二、二维数组与绘图一、二维数组二维数组是由实数或复数排列成矩形而构成的,从数据结构上看,二维数组和矩阵没有什么区别。当二维数组带有线形变换含义时,该二维数组就是矩阵(matrix)。1、二维数组的输入方法(1)在键盘上输入下列内容A=[1,2,3;4,5,6;7,8,9](2)按【Enter】键,指令被执行。(3)在指令执行后,MATLAB指令窗中将显示以下结果:A=123456789说明:直接输入矩阵时,每行元素用空格或逗号分隔,矩阵行用分号分隔,整个矩阵放在方括号里,标点符号一定要在英文状态下输入。2、由一维数组创建二维数组A=[1,3
2、,5]B=[2,4,6]C=[3,5,7]D=[A;B]E=[A;B;C]F=[A’,B’]G=[A’,B’,C’]3、由函数创建二维数组zeros(m,n)生成一个m行n列的零矩阵,m=n时可简写为zeros(n)ones(m,n)生成一个m行n列的元素全为1的矩阵,m=n时可写为ones(n)eye(m,n)生成一个主对角线全为1的m行n列矩阵,m=n时可简写为eye(n),即为n维单位矩阵magic(n)生成魔方数组,各行、列之和=(1+2+……+n2)/ndiag(v,k)v是向量,diag(v)产生以v为第k条对角线的矩阵,默认k=0rand(m,n)产生0~1
3、间均匀分布的随机矩阵m=n时简写为rand(n)randn(m,n)产生均值为0,方差为1的标准正态分布随机矩阵m=n时简写为randn(n)diag(v,k)练习:在matlab中生成二维数组A=000000000111111111B=1000020000300004-40000-30000-20000-14、二维数组操作函数cat(dim,A,B)把“大小”相同的若干数组,沿“指定维”方向,串接成高维数组。行(dim=1)列(dim=2)diag(A,k)A是矩阵,则diag(A,k)返回A的第k条对角线向量,默认k=0flipud(A)以数组“水平中线”为对称轴,交
4、换上下对称位置上的数组元素fliplr(A)以数组“垂直中线”为对称轴,交换左右对称位置上的数组元素kron(A,B)按Kronecker乘法规则(直积)产生“积”数组二维数组操作函数repmat(A,m,n)按指定的“行数、列数”铺放模块数组,以形成更大的数组rot90(A,k)逆时针旋转k×90度reshape(A,m,n)在总元素数不便的前提下,改变数组的“行数、列数”tril(A)提取一个矩阵的下三角部分triu(A)提取一个矩阵的上三角部分5、二维数组的转置运算A.’:转置A’:共轭转置6、两个维数相同的二维数组之间的数组运算A+B:加,对应位置的数组元素相加
5、A-B:减,对应位置的数组元素相减A.*B:点乘,对应位置的数组元素相乘A./B:右点除,对应位置的数组元素相除A.B:左点除A.^B:点幂,对应位置的数组元素做幂运算7、二维数组的与标量的运算A+c:A的每个元素加cA-c:A的每个元素减cA.*c:点乘,A的每个元素乘cA./c:右点除,A的每个元素除cA.c:左点除,c除A的每个元素A.^c:点幂,A的每个元素做幂运算c.^A:点幂,c做幂运算8、函数作用在二维数组上的运算规则9、引用二维数组的元素1、A(r,c):“全下标”标识:即指出是“第几行,第几列”的元素2、A(ind):“单下标”标识:LinearI
6、ndex只用一个下标来指明元素在数组中的位置:把二维数组的所有列,按先左后右的次序,首尾相接排成“一维长列”,然后,自上往下对元素位置进行标号。3、“单下标”与“全下标”的转化:全下标→单下标:ind=sub2ind(siz,r,c)单下标→全下标:[r,c]=ind2sub(siz,ind)二维数组的单个元素的引用和赋值X=magic(6)单个元素寻访X(2,3)X(5,5)X(16)单个元素的赋值X(2,3)=0X(5,5)=7X(16)=8二维数组的子数组的引用和赋值A(r,:)由A的“r行”和“全部列”上的元素组成A(:,c)由A的“全部行”和“c列”上的元素组成
7、A(r,c)由A的“r行”和“c列”上的元素组成A(r,c)=B对子数组A(r,c)进行赋值:B的“行、列”必须与A(r,c)的“行、列”相同(1)使用“双下标”方式A(:)由A的各列按自左到右的次序,首尾相接而生成的“一维长列”数组A(s)引用A中由一维数组s指定的元素。s若是行(或列),则A(s)就是长度相同的行(或列)A(:)=D(:)全元素赋值方式。结果:保持A的“行宽、列长”不变。条件:A、D两个数组的总元素相等,但“行宽、列长”不一定相同A(s)=B对A的部分元素重新赋值。结果:保持A的“行宽、列长”不变。条件:s