【发布时间】:2018-01-06 06:25:48
【问题描述】:
目前我有一个矩阵,比如:A=[1 2 3 4 5;
4 7 3 2 2;
4 5 5 9 1]
我想要以某种颜色显示最后的“n”列,其中 n 可以是 1、2、3 等。因此,如果 n=1,我希望按原样显示矩阵,但将 [5;2;1] 列显示为红色。是否可以在 MATLAB 中执行此操作?如果有,怎么做?
感谢您的帮助
【问题讨论】:
目前我有一个矩阵,比如:A=[1 2 3 4 5;
4 7 3 2 2;
4 5 5 9 1]
我想要以某种颜色显示最后的“n”列,其中 n 可以是 1、2、3 等。因此,如果 n=1,我希望按原样显示矩阵,但将 [5;2;1] 列显示为红色。是否可以在 MATLAB 中执行此操作?如果有,怎么做?
感谢您的帮助
【问题讨论】:
一个简单的解决方案是使用cprintf 和for:
certainColor = 'green';
rowLength = size(A,1);
columnLength = size(A,2);
for idx = 1 : rowLength
for jdx = 1 : (columnLength - n)
cprintf('text', '%d\t', A(idx,jdx))
end
for jdx = n : -1 : 1
cprintf(certainColor, '%d\t', A(idx, columnLength - jdx + 1))
end
cprintf('text', '\n')
end
【讨论】:
1 2 3 4 5 4 7 3 2 2 4 5 5 9 1(具有正确的颜色)。最重要的是,双箭头 (>>) 出现在该字符串的末尾而不是其下方,并且箭头为绿色。
\n 以获取每一行中的每一行。
for jdx=n:-1:1 来解决