Bird
Raised Fist0
Matplotlibdata~5 mins

Axis limits (xlim, ylim) in Matplotlib

Choose your learning style10 modes available
Introduction

Setting axis limits helps you focus on a specific part of your plot. It makes your graph clearer and easier to understand.

You want to zoom in on a particular range of data points.
You want to compare two plots with the same axis scale.
You want to hide irrelevant data outside a certain range.
You want to set fixed axis limits for consistent visuals.
You want to improve the readability of crowded plots.
Syntax
Matplotlib
plt.xlim(min_value, max_value)
plt.ylim(min_value, max_value)

Use plt.xlim() to set limits on the x-axis.

Use plt.ylim() to set limits on the y-axis.

Examples
Sets x-axis from 0 to 10 and y-axis from 0 to 5.
Matplotlib
plt.xlim(0, 10)
plt.ylim(0, 5)
Sets the left limit of x-axis to 2 and top limit of y-axis to 8, keeping other limits unchanged.
Matplotlib
plt.xlim(left=2)
plt.ylim(top=8)
Sets the right limit of x-axis to 15 and bottom limit of y-axis to 1.
Matplotlib
plt.xlim(right=15)
plt.ylim(bottom=1)
Sample Program

This code plots prime numbers with x from 1 to 10 and y as prime values. The axis limits zoom in on x between 3 and 8, and y between 4 and 20, so you see a focused part of the data.

Matplotlib
import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]

plt.plot(x, y, marker='o')
plt.title('Prime Numbers Plot')
plt.xlabel('X values')
plt.ylabel('Y values')

plt.xlim(3, 8)  # Show x-axis from 3 to 8
plt.ylim(4, 20) # Show y-axis from 4 to 20

plt.grid(True)
plt.show()
OutputSuccess
Important Notes

If you set limits outside your data range, the plot will show empty space.

You can also get current limits by calling plt.xlim() or plt.ylim() without arguments.

Setting limits after plotting is common to adjust the view.

Summary

Use plt.xlim() and plt.ylim() to control what part of the data you see.

Axis limits help focus on important data and improve plot clarity.

You can set limits fully or partially (left, right, top, bottom).

Practice

(1/5)
1. What does the function plt.xlim(0, 10) do in a matplotlib plot?
easy
A. Clears the current plot
B. Sets the y-axis limits from 0 to 10
C. Sets the x-axis limits from 0 to 10
D. Plots data points between 0 and 10 on x-axis

Solution

  1. Step 1: Understand the function purpose

    plt.xlim() sets the limits of the x-axis in a plot.
  2. Step 2: Analyze the arguments

    The arguments (0, 10) specify the minimum and maximum values for the x-axis.
  3. Final Answer:

    Sets the x-axis limits from 0 to 10 -> Option C
  4. Quick Check:

    plt.xlim(0, 10) = x-axis limits 0 to 10 [OK]
Hint: Remember xlim controls x-axis range, ylim controls y-axis [OK]
Common Mistakes:
  • Confusing xlim with ylim
  • Thinking it plots data points
  • Assuming it clears the plot
2. Which of the following is the correct syntax to set y-axis limits from -5 to 5 in matplotlib?
easy
A. plt.ylim(-5, 5)
B. plt.xlim(-5, 5)
C. plt.axis(ymin=-5, ymax=5)
D. plt.set_ylim(-5, 5)

Solution

  1. Step 1: Identify the function for y-axis limits

    The correct function to set y-axis limits is plt.ylim().
  2. Step 2: Check the syntax

    The syntax plt.ylim(-5, 5) correctly sets the y-axis from -5 to 5.
  3. Final Answer:

    plt.ylim(-5, 5) -> Option A
  4. Quick Check:

    ylim(-5, 5) sets y-axis limits correctly [OK]
Hint: Use plt.ylim() for y-axis limits, not plt.xlim() [OK]
Common Mistakes:
  • Using plt.xlim() for y-axis limits
  • Using non-existent plt.set_ylim()
  • Confusing plt.axis() parameters
3. What will be the x-axis limits after running this code?
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.xlim(2, 3)
plt.show()
medium
A. [1, 4]
B. [2, 3]
C. [0, 1]
D. [3, 4]

Solution

  1. Step 1: Understand the plot and xlim call

    The plot has x values 0 to 3 by default (index of list). The call plt.xlim(2, 3) sets the x-axis limits explicitly from 2 to 3.
  2. Step 2: Confirm the axis limits

    Because of plt.xlim(2, 3), the x-axis will only show values between 2 and 3.
  3. Final Answer:

    [2, 3] -> Option B
  4. Quick Check:

    plt.xlim(2, 3) sets x-axis limits to [2, 3] [OK]
Hint: xlim sets exact x-axis range regardless of data [OK]
Common Mistakes:
  • Assuming default axis limits remain
  • Confusing data values with axis limits
  • Ignoring that x-axis is index by default
4. Identify the error in this code snippet:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3])
plt.xlim(5, 1)
plt.show()
medium
A. plt.show() is missing parentheses
B. plt.plot() missing x values
C. plt.xlim() requires three arguments
D. xlim limits are reversed; min should be less than max

Solution

  1. Step 1: Check the xlim arguments

    The call plt.xlim(5, 1) sets the lower limit to 5 and upper limit to 1, which is reversed.
  2. Step 2: Understand axis limit rules

    Axis limits must have the minimum value first and maximum second. Reversed limits cause unexpected behavior or warnings.
  3. Final Answer:

    xlim limits are reversed; min should be less than max -> Option D
  4. Quick Check:

    Lower limit must be less than upper limit in xlim [OK]
Hint: Always put smaller number first in xlim and ylim [OK]
Common Mistakes:
  • Reversing min and max values in limits
  • Thinking xlim needs three arguments
  • Ignoring function call syntax
5. You have a scatter plot with x values ranging from 0 to 100 and y values from 0 to 50. You want to zoom in on the region where x is between 20 and 40 and y is between 10 and 30. Which code correctly sets these axis limits?
hard
A. plt.xlim(20, 40) plt.ylim(10, 30)
B. plt.xlim(10, 30) plt.ylim(20, 40)
C. plt.xlim([10, 30]) plt.ylim([20, 40])
D. plt.axis([10, 30, 20, 40])

Solution

  1. Step 1: Identify correct axis limits for x and y

    The question states x between 20 and 40, y between 10 and 30.
  2. Step 2: Match limits to correct functions

    plt.xlim(20, 40) sets x-axis limits, plt.ylim(10, 30) sets y-axis limits correctly.
  3. Final Answer:

    plt.xlim(20, 40) plt.ylim(10, 30) -> Option A
  4. Quick Check:

    Use xlim for x-axis, ylim for y-axis limits [OK]
Hint: Match xlim to x-axis range, ylim to y-axis range [OK]
Common Mistakes:
  • Swapping x and y limits
  • Using list brackets in xlim/ylim
  • Using plt.axis with wrong order
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