Axis control helps you change how the graph looks. You can set limits, labels, and styles to make your chart clear and easy to understand.
Axis control and formatting in MATLAB
Introduction
Syntax
MATLAB
axis([xmin xmax ymin ymax]) xlabel('text') ylabel('text') title('text') set(gca, 'PropertyName', PropertyValue) grid on/off set(gca, 'XScale', 'linear' or 'log') set(gca, 'YScale', 'linear' or 'log')
axis sets the limits of the axes.
gca means 'get current axis' and lets you change properties like scale or ticks.
Examples
MATLAB
x = 1:10; y = x.^2; plot(x,y) axis([0 12 0 120])
MATLAB
plot(x,y) xlabel('Time (seconds)') ylabel('Distance (meters)') title('Distance over Time')
MATLAB
plot(x,y) grid on
MATLAB
plot(x,y) set(gca, 'YScale', 'log')
Sample Program
This program plots an exponential growth curve. It sets axis limits, labels, title, and turns on the grid for clarity.
MATLAB
x = linspace(0, 10, 100); y = exp(x/3); plot(x, y) axis([0 10 0 30]) xlabel('Time (s)') ylabel('Growth') title('Exponential Growth') grid on set(gca, 'YScale', 'linear')
Important Notes
Use axis tight to fit the axis limits exactly to your data.
Use axis equal to make the units the same length on both axes.
Changing axis scale to logarithmic helps when data spans many orders of magnitude.
Summary
Axis control lets you set limits and labels to make plots clear.
You can turn grid lines on or off to help read the graph.
Changing axis scale (linear or log) helps show data better.
Practice
1. What does the MATLAB command
axis([0 10 0 5]) do to a plot?easy
Solution
Step 1: Understand the axis function input
Theaxisfunction with a vector of four numbers sets axis limits: [xmin xmax ymin ymax].Step 2: Apply the given limits
Here,[0 10 0 5]means x-axis from 0 to 10 and y-axis from 0 to 5.Final Answer:
Sets the x-axis limits from 0 to 10 and y-axis limits from 0 to 5 -> Option AQuick Check:
axis([xmin xmax ymin ymax]) = set axis limits [OK]
Hint: Remember axis([xmin xmax ymin ymax]) sets axis limits [OK]
Common Mistakes:
- Confusing axis limits with colors
- Thinking axis sets labels or grid size
- Using axis without four numbers
2. Which of the following is the correct syntax to set the x-axis label to 'Time (s)' in MATLAB?
easy
Solution
Step 1: Recall MATLAB function for x-axis label
The function to set x-axis label isxlabelwith the label text as input.Step 2: Check syntax correctness
xlabel('Time (s)')correctly sets the label. Other options are invalid function names.Final Answer:
xlabel('Time (s)') -> Option BQuick Check:
Use xlabel('text') to label x-axis [OK]
Hint: Use xlabel('text') exactly to label x-axis [OK]
Common Mistakes:
- Using wrong function names like setxlabel
- Forgetting quotes around label text
- Confusing xlabel with axis or title
3. What will be the effect of the following MATLAB code?
plot(1:5, [2 4 6 8 10]);
axis([0 6 0 12]);
xticks([0 2 4 6]);
yticks([0 6 12]);
medium
Solution
Step 1: Analyze axis limits
axis([0 6 0 12])sets x-axis from 0 to 6 and y-axis from 0 to 12.Step 2: Analyze tick settings
xticks([0 2 4 6])sets x-axis ticks at 0, 2, 4, 6;yticks([0 6 12])sets y-axis ticks at 0, 6, 12.Final Answer:
Plot points with x-axis from 0 to 6, y-axis from 0 to 12, x-ticks at 0,2,4,6 and y-ticks at 0,6,12 -> Option AQuick Check:
axis + xticks + yticks control limits and ticks [OK]
Hint: axis sets limits; xticks/yticks set tick marks [OK]
Common Mistakes:
- Assuming default ticks remain after setting axis
- Thinking xticks/yticks need same length as data
- Confusing axis limits with tick positions
4. Identify the error in this MATLAB code snippet for setting axis limits and fix it:
plot(1:3, [5 10 15])
axis(0 3 0 20)
medium
Solution
Step 1: Check axis function syntax
Theaxisfunction requires a vector input for limits, enclosed in square brackets.Step 2: Identify missing brackets
The code usesaxis(0 3 0 20)without brackets, causing syntax error.Final Answer:
Missing square brackets around limits; should be axis([0 3 0 20]) -> Option CQuick Check:
axis([xmin xmax ymin ymax]) needs brackets [OK]
Hint: Always use square brackets for axis limits [OK]
Common Mistakes:
- Omitting brackets around axis limits
- Using strings instead of numeric vectors
- Confusing axis with xlim or ylim functions
5. You want to create a plot with x-axis from -5 to 5, y-axis from -10 to 10, and custom ticks every 2 units on both axes. Which MATLAB code correctly achieves this?
hard
Solution
Step 1: Set axis limits correctly
axis([-5 5 -10 10])sets x-axis and y-axis limits as required.Step 2: Set ticks every 2 units
xticks(-5:2:5)creates ticks at -5, -3, -1, 1, 3, 5; similarly for y-axis withyticks(-10:2:10).Step 3: Check other options
plot(x,y); axis([-5 5 -10 10]); xticks([-5 2 5]); yticks([-10 2 10]); sets ticks incorrectly (missing intermediate values). plot(x,y); xlim([-5 5]); ylim([-10 10]); ticks([-5 5], [-10 10]); uses invalidticksfunction. plot(x,y); axis([-5 5 -10 10]); xticks(-5:5); yticks(-10:10); sets ticks every 5 units, not 2.Final Answer:
plot(x,y); axis([-5 5 -10 10]); xticks(-5:2:5); yticks(-10:2:10); -> Option DQuick Check:
Use axis for limits and colon operator for ticks [OK]
Hint: Use colon operator for ticks: start:step:end [OK]
Common Mistakes:
- Setting ticks with wrong intervals
- Using non-existent ticks() function
- Confusing axis limits with tick values
Recommended
Ready to prove it?
Pass the test and this pattern moves unknown
10 questions ~5 mineasy hard
