Bird
Raised Fist0
Matplotlibdata~20 mins

Pie chart color customization in Matplotlib - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Pie Chart Color Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
1:30remaining
What colors will the pie chart slices have?
Consider this code that creates a pie chart with custom colors. What colors will the slices be?
Matplotlib
import matplotlib.pyplot as plt
sizes = [30, 20, 50]
colors = ['red', 'green', 'blue']
plt.pie(sizes, colors=colors)
plt.show()
ASlices colored all gray
BSlices colored default matplotlib colors ignoring the list
CSlices colored red, green, and blue respectively
DSlices colored yellow, cyan, and magenta
Attempts:
2 left
💡 Hint
The colors list is passed to the pie function to set slice colors.
❓ data_output
intermediate
1:30remaining
How many slices will be colored orange?
Given this pie chart code, how many slices will be orange?
Matplotlib
import matplotlib.pyplot as plt
sizes = [10, 20, 30, 40]
colors = ['orange', 'orange', 'blue', 'green']
plt.pie(sizes, colors=colors)
plt.show()
A2 slices
B1 slice
C3 slices
D0 slices
Attempts:
2 left
💡 Hint
Count how many times 'orange' appears in the colors list.
🔧 Debug
advanced
2:00remaining
Why does this pie chart ignore the colors list?
This code tries to color slices but all slices appear gray. What is the error?
Matplotlib
import matplotlib.pyplot as plt
sizes = [25, 25, 25, 25]
colors = ['red', 'green', 'blue', 'yellow']
plt.pie(sizes, color=colors)
plt.show()
AThe pie function does not accept a colors parameter
BThe sizes list must be strings, not integers
CThe colors list must have hex codes, not names
DThe parameter should be 'colors', not 'color'
Attempts:
2 left
💡 Hint
Check the exact parameter name for slice colors in plt.pie.
❓ visualization
advanced
2:00remaining
Which option shows a pie chart with a custom color palette?
You want a pie chart with slices colored purple, orange, and teal. Which code produces this?
Aplt.pie([40, 30, 30], colors=['purple', 'orange', 'teal'])
Bplt.pie([40, 30, 30], color=['purple', 'orange', 'teal'])
Cplt.pie([40, 30, 30], colors=['red', 'green', 'blue'])
Dplt.pie([40, 30, 30], colors=['purple', 'orange'])
Attempts:
2 left
💡 Hint
Use the correct parameter name and provide one color per slice.
🚀 Application
expert
3:00remaining
How to create a pie chart with alternating slice colors?
You want a pie chart with 6 slices where colors alternate between 'red' and 'blue'. Which code creates this pattern?
A
colors = ['red', 'blue'] * 3
plt.pie([10]*6, color=colors)
plt.show()
B
colors = ['red' if i % 2 == 0 else 'blue' for i in range(6)]
plt.pie([10]*6, colors=colors)
plt.show()
C
colors = ['red', 'blue', 'red', 'blue', 'red', 'blue']
plt.pie([10]*6, colors=colors)
plt.show()
D
colors = ['red', 'blue']
plt.pie([10]*6, colors=colors)
plt.show()
Attempts:
2 left
💡 Hint
Use a list comprehension to generate the alternating colors list.

Practice

(1/5)
1. What does the colors parameter do in a matplotlib pie chart?
easy
A. It changes the size of the pie chart.
B. It changes the chart title.
C. It adds labels to the pie slices.
D. It sets the colors of each slice in the pie chart.

Solution

  1. Step 1: Understand the role of colors in pie charts

    The colors parameter is used to specify the colors for each slice of the pie chart.
  2. Step 2: Compare with other options

    Options A, C, and D relate to size, labels, and title, which are controlled by other parameters.
  3. Final Answer:

    It sets the colors of each slice in the pie chart. -> Option D
  4. Quick Check:

    colors parameter = slice colors [OK]
Hint: Remember: colors parameter controls slice colors [OK]
Common Mistakes:
  • Confusing colors with labels
  • Thinking colors change chart size
  • Mixing colors with title settings
2. Which of the following is the correct way to set colors in a matplotlib pie chart?
easy
A. plt.pie(data, colors=['red', 'blue', 'green'])
B. plt.pie(data, color=['red', 'blue', 'green'])
C. plt.pie(data, col=['red', 'blue', 'green'])
D. plt.pie(data, set_colors=['red', 'blue', 'green'])

