Bird
Raised Fist0
Data Analysis Pythondata~10 mins

Labels, titles, and legends in Data Analysis Python - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Labels, titles, and legends
Start plotting data
↓
Add title to plot
↓
Add x-axis label
↓
Add y-axis label
↓
Add legend for data series
↓
Show final plot
This flow shows the steps to add a title, axis labels, and a legend to a plot before displaying it.
Execution Sample
Data Analysis Python
import matplotlib.pyplot as plt
x = [1, 2, 3]
y1 = [2, 3, 5]
y2 = [3, 5, 7]
plt.plot(x, y1, label='Series 1')
plt.plot(x, y2, label='Series 2')
plt.title('Sample Plot')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
plt.legend()
plt.show()
This code plots two lines with labels, adds a title and axis labels, then shows a legend and displays the plot.
Execution Table
StepActionEffect on PlotOutput
1Plot line y1 with label 'Series 1'Line 1 appears on plotLine 1 visible, legend entry pending
2Plot line y2 with label 'Series 2'Line 2 appears on plotLine 2 visible, legend entry pending
3Add title 'Sample Plot'Title appears at topTitle visible: 'Sample Plot'
4Add x-axis label 'X Axis'Label appears below x-axisX-axis labeled 'X Axis'
5Add y-axis label 'Y Axis'Label appears beside y-axisY-axis labeled 'Y Axis'
6Add legendLegend box shows 'Series 1' and 'Series 2'Legend visible with correct labels
7Show plotPlot window opens with all elementsFinal plot displayed with lines, title, labels, legend
💡 Plot displayed with all labels, title, and legend added
Variable Tracker
VariableStartAfter Step 1After Step 2After Step 3After Step 4After Step 5After Step 6Final
x[1, 2, 3][1, 2, 3][1, 2, 3][1, 2, 3][1, 2, 3][1, 2, 3][1, 2, 3][1, 2, 3]
y1[2, 3, 5][2, 3, 5][2, 3, 5][2, 3, 5][2, 3, 5][2, 3, 5][2, 3, 5][2, 3, 5]
y2[3, 5, 7][3, 5, 7][3, 5, 7][3, 5, 7][3, 5, 7][3, 5, 7][3, 5, 7][3, 5, 7]
title'''''''Sample Plot''Sample Plot''Sample Plot''Sample Plot''Sample Plot'
xlabel'''''''''X Axis''X Axis''X Axis''X Axis'
ylabel'''''''''''Y Axis''Y Axis''Y Axis'
legendNoneNoneNoneNoneNoneVisible with labelsVisible with labelsVisible with labels
Key Moments - 3 Insights
Why do we add labels and titles after plotting the data?
Labels and titles are added after plotting because they describe the data shown. The execution_table shows plotting happens first (steps 1-2), then labels and title are added (steps 3-5).
What happens if we forget to call plt.legend()?
Without plt.legend() (step 6), the legend box does not appear even if labels are set on lines. The execution_table row 6 shows legend creation is a separate step.
Can we add multiple labels to the same plot?
Yes, each data series gets its own label when plotted (steps 1 and 2). The legend then shows all labels together (step 6).
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table at step 4. What label is added to the plot?
AY Axis
BSample Plot
CX Axis
DSeries 1
💡 Hint
Check the 'Action' and 'Effect on Plot' columns at step 4 in execution_table.
At which step does the legend become visible on the plot?
AStep 5
BStep 6
CStep 2
DStep 7
💡 Hint
Look for the row where 'Add legend' is the action in execution_table.
If we remove plt.title('Sample Plot'), what will be missing in the final plot?
ATitle
BX-axis label
CLegend
DData lines
💡 Hint
Refer to variable_tracker for 'title' variable changes and execution_table step 3.
Concept Snapshot
Labels, titles, and legends in plots:
- Use plt.title('Title') to add a plot title
- Use plt.xlabel('X label') and plt.ylabel('Y label') for axis labels
- Use label='name' in plt.plot() and plt.legend() to show legend
- Add these after plotting data lines
- They help explain what the plot shows
Full Transcript
This visual execution shows how to add labels, titles, and legends to a plot using matplotlib in Python. First, data lines are plotted with labels. Then a title is added at the top, followed by labels for the x and y axes. Next, a legend is created to explain the data series. Finally, the plot is displayed with all these elements visible. The execution table traces each step and its effect on the plot. The variable tracker shows how variables like title, xlabel, ylabel, and legend change during the process. Key moments clarify why labels come after plotting and the importance of calling plt.legend(). The quiz tests understanding of when and what labels appear. This helps beginners see the step-by-step building of a clear, informative plot.

Practice

(1/5)
1. What is the main purpose of adding a title to a chart in data visualization?
easy
A. To give the chart a clear heading that explains what it shows
B. To label the x-axis with numbers
C. To add colors to the chart
D. To describe the data source

Solution

  1. Step 1: Understand the role of a title in charts

    A title provides a clear heading that tells the viewer what the chart is about.
  2. Step 2: Compare options with the title's purpose

    Only To give the chart a clear heading that explains what it shows correctly describes the purpose of a title as a clear heading.
  3. Final Answer:

    To give the chart a clear heading that explains what it shows -> Option A
  4. Quick Check:

    Title = Clear heading [OK]
