Module 6: Eigenvalues
Most vectors, when you apply a matrix to them, change both their length and their direction. But a few special vectors only change their length. Those are eigenvectors.
An eigenvector of a matrix A is any non-zero vector v where:
Applying A to v gives back the same direction — just scaled by a number λ (the eigenvalue). The transformation stretches or flips the vector, but doesn't rotate it.
Imagine shooting many arrows in all directions from the origin. Apply a matrix to all of them. Most will rotate. But a few will land on the same line they started on — those are the eigenvectors.
If λ > 1: the eigenvector gets stretched.
If 0 < λ < 1: it gets squashed.
If λ < 0: it gets flipped and scaled.
If λ = 0: it gets sent to zero — this is the null space direction.
A rotation matrix has no real eigenvectors — it rotates every direction. The eigenvalues are complex numbers in that case. Try the rotation preset to see.
The interactive shows 16 radial vectors (faint) and their images (solid) after applying the matrix. The highlighted vectors are the eigenvectors — they land on the same line they started on.
Pick a preset or edit the matrix. Watch which directions stay in place.
import numpy as np
A = np.array([[3, 1], [1, 3]])
eigenvalues, eigenvectors = np.linalg.eig(A)
print(eigenvalues) # [4., 2.]
print(eigenvectors) # columns are the eigenvectorsλ₁ = 3, λ₂ = 2
Purple arrows = eigenvector directions (they only stretch, not rotate)