我希望能够为多线图选择颜色,但我无法得到它。这是我的代码
colors = {'b','r','g'};
T = [0 1 2]';
column = [2 3];
count = magic(3);
SelecY = count(:,column),
plot(T,SelecY,'Color',colors{column});
答案 0 :(得分:4)
出于某种原因,我不能在不使用句柄的情况下使用它,但是:
h = plot(T,SelecY);
set(h, {'Color'}, colors(column)');
适合我。
答案 1 :(得分:3)
您只能一次指定一种颜色,并且必须将其指定为3元素RGB矢量。你的三条路线是:
循环并按字符串指定颜色,就像你拥有它们一样:
hold on
for i=1:size(SelecY, 2)
plot(T, SelecY(:,i), colors{i});
end
使用RGB颜色规范,您可以通过“颜色”属性传递颜色,就像您上面尝试的那样:
cols = jet(8);
hold on
for i=1:size(SelecY, 2)
plot(T, SelecY(:,i), 'Color', cols(i,:));
end
同样使用RGB方式,您可以预先指定ColorOrder
,然后让matlab循环:
set(gca, 'ColorOrder', jet(3))
hold all
for i=1:size(SelecY, 2)
plot(T, SelecY(:,i));
end
在之后设置颜色,请参阅另一个答案。