Solution

  1. Step 1: Recall the correct parameter name

    The correct parameter to set slice colors is colors, not color, col, or set_colors.
  2. Step 2: Check syntax correctness

    plt.pie(data, colors=['red', 'blue', 'green']) uses colors with a list of color names, which is the correct syntax.
  3. Final Answer:

    plt.pie(data, colors=['red', 'blue', 'green']) -> Option A
  4. Quick Check:

    Use colors= list for slice colors [OK]
Hint: Use exact parameter name 'colors' for slice colors [OK]
Common Mistakes:
  • Using 'color' instead of 'colors'
  • Using undefined parameters like 'col' or 'set_colors'
  • Passing colors as a string instead of a list
3. What will be the color of the second slice in this code?
import matplotlib.pyplot as plt
sizes = [30, 40, 30]
colors = ['#FF0000', '#00FF00', '#0000FF']
plt.pie(sizes, colors=colors)
plt.show()
medium
A. Blue
B. Red
C. Green
D. Black

Solution

  1. Step 1: Identify the colors list order

    The colors list is ['#FF0000', '#00FF00', '#0000FF'], which correspond to red, green, and blue in order.
  2. Step 2: Match the second slice color

    The second slice uses the second color '#00FF00', which is green.
  3. Final Answer:

    Green -> Option C
  4. Quick Check:

    Second color in list = green [OK]
Hint: Colors list order matches slice order [OK]
Common Mistakes:
  • Mixing hex codes with color names
  • Assuming default colors override given list
  • Confusing slice index starting at 0 or 1
4. Find the error in this pie chart color code:
import matplotlib.pyplot as plt
sizes = [25, 25, 50]
colors = 'red, blue, green'
plt.pie(sizes, colors=colors)
plt.show()
medium
A. colors should be a list, not a string
B. sizes list has wrong values
C. plt.pie does not accept colors parameter
D. Missing plt.show() call

Solution

  1. Step 1: Check the type of colors parameter

    The colors parameter must be a list of color names or hex codes, but here it is a single string.
  2. Step 2: Understand the impact of wrong type

    Passing a string will cause matplotlib to treat it as one color or raise an error.
  3. Final Answer:

    colors should be a list, not a string -> Option A
  4. Quick Check:

    colors must be list, not string [OK]
Hint: Always pass colors as a list, not a single string [OK]
Common Mistakes:
  • Passing colors as comma-separated string
  • Ignoring type requirements for colors
  • Assuming plt.show() is optional
5. You want to create a pie chart with 4 slices and use custom colors: red, green, blue, and yellow. Which code correctly applies these colors and also adds labels for each slice?
hard
A. plt.pie([10, 20, 30, 40], colors=['red', 'green', 'blue', 'yellow'], label=['A', 'B', 'C', 'D'])
B. plt.pie([10, 20, 30, 40], colors=['red', 'green', 'blue', 'yellow'], labels=['A', 'B', 'C', 'D'])
C. plt.pie([10, 20, 30, 40], colors=['red', 'green', 'blue'], labels=['A', 'B', 'C', 'D'])
D. plt.pie([10, 20, 30, 40], color=['red', 'green', 'blue', 'yellow'], labels=['A', 'B', 'C', 'D'])

Solution

  1. Step 1: Verify the colors parameter and list length

    The colors parameter must be named exactly 'colors' and have 4 colors for 4 slices.
  2. Step 2: Check the labels parameter name and length

    The labels parameter must be named 'labels' and have 4 labels matching the slices.
  3. Step 3: Identify errors in other options

    plt.pie([10, 20, 30, 40], color=['red', 'green', 'blue', 'yellow'], labels=['A', 'B', 'C', 'D']) uses 'color' instead of 'colors'. plt.pie([10, 20, 30, 40], colors=['red', 'green', 'blue'], labels=['A', 'B', 'C', 'D']) has only 3 colors for 4 slices. plt.pie([10, 20, 30, 40], colors=['red', 'green', 'blue', 'yellow'], label=['A', 'B', 'C', 'D']) uses 'label' instead of 'labels'.
  4. Final Answer:

    plt.pie([10, 20, 30, 40], colors=['red', 'green', 'blue', 'yellow'], labels=['A', 'B', 'C', 'D']) -> Option B
  5. Quick Check:

    Use colors= and labels= with matching list lengths [OK]
Hint: Match colors and labels list lengths with data slices [OK]
Common Mistakes:
  • Using wrong parameter names like 'color' or 'label'
  • Mismatched list lengths for colors or labels
  • Forgetting to pass labels parameter
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