您好,欢迎来到年旅网。
搜索
您的当前位置:首页matlab单元数组与结构体数组

matlab单元数组与结构体数组

来源:年旅网
在前面章节已经介绍了几种MATLAB7.0常用的数据类型。本章将介绍两种特殊的数据类型,即单元数组和结构体数组,这两种数据类型的特点是允许用户将不同但是相关的数据类型集成到一个单一的变量。这样,因为相关的数据可以通过一个单元数组或是结构体的数组进行组织和访问,数据的管理就变得相对要容易一些。

>> eye(4) ans =

1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 • >> c(1,1)={'abc'}; • >> c(1,2)={eye(2)}; • >> c(2,1)={[1 2;3 4]}; • >> c(2,2)={[1 2]}; • >> c

• c =

• 'abc' [2x2 double] • [2x2 double] [1x2 double]

• ======================================================

>> c{1,1}='abc'; >> c{1,2}=eye(2); >> c{2,1}=[1 2;3 4]; >> c{2,2}=[1 2]; >> c c =

'abc' [2x2 double]

[2x2 double] [1x2 double]

• 上面的单元数组也可由下面的方法直接得到: • >> c={'abc',eye(2);[1 2;3 4],[1 2]} • c =

• 'abc' [2x2 double]

单元数组的左标志法生成 单元数组的右标志法生成 Eye 单位矩阵 • [2x2 double] [1x2 double] • 使用cell函数生成单元数组: • cell(n)生成一个n*n阶的置空单元数组;

• cell(m,n) 或cell([m,n])生成一个m*n阶的置空单元数组; >> a=cell(2) a =

[] [] [] [] >> a{1,1}=[1 2;2 2] a =

[2x2 double] [] [] []

>> a{1,2}=['MATLAB7.0'] a =

[2x2 double] 'MATLAB7.0' [] [] …… • 单元数组的显示有以下几种方式 • 一是直接在命令窗口中输入单元数组的名字; • 二是使用函数celldisp(c)来输出。

• 想得到单元数组中某一个单元的值时,可以采用c(m,n)或c{m,n}的格式输出。但是

它们得到的结果表示形式是不同的。 • 函数celldisp(c)更适用于具有大量数据的单元数组的显示。 • c{m,n} 和celldisp(c)显示的结果形式相同。

• celldisp(a,’name’)在窗口中显示的单元型变量的内容的名称为name。 •

• >> c={'abc',eye(2);[1 2;3 4],[1 2]}; • >>c(1,2) • ans =

• [2x2 double] • >> c{1,2} • ans =

• 1 0 • 0 1

• >> celldisp(c) • c{1,1} = • abc

注意(){}的不同 • c{2,1} = • • • •

1 2 3 4 c{1,2} =

1 0

• 0 1 • c{2,2} = • 1 2

• >> a={[1 2],[1 2 3];[2 3],[2 3 4]}; • >> celldisp(a,'hh') • hh{1,1} = • 1 2 • hh{2,1} =

• 2 3 • hh{1,2} =

• 1 2 3 • hh{2,2} =

• 2 3 4

• celldisp(a,’name’)在窗口中显示的单元型变量的内容的名称为name。 单元数组绘图

h=cellplot(c)返回一个向量,这个向量综合体现了表面、线和句柄。 h=cellplot(c,’legend’)返回一个向量,这个向量综合体现了表面、线和句柄,并有图形注释。

Cellplot

a={[1 2;2 2],'MATLAB7.0';'peking',[1 2]}; h=cellplot(a) 单元数组合并与变形 3.1.4

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务