Bird
Raised Fist0
MATLABdata~10 mins

Multiple plots (hold on) in MATLAB - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Multiple plots (hold on)
Start
↓
Plot first graph
↓
hold on activated
↓
Plot second graph
↓
Plot more graphs if needed
↓
hold off to stop adding
↓
End
The flow shows plotting the first graph, turning 'hold on' to keep the plot, adding more plots, then turning 'hold off' to finish.
Execution Sample
MATLAB
x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
plot(x,y1)
hold on
plot(x,y2)
hold off
This code plots sine and cosine on the same graph using 'hold on' to keep the first plot visible.
Execution Table
StepActionPlot StateOutput
1Create x, y1, y2 arraysNo plot yetVariables ready
2plot(x,y1)Plot shows sine curveSine curve visible
3hold onHold activatedNext plots added on same graph
4plot(x,y2)Sine and cosine curves visibleCosine curve added
5hold offHold deactivatedNo more plots added automatically
6EndFinal plot with sine and cosinePlot window shows both curves
💡 All plots added; hold off stops further additions.
Variable Tracker
VariableStartAfter Step 1After Step 2After Step 4Final
xundefined[0 0.1 ... 6.28][0 0.1 ... 6.28][0 0.1 ... 6.28][0 0.1 ... 6.28]
y1undefinedsin(x) valuessin(x) valuessin(x) valuessin(x) values
y2undefinedcos(x) valuescos(x) valuescos(x) valuescos(x) values
Key Moments - 2 Insights
Why does the second plot replace the first if 'hold on' is not used?
Without 'hold on', each plot command clears the previous plot, so only the last plot shows. See step 2 and 4 in execution_table where hold on is activated to keep both.
What happens if 'hold off' is not called after plotting multiple graphs?
'hold off' stops adding new plots on the same figure. If omitted, new plots will continue to add until MATLAB session ends or figure is closed. See step 5 for hold off effect.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the plot state after step 3?
AOnly sine curve is visible; hold is off
BHold is activated; next plots add on same graph
CPlot window is cleared
DCosine curve is visible alone
💡 Hint
Check the 'Plot State' column at step 3 in execution_table
At which step does the cosine curve first appear on the plot?
AStep 4
BStep 3
CStep 2
DStep 5
💡 Hint
Look at the 'Output' column in execution_table for when cosine curve is added
If 'hold off' was not called, what would happen when plotting a third graph?
AThe third graph would replace the previous two
BAn error would occur
CThe third graph would be added on the same plot
DThe plot window would close
💡 Hint
Refer to key_moments about hold off effect and execution_table step 5
Concept Snapshot
plot(x,y) draws a graph.
hold on keeps current plot.
plot more graphs to add on same figure.
hold off stops adding plots.
Use to compare multiple data sets visually.
Full Transcript
This example shows how to plot multiple graphs on the same figure in MATLAB. First, we create x values and two y arrays for sine and cosine. We plot the sine curve. Then, we use 'hold on' to keep this plot visible. Next, we plot the cosine curve, which appears on the same graph. Finally, 'hold off' stops further plots from adding automatically. Without 'hold on', each new plot replaces the previous one. This technique helps compare multiple data sets visually in one figure.

Practice

(1/5)
1. What does the hold on command do in MATLAB plotting?
easy
A. Clears the current figure before plotting new data.
B. Allows multiple plots to be drawn on the same figure without erasing previous plots.
C. Saves the current plot to a file.
D. Changes the color of the plot lines automatically.

Solution

  1. Step 1: Understand the purpose of hold on

    The hold on command tells MATLAB to keep the current plot and add new plots on top of it.
  2. Step 2: Compare with other options

    Other commands like hold off or default plotting clear the figure before new plots, so they do not allow multiple plots together.
  3. Final Answer:

    Allows multiple plots to be drawn on the same figure without erasing previous plots. -> Option B
  4. Quick Check:

    hold on = multiple plots on one figure [OK]
Hint: Remember: hold on means keep adding plots [OK]
Common Mistakes:
  • Thinking hold on clears the figure
  • Confusing hold on with saving plots
  • Assuming hold on changes plot colors
