绘图后更改线条颜色

时间:2015-05-21 02:18:40

标签: matlab plot colormap

关注this后,我绘制了一个信号矩阵t(m乘1)和x(m乘n):

 plot(t,x);

然后,我希望在colormap矩阵c(n乘3)上应用彩色方案。怎么做?

修改 通过for调用,您可以设置颜色,同时构建绘图,绘制循环中的每个列,从而轻而易举地忽略大多数 - 如果不是全部性能礼仪,以及设置/应用彩色地图'正如指向帖子所建议的那样,但问题:

for i=1:n
    plot(t(:,1),x(:,i),'Color',c(i,:));
    hold on;
end

如果您没有定义txc,则这是不会运行的伪代码。 数据和此处显示的代码已经煮熟,随时为您准备好了:

load spectra.mat; 
x=NIR'; m=size(x,1);n=size(x,2);
t=900+2*(1:m)'; %Don't question this :)...
c=winter(n);
for i=1:n
    plot(t(:,1),x(:,i),'Color',c(i,:));
    hold on;
end
title('Near Infrarred Spectra for Gasoline Samples');
xlabel('Wavelength [nm]');
ylabel('Infrarred Spectral Magnitude [lm^2/nm]');

或没有for,更好:

load spectra.mat; 
x=NIR'; m=size(x,1);n=size(x,2);
t=900+2*(1:m)'; %Don't question this :)...
c=winter(n);
set(0,'DefaultAxesColorOrder',c);
plot(t,x);
title('Near Infrarred Spectra for Gasoline Samples');
xlabel('Wavelength [nm]');
ylabel('Infrarred Spectral Magnitude [lm^2/nm]');

Spectral example

所有这些都不幸之前绘图。从来没有......

1 个答案:

答案 0 :(得分:0)

我找到了this功能(CMAPLINE):

plot(t,x,':o');
cmapline('colormap',c);

这解决了这个问题。谢谢你的评论,好友。

hypfco。