Bird
Raised Fist0
Matplotlibdata~20 mins

Markers on data points in Matplotlib - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Marker Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of marker style in matplotlib scatter plot
What is the output of this code snippet that plots points with different markers?
Matplotlib
import matplotlib.pyplot as plt
x = [1, 2, 3]
y = [4, 5, 6]
plt.scatter(x, y, marker='^')
plt.show()
AA scatter plot with star markers at points (1,4), (2,5), (3,6)
BA scatter plot with circle markers at points (1,4), (2,5), (3,6)
CA scatter plot with square markers at points (1,4), (2,5), (3,6)
DA scatter plot with triangle-up markers at points (1,4), (2,5), (3,6)
Attempts:
2 left
💡 Hint
The marker parameter controls the shape of points in scatter plots.
❓ data_output
intermediate
1:30remaining
Count of unique marker types in a plot
Given this code, how many unique marker types are used in the plot?
Matplotlib
import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]
markers = ['o', 's', '^', 'o']
for xi, yi, m in zip(x, y, markers):
    plt.scatter(xi, yi, marker=m)
plt.show()
A3
B4
C2
D1
Attempts:
2 left
💡 Hint
Look at the list of markers and count distinct symbols.
🔧 Debug
advanced
1:30remaining
Identify the error in marker usage
What error does this code raise when run?
Matplotlib
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6], marker='z')
plt.show()
ASyntaxError: invalid syntax
BValueError: Unrecognized marker style 'z'
CNo error, plots with default marker
DTypeError: marker must be a string
Attempts:
2 left
💡 Hint
Check if 'z' is a valid marker in matplotlib.
❓ visualization
advanced
2:00remaining
Visual difference of marker sizes
Which option shows the plot with the largest marker size for the point at (2, 3)?
Matplotlib
import matplotlib.pyplot as plt
plt.scatter([1, 2, 3], [2, 3, 4], marker='o', s=50)
plt.scatter([2], [3], marker='o', s=200)
plt.show()
AThe point at (2, 3) is the largest circle marker on the plot
BAll points have the same marker size
CThe point at (3, 4) is the largest marker
DThe point at (1, 2) is the largest marker
Attempts:
2 left
💡 Hint
The 's' parameter controls marker size in scatter plots.
🚀 Application
expert
2:30remaining
Choosing markers for categorical data visualization
You want to plot three categories of data points with distinct markers for clarity. Which set of markers is best to ensure clear visual distinction?
A['o', 'o', 'o'] # all circles
B['.', ',', '_'] # point, pixel, horizontal line
C['o', 's', '^'] # circle, square, triangle-up
D['x', 'x', 'x'] # all crosses
Attempts:
2 left
💡 Hint
Use distinct shapes to differentiate categories clearly.

Practice

(1/5)
1. What does the marker parameter do in a matplotlib plot?
easy
A. It specifies the shape of the points shown on the plot.
B. It changes the color of the plot line.
C. It sets the thickness of the plot line.
D. It adds grid lines to the plot.

Solution

  1. Step 1: Understand the role of the marker parameter

    The marker parameter controls how individual data points appear on the plot, such as circles, squares, or triangles.
  2. Step 2: Differentiate marker from other parameters

    Other parameters like color or linewidth control line appearance, not point shapes.
  3. Final Answer:

    It specifies the shape of the points shown on the plot. -> Option A
  4. Quick Check:

    marker = point shape [OK]
Hint: Marker shapes show points clearly on plots [OK]
Common Mistakes:
  • Confusing marker with color or line style
  • Thinking marker adds grid lines
  • Assuming marker changes line thickness
2. Which of the following is the correct way to plot data points with circle markers using matplotlib?
easy
A. plt.plot(x, y, marker='o')
B. plt.plot(x, y, marker='x')
C. plt.plot(x, y, marker='s')
D. plt.plot(x, y, marker='^')

