Plotting multiple lines with difference specific colours via plot function

Is there any way to use the plot function to plot multiple lines, each having a specific colour?
e.g plot(x1,y1,'-','color',[0 0 1],x2,y2, '-', 'color',[1 0.4 0.6])
This doesn't work, but is there any way of properly doing this?

Answers (2)

You can't combine everything into one single plot function.
What you can do is combine different plots via using hold on/off
E.g plot(x1,y1,'-','color',[0 0 1]) hold on plot(x2,y2, '-', 'color', [1 0.4 0.6]) hold off

1 Comment

"You can't combine everything into one single plot function." Really?
See my answer for the correct way of doing this without requiring multiple plot calls.

Sign in to comment.

You just need to set the line ColorOrder property of the axes, then you just need one plot call:
>> map = [0,0,1;1,0.4,0.6];
>> axes('ColorOrder',map,'NextPlot','replacechildren')
>> plot([0,1],[1,2],'-',[0,1],[2,1],'*-')

Products

Tags

Asked:

on 1 May 2017

Edited:

on 1 May 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!