根据颜色图更改现有绘图线
Change existing plot lines according to colormap
我在 Matlab 中有一个带有几条线的图,我想控制线的颜色 post-hoc:
figure; hold on;
for ind=1:4
plot(rand(1,10))
end
我知道我可以使用
set(0,'DefaultAxesColorOrder',summer(4))
在绘图之前,更改绘图线的颜色,但是(如何)在查看绘图后可以实现相同的效果?可以试试几种不同的配色方案吗?
默认情况下,每个绘图的颜色取自其轴的 属性 'ColorOrder'
,默认情况下取自 groot
对象的 'DefaultAxesColorOrder'
.
创建绘图后,您需要单独修改它们的颜色;更改上述属性不会影响它们:
g = findobj(gca, 'Type', 'line'); % children of current axis that are lines
c = summer(numel(g)); % desired color scheme, with that many colors
for k = 1:numel(g)
set(g(k), 'color', c(k,:));
end
我在 Matlab 中有一个带有几条线的图,我想控制线的颜色 post-hoc:
figure; hold on;
for ind=1:4
plot(rand(1,10))
end
我知道我可以使用
set(0,'DefaultAxesColorOrder',summer(4))
在绘图之前,更改绘图线的颜色,但是(如何)在查看绘图后可以实现相同的效果?可以试试几种不同的配色方案吗?
默认情况下,每个绘图的颜色取自其轴的 属性 'ColorOrder'
,默认情况下取自 groot
对象的 'DefaultAxesColorOrder'
.
创建绘图后,您需要单独修改它们的颜色;更改上述属性不会影响它们:
g = findobj(gca, 'Type', 'line'); % children of current axis that are lines
c = summer(numel(g)); % desired color scheme, with that many colors
for k = 1:numel(g)
set(g(k), 'color', c(k,:));
end