Hint: Titles are headings that explain the whole chart [OK]
Common Mistakes:
  • Confusing titles with axis labels
  • Thinking titles add colors
  • Mixing titles with legends
2. Which of the following is the correct way to add a legend to a Matplotlib plot in Python?
easy
A. plt.xlabel('Legend')
B. plt.title('Legend')
C. plt.legend()
D. plt.legend('show')

Solution

  1. Step 1: Recall the Matplotlib function for legends

    The function plt.legend() adds a legend to the plot.
  2. Step 2: Check other options for correctness

    Options A and B set x-axis label and title, not legend. plt.legend('show') uses incorrect syntax.
  3. Final Answer:

    plt.legend() -> Option C
  4. Quick Check:

    Legend function = plt.legend() [OK]
Hint: Use plt.legend() to show legends in Matplotlib [OK]
Common Mistakes:
  • Using plt.title() to add legend
  • Passing strings inside plt.legend() incorrectly
  • Confusing xlabel with legend
3. What will be the output of this code snippet?
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], label='Line 1')
plt.plot([3, 2, 1], label='Line 2')
plt.title('Sample Plot')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
plt.legend()
plt.show()
medium
A. A plot with two lines, a title, axis labels, and a legend showing 'Line 1' and 'Line 2'
B. A plot with no title and no legend
C. A plot with only one line and no labels
D. An error because legend labels are missing

Solution

  1. Step 1: Analyze the plot commands

    Two lines are plotted with labels 'Line 1' and 'Line 2'. Title and axis labels are set.
  2. Step 2: Understand legend and show functions

    Calling plt.legend() displays the legend with the given labels. plt.show() displays the plot.
  3. Final Answer:

    A plot with two lines, a title, axis labels, and a legend showing 'Line 1' and 'Line 2' -> Option A
  4. Quick Check:

    Legend and labels appear correctly [OK]
Hint: Labels in plot() + plt.legend() show legends automatically [OK]
Common Mistakes:
  • Forgetting to call plt.legend()
  • Assuming legend appears without labels
  • Confusing axis labels with legend
4. Identify the error in this code that prevents the legend from showing:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3])
plt.plot([3, 2, 1])
plt.legend()
plt.show()
medium
A. plt.legend() is called before plt.plot()
B. Missing labels in plot() calls for legend
C. plt.show() is missing
D. plt.title() is required for legend

Solution

  1. Step 1: Check plot() calls for labels

    Both plot calls lack the label argument, so legend has no text to display.
  2. Step 2: Verify legend and show usage

    Calling plt.legend() without labels results in an empty legend. plt.show() is present and plt.title() is not required.
  3. Final Answer:

    Missing labels in plot() calls for legend -> Option B
  4. Quick Check:

    Labels needed for legend [OK]
Hint: Add label='name' in plot() to show legend [OK]
Common Mistakes:
  • Calling plt.legend() before plot()
  • Thinking plt.title() affects legend
  • Forgetting to call plt.show()
5. You have a DataFrame with sales data for two products over 3 months. You want to plot both lines on the same chart with a title, axis labels, and a legend. Which code snippet correctly adds all these elements?
import pandas as pd
import matplotlib.pyplot as plt

data = {'Month': ['Jan', 'Feb', 'Mar'], 'ProductA': [100, 120, 130], 'ProductB': [90, 110, 115]}
df = pd.DataFrame(data)

# Which code below is correct?

A: plt.plot(df['Month'], df['ProductA'], label='Product A')
   plt.plot(df['Month'], df['ProductB'], label='Product B')
   plt.title('Sales Over Months')
   plt.xlabel('Month')
   plt.ylabel('Sales')
   plt.legend()
   plt.show()

B: plt.plot(df['ProductA'], df['Month'], label='Product A')
   plt.plot(df['ProductB'], df['Month'], label='Product B')
   plt.title('Sales Over Months')
   plt.xlabel('Sales')
   plt.ylabel('Month')
   plt.legend()
   plt.show()

C: plt.plot(df['Month'], df['ProductA'])
   plt.plot(df['Month'], df['ProductB'])
   plt.title('Sales Over Months')
   plt.xlabel('Month')
   plt.ylabel('Sales')
   plt.show()

D: plt.plot(df['Month'], df['ProductA'], label='Product A')
   plt.plot(df['Month'], df['ProductB'], label='Product B')
   plt.xlabel('Month')
   plt.ylabel('Sales')
   plt.show()
hard
A. Missing title and legend, so incomplete chart
B. Swaps x and y axes and labels, causing incorrect plot
C. Missing legend call, so no legend shown
D. Correctly plots both products with labels, title, axis labels, and legend

Solution

  1. Step 1: Check axis data and labels in each option

    Correctly plots both products with labels, title, axis labels, and legend uses Month on x-axis and sales on y-axis correctly with labels and title.
  2. Step 2: Verify legend and title presence

    Correctly plots both products with labels, title, axis labels, and legend includes label in plot calls and calls plt.legend() and plt.title(). Others miss legend or swap axes.
  3. Final Answer:

    Correctly plots both products with labels, title, axis labels, and legend -> Option D
  4. Quick Check:

    Labels + legend + title = Correctly plots both products with labels, title, axis labels, and legend [OK]
Hint: Match x, y data and add labels + legend + title [OK]
Common Mistakes:
  • Swapping x and y axes
  • Forgetting plt.legend() call
  • Missing title or axis labels
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