Bird
Raised Fist0
Matplotlibdata~5 mins

Mathematical expressions with LaTeX in Matplotlib

Choose your learning style10 modes available
Introduction

We use LaTeX in matplotlib to show math formulas clearly on charts. It makes graphs easier to understand.

You want to label a graph axis with a math formula like a fraction or square root.
You need to add a title that includes Greek letters or symbols.
You want to show an equation inside a plot as part of the explanation.
You are making a presentation and want your charts to look professional with math notation.
Syntax
Matplotlib
plt.title(r'$your_math_expression$')
plt.xlabel(r'$your_math_expression$')
plt.ylabel(r'$your_math_expression$')
Use raw strings (prefix with r) to avoid errors with backslashes.
Put your LaTeX math code inside dollar signs $...$ to tell matplotlib it's math.
Examples
This sets the plot title to the linear equation y = mx + b.
Matplotlib
plt.title(r'$y = mx + b$')
This labels the x-axis with the Greek letter alpha.
Matplotlib
plt.xlabel(r'$\alpha$')
This labels the y-axis with the square root of x symbol.
Matplotlib
plt.ylabel(r'$\sqrt{x}$')
This adds the fraction a/b as text inside the plot at position (0.5, 0.5).
Matplotlib
plt.text(0.5, 0.5, r'$\frac{a}{b}$', fontsize=15)
Sample Program

This code plots a straight line y = 2x + 1. It uses LaTeX to label the title, x-axis, y-axis, and adds the equation as red text inside the plot.

Matplotlib
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = 2 * x + 1

plt.plot(x, y)
plt.title(r'$y = 2x + 1$')
plt.xlabel(r'$x$')
plt.ylabel(r'$y$')
plt.text(2, 15, r'$y = 2x + 1$', fontsize=14, color='red')
plt.grid(True)
plt.show()
OutputSuccess
Important Notes

Always use raw strings (r'...') when writing LaTeX in matplotlib to avoid errors with backslashes.

Not all LaTeX commands work in matplotlib, but common math symbols and Greek letters do.

You can combine text and math by mixing normal strings and LaTeX expressions.

Summary

LaTeX lets you write math formulas clearly on matplotlib charts.

Use raw strings and dollar signs to add math expressions.

This makes your graphs easier to read and look professional.

Practice

(1/5)
1. What is the correct way to include a simple fraction \(\frac{1}{2}\) in a matplotlib title using LaTeX?
easy
A. plt.title(r"$\frac{1}{2}$")
B. plt.title("$\frac{1}{2}$")
C. plt.title("\frac{1}{2}")
D. plt.title(r"\frac{1}{2}")

Solution

  1. Step 1: Use raw string for LaTeX in matplotlib

    Raw strings (prefix r) prevent Python from treating backslashes as escape characters.
  2. Step 2: Wrap LaTeX math expression in dollar signs

    Dollar signs tell matplotlib to interpret the string as math text.
  3. Final Answer:

    plt.title(r"$\frac{1}{2}$") -> Option A
  4. Quick Check:

    Raw string + $...$ = Correct LaTeX [OK]
Hint: Always use raw strings and $...$ for LaTeX in matplotlib [OK]
Common Mistakes:
  • Forgetting raw string causes errors
  • Missing dollar signs disables math mode
  • Using plain string with backslashes causes escape errors
2. Which of the following is the correct syntax to display the integral symbol \(\int\) in a matplotlib axis label?
easy
A. plt.xlabel(r"Integral \int")
B. plt.xlabel("\int")
C. plt.xlabel("$\int$")
D. plt.xlabel(r"$\int$ Integral")

Solution

  1. Step 1: Use raw string with dollar signs for LaTeX math

    Raw string avoids escape issues; dollar signs enable math mode.
  2. Step 2: Place integral symbol inside dollar signs

    Integral symbol \int must be inside $...$ to render properly.
  3. Final Answer:

    plt.xlabel(r"$\int$ Integral") -> Option D
  4. Quick Check:

    Raw string + $\int$ = Integral symbol shown [OK]
Hint: Put math symbols inside $...$ and use raw strings [OK]
Common Mistakes:
  • Not using $...$ around math symbols
  • Not using raw strings causing backslash errors
  • Placing math symbols outside math mode
3. What will be the output of this code snippet?
import matplotlib.pyplot as plt
plt.title(r"$\sqrt{16} = 4$")
plt.show()
medium
A. Title shows raw text including backslashes and braces
B. Title shows the square root symbol with '16 = 4' correctly formatted
C. Title shows 'sqrt{16} = 4' without square root symbol
D. Code raises a syntax error due to backslashes

Solution

  1. Step 1: Raw string with $...$ enables LaTeX math rendering

    The string r"$\sqrt{16} = 4$" renders the square root symbol with 16 inside.
  2. Step 2: plt.title displays the formatted math expression as title

    The plot title will show the square root symbol and the equation correctly.
  3. Final Answer:

    Title shows the square root symbol with '16 = 4' correctly formatted -> Option B
  4. Quick Check:

    Raw string + $\sqrt{}$ = Rendered square root [OK]
Hint: Raw string + $\sqrt{}$ shows square root symbol [OK]
Common Mistakes:
  • Not using raw string causes escape errors
  • Missing $...$ disables math rendering
  • Expecting plain text instead of formatted math
4. Identify the error in this matplotlib code that tries to display the Greek letter alpha \(\alpha\) in the legend:
plt.plot([1,2,3], label="$\alpha$")
plt.legend()
plt.show()
medium
A. Missing raw string prefix causing backslash escape error
B. Legend function is missing parentheses
C. Label string should not use dollar signs
D. Plot data is invalid

Solution

  1. Step 1: Check string for LaTeX math in label

    Using "$\alpha$" without raw string causes Python to treat \a as escape sequence.
  2. Step 2: Add raw string prefix to fix backslash escape

    Change label to r"$\alpha$" to correctly render Greek letter alpha.
  3. Final Answer:

    Missing raw string prefix causing backslash escape error -> Option A
  4. Quick Check:

    Use raw string for LaTeX labels [OK]
Hint: Always use raw strings for LaTeX in labels [OK]
Common Mistakes:
  • Forgetting raw string prefix
  • Removing dollar signs disables math mode
  • Misunderstanding legend syntax
5. You want to label the y-axis with the formula for the quadratic roots:
\(x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}\)
Which matplotlib code correctly displays this formula using LaTeX?
hard
A. plt.ylabel(r"x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}")
B. plt.ylabel("$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$")
C. plt.ylabel(r"$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$")
D. plt.ylabel("x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}")

Solution

  1. Step 1: Use raw string to avoid backslash escape errors

    The formula contains many backslashes, so raw string (r"...") is needed.
  2. Step 2: Wrap the entire formula in dollar signs for math mode

    Dollar signs enable LaTeX math rendering in matplotlib labels.
  3. Final Answer:

    plt.ylabel(r"$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$") -> Option C
  4. Quick Check:

    Raw string + $...$ = Correct LaTeX formula [OK]
Hint: Use raw string and $...$ to display complex formulas [OK]
Common Mistakes:
  • Not using raw string causes syntax errors
  • Missing dollar signs disables math rendering
  • Using plain strings with backslashes
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