2. Which of the following is the correct way to plot two lines on the same figure in MATLAB?
easy
A. plot(x1, y1); hold on; plot(x2, y2); hold off;
B. hold on; plot(x1, y1); hold off; plot(x2, y2);
C. plot(x1, y1); plot(x2, y2);
D. plot(x1, y1); hold off; plot(x2, y2);

Solution

  1. Step 1: Identify the correct sequence to keep multiple plots

    Using hold on after the first plot keeps it visible for the second plot.
  2. Step 2: Confirm proper use of hold off

    Calling hold off after plotting both lines resets plotting behavior for future plots.
  3. Final Answer:

    plot(x1, y1); hold on; plot(x2, y2); hold off; -> Option A
  4. Quick Check:

    Use hold on between plots to combine them [OK]
Hint: Use hold on right after first plot to add more [OK]
Common Mistakes:
  • Not using hold on before second plot
  • Using hold off too early
  • Plotting without hold on clears previous plot
3. What will be the output of the following MATLAB code?
t = 0:0.1:1;
plot(t, t);
hold on;
plot(t, t.^2);
medium
A. Two plots will appear: a straight line and a curve on the same figure.
B. Only the plot of t vs t^2 will be shown.
C. An error will occur because hold on is used incorrectly.
D. Only the plot of t vs t will be shown.

Solution

  1. Step 1: Analyze the first plot command

    The first plot draws a straight line y = t on the figure.
  2. Step 2: Understand the effect of hold on and second plot

    Using hold on keeps the first plot visible, so the second plot y = t^2 is drawn on the same figure as a curve.
  3. Final Answer:

    Two plots will appear: a straight line and a curve on the same figure. -> Option A
  4. Quick Check:

    hold on keeps previous plot, so both appear [OK]
Hint: hold on keeps old plots visible for new ones [OK]
Common Mistakes:
  • Thinking only last plot shows
  • Assuming hold on causes error
  • Confusing plot commands order
4. Identify the error in this MATLAB code that tries to plot two lines on the same figure:
plot(x, y1)
hold off
plot(x, y2)
medium
A. There is no error; the code works correctly.
B. The variable x is not defined.
C. hold off should be called before the first plot.
D. hold off should be replaced with hold on to keep both plots visible.

Solution

  1. Step 1: Understand the effect of hold off

    Calling hold off resets plotting to clear the figure before the next plot.
  2. Step 2: Identify correct command to keep plots

    To keep both plots visible, hold on should be used instead of hold off.
  3. Final Answer:

    hold off should be replaced with hold on to keep both plots visible. -> Option D
  4. Quick Check:

    Use hold on to combine plots, not hold off [OK]
Hint: hold off clears plots; use hold on to keep them [OK]
Common Mistakes:
  • Using hold off instead of hold on
  • Thinking hold off adds plots
  • Ignoring hold commands altogether
5. You want to plot three different data sets on the same figure with different colors and then reset plotting to default for future plots. Which sequence of commands is correct?
hard
A. plot(x1, y1, 'r'); plot(x2, y2, 'g'); plot(x3, y3, 'b'); hold on; hold off;
B. hold on; plot(x1, y1, 'r'); plot(x2, y2, 'g'); plot(x3, y3, 'b');
C. plot(x1, y1, 'r'); hold on; plot(x2, y2, 'g'); plot(x3, y3, 'b'); hold off;
D. plot(x1, y1, 'r'); hold off; plot(x2, y2, 'g'); hold on; plot(x3, y3, 'b');

Solution

  1. Step 1: Use hold on after first plot to combine multiple plots

    After plotting the first data set, hold on keeps the figure active for additional plots.
  2. Step 2: Plot all data sets with specified colors and then reset with hold off

    Plotting the second and third data sets adds them to the same figure. Calling hold off resets plotting behavior for future plots.
  3. Final Answer:

    plot(x1, y1, 'r'); hold on; plot(x2, y2, 'g'); plot(x3, y3, 'b'); hold off; -> Option C
  4. Quick Check:

    hold on after first plot, hold off after last plot [OK]
Hint: hold on after first plot, hold off after last [OK]
Common Mistakes:
  • Not calling hold off after multiple plots
  • Calling hold on before first plot
  • Mixing hold on and hold off incorrectly
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard