我在网格上绘制正方形。正方形需要在单元格数组中设置ID。我期待ID按顺序遍历单元格中的每个ID,而不是循环遍历行。
cell_id = cell(1, 2); % 1 x 5 cell array
cell_id{1, 1} = 1365; cell_id{1, 2} = 1256; cell_id{1, 3} = 6214; cell_id{1, 4} = 2587; cell_id{1, 5} = 1564;
hold on
for i = 1:2:12
count = 1;
for ii = 1:2:12
plot(1*i , 1*ii, 's', 'MarkerSize', 50);
if (count <= 5)
id = cell_id(1,count);
text(1*i, 1*ii, ['ID:',id]);
count = count + 1;
elseif (count > 5)
id = cell_id(1,1);
count = 1;
text(1*i, 1*ii, ['ID:',id]);
end
end
end
任何想法,谢谢。
答案 0 :(得分:0)
您的外圈已超过i
。你的内部循环超过ii
(顺便说一句坏名字)。这意味着ii
更改速度更快,并且您将其用于框和文本的y
偏移量,这意味着您的计数ID将更改y方向。只需在i
和ii
来电中更改plot
和text
的顺序。
例如,如果您使用循环变量x
和y
,这将更加明显。
以下是一些其他调试技巧,可以帮助您了解未来类似的事情:
for
循环之一更改为1:1以仅生成单个行或列。count
,i
或ii
。