How to use 'hold on' when plotting inside for loops

21 visualizaciones (últimos 30 días)
Fotis_oe
Fotis_oe el 15 de Mayo de 2017
Comentada: KSSV el 15 de Mayo de 2017
I have two matrices Flow1(1:5) and RTL(i,:) or (i,5).
I want to plot Flow1 over RTL and I write the following.
for i=num_cat
plot(Flow1(1:5),RTL(i,:),'--go');
hold on
end
hold off
I saw a previous post here that said that this is the way to get all 7 lines in one plot when i = 7 let's say. However, with my code, I only get the last plot line and not all the others. What do I do wrong and how can I get all plots in one figure? Thanks!

Respuesta aceptada

KSSV
KSSV el 15 de Mayo de 2017
Editada: KSSV el 15 de Mayo de 2017
Flow1 = rand(1,5) ;
RTL = rand(7,5) ;
num_cat = 7 ;
for i=1:num_cat
plot(Flow1(1:5),RTL(i,:),'--go');
hold on
end
hold off
you have use i = num_cat, so you were getting only one plot. It should be i = 1:num_cat
  2 comentarios
Fotis_oe
Fotis_oe el 15 de Mayo de 2017
Thanks a lot for quick reply and sorry for posting such a question where spelling was wrong! Do you perhaps also know how to get each line with a different colour and different legend? Because now, I get all of them in green!
KSSV
KSSV el 15 de Mayo de 2017
It is in green because you have mentioned the color green and fixed the markers too. You may check this:
Flow1 = rand(1,5) ;
RTL = rand(5,5) ;
num_cat = 5 ;
for i=1:num_cat
plot(Flow1(1:5),RTL(i,:));
hold on
end
hold off
legend({'i=1' ; 'i =2' ; 'i =3' ; 'i =4' ; 'i = 5'});

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by