Bird
Raised Fist0
Matplotlibdata~10 mins

Named colors and hex codes in Matplotlib - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to set the line color to a named color 'red' in matplotlib.

Matplotlib
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6], color='[1]')
plt.show()
Drag options to blanks, or click blank then click option'
Acyan
Bred
C#00FF00
Dblue
Attempts:
3 left
💡 Hint
Common Mistakes
Using a hex code instead of a named color when the instruction asks for a named color.
Forgetting to put the color name inside quotes.
2fill in blank
medium

Complete the code to set the marker color using a hex code for green.

Matplotlib
import matplotlib.pyplot as plt
plt.scatter([1, 2, 3], [4, 5, 6], marker='o', color='[1]')
plt.show()
Drag options to blanks, or click blank then click option'
Ared
Byellow
Cblue
D#00FF00
Attempts:
3 left
💡 Hint
Common Mistakes
Using a named color instead of a hex code when the instruction asks for a hex code.
Missing the '#' symbol in the hex code.
3fill in blank
hard

Fix the error in the code by choosing the correct color format for a blue line.

Matplotlib
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [3, 2, 1], color=[1])
plt.show()
Drag options to blanks, or click blank then click option'
Ablue
B'blue'
C'#0000FF'
D#0000FF
Attempts:
3 left
💡 Hint
Common Mistakes
Passing color without quotes causing a syntax error.
Using named color without quotes.
4fill in blank
hard

Fill both blanks to create a dictionary mapping color names to their hex codes.

Matplotlib
colors = {'red': '[1]', 'green': '[2]'}
Drag options to blanks, or click blank then click option'
A#FF0000
B#00FF00
Cred
Dgreen
Attempts:
3 left
💡 Hint
Common Mistakes
Using color names instead of hex codes in the dictionary values.
Forgetting quotes around hex codes.
5fill in blank
hard

Fill all three blanks to create a dictionary comprehension that maps color names to their uppercase hex codes if the hex code starts with '#'.

Matplotlib
colors = {'red': '#ff0000', 'blue': '#0000ff', 'green': '00ff00'}
result = {k: v[1]() for k, v in colors.items() if v[2]('#')}
print(result)  # Output: [3]
Drag options to blanks, or click blank then click option'
A.upper
B[0]
C{'red': '#FF0000', 'blue': '#0000FF'}
Dstartswith
Attempts:
3 left
💡 Hint
Common Mistakes
Using indexing [0] instead of startswith to check the first character.
Not calling the upper method with parentheses.
Including colors without '#' in the output.

Practice

(1/5)
1. Which of the following is a valid named color in matplotlib?
easy
A. #12345G
B. bluish
C. red
D. 123456

Solution

  1. Step 1: Understand named colors in matplotlib

    Matplotlib supports standard color names like 'red', 'blue', 'green', etc.
  2. Step 2: Check each option

    red is 'red', a valid named color. #12345G has an invalid hex code with 'G'. bluish 'bluish' is not a recognized name. 123456 is just digits, not a named color.
  3. Final Answer:

    red -> Option C
  4. Quick Check:

    Named color 'red' is valid [OK]
Hint: Named colors are simple words like 'red' or 'blue' [OK]
Common Mistakes:
  • Confusing invalid hex codes as named colors
  • Assuming any color-like word is valid
  • Using numbers without '#' as colors
2. Which of the following is the correct way to specify a hex color code in matplotlib?
easy
A. "#1a2b3c"
B. "1a2b3c"
C. "#12345"
D. "#xyz123"

Solution

  1. Step 1: Recall hex color code format

    Hex codes start with '#' followed by exactly 6 hexadecimal digits (0-9, a-f).
  2. Step 2: Validate each option

    "#1a2b3c" has '#' and 6 valid hex digits. "1a2b3c" misses '#'. "#12345" has only 5 digits. "#xyz123" contains invalid letters 'x' and 'z'.
  3. Final Answer:

    "#1a2b3c" -> Option A
  4. Quick Check:

    Hex code must start with '#' and have 6 hex digits [OK]
Hint: Hex codes start with '#' and have 6 hex digits [OK]
Common Mistakes:
  • Omitting the '#' symbol
  • Using wrong number of digits
  • Including invalid characters
3. What color will the following matplotlib code produce?
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], color="#00FF00")
plt.show()
medium
A. Black
B. Blue
C. Red
D. Green

Solution

  1. Step 1: Understand the hex code used

    "#00FF00" is a hex code where red=00, green=FF, blue=00, meaning full green.
  2. Step 2: Match hex code to color

    Since green is max and others zero, the line color will be bright green.
  3. Final Answer:

    Green -> Option D
  4. Quick Check:

    "#00FF00" means green color [OK]
Hint: Hex #00FF00 means full green, no red or blue [OK]
Common Mistakes:
  • Confusing hex digits order
  • Assuming #00FF00 is blue
  • Ignoring case sensitivity in hex
4. Identify the error in this matplotlib color specification:
plt.plot([1, 2, 3], color="#123ABZ")
medium
A. Missing '#' in hex code
B. Invalid hex code due to 'Z'
C. Color name not recognized
D. Syntax error in plot function

Solution

  1. Step 1: Check hex code characters

    Hex codes only allow digits 0-9 and letters A-F (case insensitive). 'Z' is invalid.
  2. Step 2: Confirm error type

    The code has '#' and correct length, but 'Z' makes it invalid hex code.
  3. Final Answer:

    Invalid hex code due to 'Z' -> Option B
  4. Quick Check:

    Hex digits must be 0-9 or A-F only [OK]
Hint: Hex codes only use digits 0-9 and letters A-F [OK]
Common Mistakes:
  • Ignoring invalid characters in hex
  • Confusing missing '#' with invalid chars
  • Assuming any letter is allowed in hex
5. You want to plot two lines in matplotlib: one red and one with a custom color #FF8800. Which code snippet correctly sets these colors?
hard
A. plt.plot(x, y1, color='red') plt.plot(x, y2, color='#FF8800')
B. plt.plot(x, y1, color='#red') plt.plot(x, y2, color='FF8800')
C. plt.plot(x, y1, color='ff8800') plt.plot(x, y2, color='red')
D. plt.plot(x, y1, color='red') plt.plot(x, y2, color='FF8800')

Solution

  1. Step 1: Check named color usage

    Named colors like 'red' are used as strings without '#'. Adding '#' to named colors makes them invalid.
  2. Step 2: Check hex code usage

    Hex codes must start with '#'. Omitting '#' for hex colors like 'FF8800' or using lowercase without '#' is invalid.
  3. Final Answer:

    plt.plot(x, y1, color='red') plt.plot(x, y2, color='#FF8800') -> Option A
  4. Quick Check:

    Named colors no '#', hex codes start with '#' [OK]
Hint: Named colors no '#'; hex codes start with '#' [OK]
Common Mistakes:
  • Adding '#' to named colors
  • Omitting '#' in hex codes
  • Using lowercase hex without '#'
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