Plotting multiple lines with difference specific colours via plot function

4 visualizzazioni (ultimi 30 giorni)
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?

Risposte (2)

Kaelan Wade
Kaelan Wade il 1 Mag 2017
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 Commento
Stephen23
Stephen23 il 1 Mag 2017
Modificato: Stephen23 il 1 Mag 2017
"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.

Accedi per commentare.


Stephen23
Stephen23 il 1 Mag 2017
Modificato: Stephen23 il 1 Mag 2017
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],'*-')

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by