代码段看起来像这样:
legendentry=zeros(1, NumberOfFiles);
legendentry{1}= sprintf('Experimental');
legendentry{NumberOfFiles} = sprintf('Variable: %.2f', 0.5+(NumberOfFiles-1)*0.5);
h =legend(legendentry,'Location','southeast');
,如果我这样运行它,它会提供此错误消息:"单元素内容分配给非细胞数组对象。"
如果我遗漏了第一行 legendentry=zeros(1, NumberOfFiles);
代码对我来说很好,传说看起来像是我想要的:
实验
变量:0.5
变量:1 .. 等等..
,但是legendentry
不再是预先分配的。因此,我想知道如果需要以后需要这样做,我该如何正确分配数组。
我知道必须有一些 celltr 或 num2str 的东西,但是我不知道自己如何解决它。
希望你们能帮助我解决这个基本问题。
preallocate legendentry
作为单元格数组,因为您将要分配单元格。
legendentry = cell(1, NumberOfFiles);