此示例显示如何访问结构阵列的内容。要在此示例中运行代码,请将多个变量加载到名为的结构中S.
。
首先,加载数据Flujet.mat.
进入标量结构S.
。文件Flujet.mat.
包含经历湍流的天体物理喷气机的模拟的图像。
s = load('flujet.mat')
S =结构与字段:X:[400x300双]映射:[64x3双]标题:[2x32 char]
文件中的变量(X
那标题
, 和地图
现在是结构中的字段。
使用表单的点表示法访问数据structname.fieldname.
。例如,通过字段中的数字数据X
到了图像
功能:
图像(S.X)Colormap(S.map)
要访问一个字段的一部分,请适用于字段中数据大小和类型的索引。例如,通过中心左侧部分X
到了图像
功能。
CenterLeft = S.X(150:250,1:50);图像(CenterLeft)
如果字段包含单元格数组,请使用Crly BRACE访问数据,例如S.Cellfield {1:50,1:80}
。
通过从文件中加载数据来创建非卡拉尔数组Cape.mat
进入阵列的第二个元素S.
。文件Cape.mat
包含Cape Cod,马萨诸塞州的图像。
结构阵列的每个元素必须具有相同的字段。两个都Flujet.mat.
和Cape.mat
包含变量X
那地图
, 和标题
。S.
是一个1×2阵列。
s(2)= load('cape.mat')
S =1×2结构阵列与字段:X地图标题
对于非卡尔结构,访问字段的语法是structName(索引).FieldName
。显示Cape Cod的图像,指定2
作为指数S.
。
图像(S(2).x)Colormap(s(2).map)
添加索引以选择并显示一小部分s(2).x
。
Capesection = S(2).x(200:300,150:250);图像(CAPENECTION)
笔记
只有在指代结构阵列的单个元素时,您只能索引到字段的一部分中。马铃薯®不支持诸如金宝apps(1:2).x(1:50,1:80)
,它尝试索引到结构的多个元素的字段中。