我有一个单元格数组(3 x 4(,称为输出,每个单元格包含一个1024 x 1024矩阵。我想在 ouput{1,:} 中绘制 4 个矩阵。此外,我有一个结构,称为 dinfo,它相应地包含每个矩阵的名称(矩阵名称的字段 = "名称"(。我希望每个图像都以其名称命名。这是我到目前为止编写的代码:
for i = 1:length(output{1,:})
figure
imagesc(output{1,i});
colormap('jet')
colorbar;
title(num2str(dinfo.name(i)))
end
我不断收到"长度有太多输入参数"的错误。如果我更改代码以避免与长度函数相关的错误:
for i = 1:4
figure
imagesc(output{1,i});
colormap('jet')
colorbar;
title(num2str(dinfo.name(i)))
end
我收到错误,"预计大括号或点索引表达式有一个输出,但有 4 个结果"。
关于如何解决这两个错误的任何想法?
感谢您抽出宝贵时间:)
output{1,:}
是一个逗号分隔的列表;它包含第一行output
的1024个矩阵,所以length
有1024个参数。获取列数的最佳方法是使用size(...,2)
:
for i = 1:size(output,2)
figure
imagesc(output{1,i});
colormap('jet')
colorbar;
end
至于第二个错误,dinfo.name
有问题;可能,它也是一个逗号分隔的列表,因为它是一个结构数组dinfo
。尝试使用dinfo(i).name
而不是dinfo.name(i)
。