Solution

  1. Step 1: Recall marker symbols in matplotlib

    In matplotlib, 'o' is the symbol for circle markers.
  2. Step 2: Match marker symbol to circle

    Other options: 'x' is cross, 's' is square, '^' is triangle up.
  3. Final Answer:

    plt.plot(x, y, marker='o') -> Option A
  4. Quick Check:

    Circle marker = 'o' [OK]
Hint: Circle marker is 'o' in matplotlib [OK]
Common Mistakes:
  • Using 'x' or 's' for circle markers
  • Forgetting to put marker in quotes
  • Using marker parameter incorrectly
3. What will the following code display?
import matplotlib.pyplot as plt
x = [1, 2, 3]
y = [4, 5, 6]
plt.plot(x, y, marker='^')
plt.show()
medium
A. A line plot with cross markers at each data point.
B. A scatter plot with circle markers.
C. A bar chart with triangle markers.
D. A line plot with triangle-up markers at each data point.

Solution

  1. Step 1: Understand the code plot type

    The code uses plt.plot with x and y lists, so it creates a line plot.
  2. Step 2: Interpret the marker parameter

    Marker '^' means triangle-up shape at each data point on the line.
  3. Final Answer:

    A line plot with triangle-up markers at each data point. -> Option D
  4. Quick Check:

    marker='^' means triangle-up markers [OK]
Hint: Marker '^' means triangle-up on line plot [OK]
Common Mistakes:
  • Confusing plt.plot with scatter plot
  • Misreading marker '^' as cross or circle
  • Thinking it creates a bar chart
4. Identify the error in this code snippet:
import matplotlib.pyplot as plt
x = [1, 2, 3]
y = [3, 2, 1]
plt.plot(x, y, marker=o)
plt.show()
medium
A. The x and y lists have different lengths.
B. The marker value should be a string, so marker='o'.
C. plt.plot cannot use markers.
D. plt.show() is missing parentheses.

Solution

  1. Step 1: Check marker parameter syntax

    The marker value must be a string, so it should be written as marker='o', not marker=o.
  2. Step 2: Verify other parts of the code

    x and y lists have same length; plt.plot supports markers; plt.show() is correctly called.
  3. Final Answer:

    The marker value should be a string, so marker='o'. -> Option B
  4. Quick Check:

    Marker must be a string in quotes [OK]
Hint: Put marker symbols inside quotes [OK]
Common Mistakes:
  • Forgetting quotes around marker symbol
  • Assuming plt.plot can't use markers
  • Misreading plt.show syntax
5. You want to plot two lines on the same graph with different markers: circles for the first line and squares for the second. Which code correctly does this?
hard
A. plt.plot(x1, y1, marker='x') plt.plot(x2, y2, marker='^') plt.show()
B. plt.plot(x1, y1, marker='s') plt.plot(x2, y2, marker='o') plt.show()
C. plt.plot(x1, y1, marker='o') plt.plot(x2, y2, marker='s') plt.show()
D. plt.plot(x1, y1, marker='o', marker='s') plt.plot(x2, y2) plt.show()

Solution

  1. Step 1: Assign markers to each line separately

    Each call to plt.plot can have its own marker parameter to set point shapes.
  2. Step 2: Match markers to lines as required

    First line uses 'o' for circles, second line uses 's' for squares.
  3. Step 3: Check incorrect options

    plt.plot(x1, y1, marker='s') plt.plot(x2, y2, marker='o') plt.show() swaps markers; C uses wrong markers; D tries two markers in one call, which is invalid.
  4. Final Answer:

    plt.plot(x1, y1, marker='o') plt.plot(x2, y2, marker='s') plt.show() -> Option C
  5. Quick Check:

    Separate plot calls, each with correct marker [OK]
Hint: Use separate plot calls with different markers [OK]
Common Mistakes:
  • Trying to set two markers in one plot call
  • Swapping marker symbols by mistake
  • Not calling plt.show() after plotting
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