Bird
Raised Fist0
Matplotlibdata~5 mins

Axes creation with add_subplot in Matplotlib - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the add_subplot method do in matplotlib?
It adds a new set of axes (a subplot) to a figure, allowing you to create multiple plots in one figure.
Click to reveal answer
beginner
How do you specify the position of a subplot using add_subplot?
You specify the number of rows, columns, and the index of the subplot in the grid, for example add_subplot(2, 3, 4) creates a subplot in the 2x3 grid at position 4.
Click to reveal answer
beginner
What is the difference between add_subplot(111) and add_subplot(1,1,1)?
Both create a single subplot that fills the entire figure. 111 is a shorthand for 1 row, 1 column, 1st subplot.
Click to reveal answer
intermediate
Can add_subplot be used to create 3D plots?
Yes, by passing projection='3d' as an argument, you can create 3D axes with add_subplot.
Click to reveal answer
beginner
What type of object does add_subplot return?
It returns an Axes object, which you can use to plot data and customize the subplot.
Click to reveal answer
What does fig.add_subplot(2, 2, 3) do?
AAdds a subplot in a 2x2 grid at position 3
BAdds three subplots in one figure
CCreates a figure with 3 rows and 2 columns
DRemoves the third subplot from the figure
Which argument enables 3D plotting in add_subplot?
Astyle='3d'
Btype='3d'
Cmode='3d'
Dprojection='3d'
What does add_subplot(111) mean?
AInvalid syntax
B1 row, 1 column, 11th subplot
C1 row, 1 column, 1st subplot
D11 rows, 1 column, 1st subplot
What type of object do you get from add_subplot?
APlot object
BAxes object
CFigure object
DDataFrame object
If you want 6 subplots arranged in 2 rows and 3 columns, which call is correct?
Aadd_subplot(2, 3, 6)
Badd_subplot(3, 2, 6)
Cadd_subplot(6, 1, 2)
Dadd_subplot(1, 6, 2)
Explain how to create multiple subplots in one figure using add_subplot.
Think about how you divide the figure space and select the position.
You got /4 concepts.
    Describe how to create a 3D plot using add_subplot.
    Remember the special argument for 3D.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the add_subplot method do in matplotlib?
      easy
      A. It removes a plot from the figure.
      B. It saves the figure to a file.
      C. It changes the color of the plot.
      D. It adds a new plot (axes) to an existing figure.

      Solution

      1. Step 1: Understand the purpose of add_subplot

        The add_subplot method is used to add one or more plots (axes) inside a figure in matplotlib.
      2. Step 2: Compare with other options

        Saving, coloring, or removing plots are done by other methods, not add_subplot.
      3. Final Answer:

        It adds a new plot (axes) to an existing figure. -> Option D
      4. Quick Check:

        add_subplot adds axes [OK]
      Hint: Remember: add_subplot adds plots inside a figure [OK]
      Common Mistakes:
      • Confusing add_subplot with savefig
      • Thinking it changes plot colors
      • Assuming it deletes plots
      2. Which of the following is the correct way to create a 2x2 grid of subplots and select the third subplot using add_subplot?
      easy
      A. fig.add_subplot(2, 2, 3)
      B. fig.add_subplot(3, 2, 2)
      C. fig.add_subplot(2, 3, 1)
      D. fig.add_subplot(2, 2)

      Solution

      1. Step 1: Understand the parameters of add_subplot

        The method add_subplot(rows, columns, index) creates a grid and selects the subplot at the given index.
      2. Step 2: Match the correct grid and index

        For a 2x2 grid, the third subplot is at position 3, so fig.add_subplot(2, 2, 3) is correct.
      3. Final Answer:

        fig.add_subplot(2, 2, 3) -> Option A
      4. Quick Check:

        2x2 grid, third subplot = add_subplot(2,2,3) [OK]
      Hint: Use (rows, cols, position) to pick subplot [OK]
      Common Mistakes:
      • Mixing rows and columns order
      • Omitting the position argument
      • Using wrong grid size
      3. What will be the output of the following code snippet?
      import matplotlib.pyplot as plt
      fig = plt.figure()
      ax1 = fig.add_subplot(121)
      ax2 = fig.add_subplot(122)
      print(type(ax1), type(ax2))
      medium
      A.
      B.
      C.
      D. SyntaxError

      Solution

      1. Step 1: Understand add_subplot with 3-digit code

        The code 121 means 1 row, 2 columns, subplot 1; 122 means subplot 2.
      2. Step 2: Check the returned object types

        Both ax1 and ax2 are subplot axes objects of type AxesSubplot.
      3. Final Answer:

        <class 'matplotlib.axes._subplots.AxesSubplot'> <class 'matplotlib.axes._subplots.AxesSubplot'> -> Option A
      4. Quick Check:

        add_subplot returns AxesSubplot objects [OK]
      Hint: 3-digit code means (rows, cols, index) [OK]
      Common Mistakes:
      • Expecting Figure type instead of Axes
      • Confusing syntax with tuple input
      • Thinking it causes syntax error
      4. Identify the error in this code snippet:
      import matplotlib.pyplot as plt
      fig = plt.figure()
      ax = fig.add_subplot(2, 2)
      ax.plot([1, 2, 3], [4, 5, 6])
      plt.show()
      medium
      A. plt.figure() should be plt.subplots() instead.
      B. Missing the subplot position argument in add_subplot.
      C. The plot data lists have different lengths.
      D. plt.show() is called before plotting.

      Solution

      1. Step 1: Check add_subplot parameters

        The method requires three arguments: rows, columns, and position. Here, only two are given.
      2. Step 2: Verify other parts of the code

        Plot data lists have equal length, plt.show() is correctly placed, and plt.figure() is valid.
      3. Final Answer:

        Missing the subplot position argument in add_subplot. -> Option B
      4. Quick Check:

        add_subplot needs 3 args (rows, cols, pos) [OK]
      Hint: add_subplot needs three numbers: rows, cols, position [OK]
      Common Mistakes:
      • Forgetting the position argument
      • Confusing plt.figure() with plt.subplots()
      • Assuming plt.show() order matters here
      5. You want to create a figure with 3 subplots arranged in 1 row and 3 columns. You want to add the second subplot and plot a line on it. Which code snippet correctly does this?
      hard
      A. fig = plt.figure() ax = fig.add_subplot(3, 1, 2) ax.plot([0, 1, 2], [2, 1, 0]) plt.show()
      B. fig, ax = plt.subplots(3, 1) ax[1].plot([0, 1, 2], [2, 1, 0]) plt.show()
      C. fig = plt.figure() ax = fig.add_subplot(1, 3, 2) ax.plot([0, 1, 2], [2, 1, 0]) plt.show()
      D. fig = plt.figure() ax = fig.add_subplot(1, 2, 3) ax.plot([0, 1, 2], [2, 1, 0]) plt.show()

      Solution

      1. Step 1: Understand subplot layout

        We want 1 row and 3 columns, so the call is add_subplot(1, 3, position).
      2. Step 2: Select the second subplot and plot

        Position 2 selects the second subplot. The plot command is correct.
      3. Step 3: Check other options

        fig, ax = plt.subplots(3, 1) ax[1].plot([0, 1, 2], [2, 1, 0]) plt.show() uses plt.subplots with wrong shape, C uses wrong layout, D uses invalid position 3 in 1x2 grid.
      4. Final Answer:

        fig = plt.figure() ax = fig.add_subplot(1, 3, 2) ax.plot([0, 1, 2], [2, 1, 0]) plt.show() -> Option C
      5. Quick Check:

        1 row, 3 cols, second subplot = add_subplot(1,3,2) [OK]
      Hint: Match rows, cols, and position carefully [OK]
      Common Mistakes:
      • Mixing rows and columns numbers
      • Using wrong subplot index
      • Confusing plt.figure() and plt.subplots()
      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