Bird
Raised Fist0
Matplotlibdata~10 mins

Why bar charts compare categories in Matplotlib - Test Your Understanding

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

Complete the code to create a bar chart showing sales for each fruit category.

Matplotlib
import matplotlib.pyplot as plt
categories = ['Apples', 'Bananas', 'Cherries']
sales = [10, 15, 7]
plt.bar([1], sales)
plt.show()
Drag options to blanks, or click blank then click option'
Acategories
Bsales
Crange(len(sales))
D'Apples'
Attempts:
3 left
💡 Hint
Common Mistakes
Using sales instead of categories for x-axis
Using a single string instead of a list for x-axis
2fill in blank
medium

Complete the code to add labels to the x-axis showing category names.

Matplotlib
plt.bar(categories, sales)
plt.xlabel([1])
plt.show()
Drag options to blanks, or click blank then click option'
A'Fruit Type'
Bsales
Ccategories
D'Sales'
Attempts:
3 left
💡 Hint
Common Mistakes
Using the data list instead of a label string
Leaving the label blank
3fill in blank
hard

Fix the error in the code to correctly display the bar chart comparing categories.

Matplotlib
plt.bar(categories, [1])
plt.xticks(rotation=45)
plt.show()
Drag options to blanks, or click blank then click option'
A['10', '15', '7']
Bcategories
Csales
Drange(len(categories))
Attempts:
3 left
💡 Hint
Common Mistakes
Using categories instead of sales for bar heights
Using string versions of numbers instead of integers
4fill in blank
hard

Fill both blanks to create a bar chart with category names and sales, and add a title.

Matplotlib
plt.bar([1], [2])
plt.title('Sales by [3]')
plt.show()
Drag options to blanks, or click blank then click option'
Acategories
Bsales
CFruit Type
DApples
Attempts:
3 left
💡 Hint
Common Mistakes
Swapping categories and sales
Using a category name instead of a descriptive title
5fill in blank
hard

Fill all three blanks to create a bar chart comparing categories with labels and rotated x-axis labels.

Matplotlib
plt.bar([1], [2])
plt.xlabel('[3]')
plt.xticks(rotation=90)
plt.show()
Drag options to blanks, or click blank then click option'
Acategories
Bsales
CFruit Type
DSales
Attempts:
3 left
💡 Hint
Common Mistakes
Labeling x-axis as 'Sales' instead of 'Fruit Type'
Swapping categories and sales in the bar function

Practice

(1/5)
1. Why do bar charts use bars of different heights to represent data?
easy
A. To show data in a circular format
B. To display data as a continuous line
C. To show differences between categories clearly
D. To represent data using colors only

Solution

  1. Step 1: Understand bar chart basics

    Bar charts use bars where height or length shows the value for each category.
  2. Step 2: Identify purpose of different bar heights

    Different heights make it easy to compare values visually across categories.
  3. Final Answer:

    To show differences between categories clearly -> Option C
  4. Quick Check:

    Bar height = value difference [OK]
Hint: Bar height shows value size, making comparison easy [OK]
Common Mistakes:
  • Thinking bar charts show continuous trends like line charts
  • Confusing bar height with color meaning
  • Assuming bar charts are for circular data
2. Which of the following is the correct way to create a simple bar chart in matplotlib?
easy
A. plt.plot(['A', 'B'], [5, 7])
B. plt.bar(['A', 'B'], [5, 7])
C. plt.scatter(['A', 'B'], [5, 7])
D. plt.hist(['A', 'B'], [5, 7])

Solution

  1. Step 1: Recall matplotlib bar chart syntax

    The function plt.bar() creates bar charts with categories and their values.
  2. Step 2: Compare options to syntax

    Only plt.bar(['A', 'B'], [5, 7]) matches the correct bar chart syntax.
  3. Final Answer:

    plt.bar(['A', 'B'], [5, 7]) -> Option B
  4. Quick Check:

    plt.bar() = bar chart [OK]
Hint: Use plt.bar() for bar charts, not plt.plot() or plt.scatter() [OK]
Common Mistakes:
  • Using plt.plot() which makes line charts
  • Using plt.scatter() which makes scatter plots
  • Using plt.hist() which makes histograms
3. What will the following code display?
import matplotlib.pyplot as plt
categories = ['Apples', 'Bananas', 'Cherries']
values = [10, 15, 7]
plt.bar(categories, values)
plt.show()
medium
A. A bar chart with three bars showing values 10, 15, and 7 for Apples, Bananas, and Cherries
B. A line chart connecting points for Apples, Bananas, and Cherries
C. An error because plt.bar() needs numeric x values
D. A scatter plot with points at (Apples,10), (Bananas,15), (Cherries,7)

Solution

  1. Step 1: Analyze plt.bar() input

    Categories are strings and values are numbers, which is valid for plt.bar().
  2. Step 2: Understand output of plt.bar()

    It creates bars for each category with heights matching values.
  3. Final Answer:

    A bar chart with three bars showing values 10, 15, and 7 for Apples, Bananas, and Cherries -> Option A
  4. Quick Check:

    plt.bar(categories, values) = bar heights by values [OK]
Hint: plt.bar() with categories and values makes bars of those heights [OK]
Common Mistakes:
  • Thinking plt.bar() requires numeric x values only
  • Confusing bar chart with line or scatter plot
  • Expecting an error from string categories
4. The code below is intended to create a bar chart comparing sales for three products, but it raises an error. What is the problem?
import matplotlib.pyplot as plt
products = ['X', 'Y', 'Z']
sales = [20, 30]
plt.bar(products, sales)
plt.show()
medium
A. plt.show() is missing
B. plt.bar() cannot take string categories
C. The products list should be numeric
D. The sales list has fewer values than the products list

Solution

  1. Step 1: Check lengths of inputs

    Products has 3 items, sales has 2 items; lengths must match for plt.bar().
  2. Step 2: Understand error cause

    Mismatch causes ValueError because matplotlib can't pair categories with missing values.
  3. Final Answer:

    The sales list has fewer values than the products list -> Option D
  4. Quick Check:

    Equal lengths needed for categories and values [OK]
Hint: Ensure categories and values lists have same length [OK]
Common Mistakes:
  • Thinking plt.bar() can't use string categories
  • Forgetting plt.show() causes no plot but no error
  • Assuming numeric categories are required
5. You have sales data for four stores: Store A (100), Store B (150), Store C (90), Store D (150). You want to create a bar chart comparing these stores but want to highlight stores with the highest sales in a different color. How can you do this in matplotlib?
hard
A. Use plt.bar() with a color list that sets a different color for stores with sales 150
B. Use plt.plot() to draw lines connecting sales values
C. Use plt.bar() but set all bars to the same color
D. Use plt.scatter() with sales as x and stores as y

Solution

  1. Step 1: Identify highest sales values

    Stores B and D have the highest sales (150).
  2. Step 2: Create color list for bars

    Assign a special color (e.g., red) to bars for sales 150, and default color for others.
  3. Step 3: Use plt.bar() with colors

    Pass the color list to plt.bar() to highlight highest sales bars.
  4. Final Answer:

    Use plt.bar() with a color list that sets a different color for stores with sales 150 -> Option A
  5. Quick Check:

    Color list highlights categories by value [OK]
Hint: Use color list in plt.bar() to highlight specific bars [OK]
Common Mistakes:
  • Using plt.plot() which makes line charts, not bars
  • Setting all bars same color loses highlight
  • Using plt.scatter() which is for points, not bars
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