MATLAB: How to change the line color in a 2D graph using colormap

colorcolormapMATLABplotsurf

Hello everyone,
there is a mx5 matrix composed by the following columns:
x1 y1 x2 y2 c
where (x1,y1) and (x2,y2) are respectively the initial e and final coordinates of a link; c is the "color" variable.
I would like to assign a different color to the links according to c, using colormap.
I have already adopted the following solution:
A = rand(10,5);
c = A(:,5);
for i=1:10
x1=A(i,1);
y1=A(i,2);
x2=A(i,3);
y2=A(i,4);
plot([x1,x2],[y1,y2],'Color', [c(i) 0.2*(1-c(i)) 0.3*(1-c(i))])
hold on
end
The result is not satisfying. I would like to use the default colormap, but I know that is not possible to use it with plot. Does anybody know if it is possible to use surf? And how?
I need it for my thesis, any help is appreciated. Thanks a lot! πŸ™‚

Best Answer

I am not certain what result you want.
Try this:
A = rand(10,5);
cm = colormap(parula(size(A,1))); % Default Colormap
% c = A(:,5);
for i=1:10
x1=A(i,1);
y1=A(i,2);
x2=A(i,3);
y2=A(i,4);
plot([x1,x2],[y1,y2],'Color', cm(i,:))
hold on
end