用自定义颜色绘制Matlab矩阵

4
有没有一种方法可以在绘制矩阵时指定线条的颜色?
例如:
// here is my matrix A
A = [13, 3, 4;19, 0, 1;18, 0, 2;19, 0, 1;19, 0, 1]; 
// when I am plotting it I am not in control of what color each line will be
plot(A)

使用

plot(A, 'r')

只需将所有内容涂成红色(这是预期的结果) 当尝试以下操作时:

plot(A, ['r', 'g','b'])

或者

plot(A, 'rgb')

不起作用(这并不奇怪)

那么有没有办法为每行指定颜色?

2个回答

8
您可以在之后更改颜色:
A = [13 3 4;
     19 0 1;
     18 0 2;
     19 0 1;
     19 0 1];

p=plot(A);

clrs = jet(numel(p)); % just a Nx3 array of RGB values
for ii=1:numel(p)
    set(p(ii),'color',clrs(ii,:));
end

例子:

A=sin(repmat(linspace(0,2*pi,200),20,1)'*diag(linspace(1,2,20)));
% same thing as above

enter image description here


2
plot函数没有像你的例子那样简洁地提供这样做的方法。相反,您可以尝试:
plot(A(:, 1), 'r', A(:, 2), 'g', A(:, 3), 'b');

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接