Plotting areas in a for loop

4 visualizzazioni (ultimi 30 giorni)
Luke Marsden
Luke Marsden il 13 Feb 2017
Commentato: Star Strider il 14 Feb 2017
I am trying to plot areas inside a for loop. However, only the area for the final pass of the loop is plotting.
ylim = get(gca, 'Ylim');
for k = 1:length(explosions);
area([explosions(k, 1) explosions(k, 2)], [ylim(2) ylim(2)]);
end
The explosions vector is a 26x2 matrix that contains the start and end time of the area to plot in the first and second column respectively.

Risposta accettata

Star Strider
Star Strider il 13 Feb 2017
Without seeing the rest of your code, I can only guess) that you are not using the hold function.
Try something like this:
figure(1)
ylim = get(gca, 'Ylim');
for k = 1:length(explosions);
area([explosions(k, 1) explosions(k, 2)], [ylim(2) ylim(2)]);
hold on
end
hold off
  2 Commenti
Luke Marsden
Luke Marsden il 14 Feb 2017
Silly me...thanks!
Star Strider
Star Strider il 14 Feb 2017
My pleasure!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by