HomeArticlesMatrix Transformations

Matrix Transformations: Reading a 2x2 Matrix Like a Map

How a 2x2 matrix's columns predict the whole transformation, why the determinant measures area, and what eigenvectors reveal about the directions a matrix leaves alone.

mysimulator teamUpdated June 2026≈ 7 min read▶ Open the simulation

A 2x2 matrix is a rule for moving every point at once

A 2×2 matrix does not just multiply numbers -- applied to every point (x, y) in the plane, it defines a linear transformation: a rule that moves the whole plane at once while keeping the origin fixed and keeping straight lines straight and evenly spaced. Everything the matrix does to the entire infinite plane is completely determined by where it sends just two vectors, (1,0) and (0,1), because any point is a combination of those two:

[ a  b ] [x]   [ a*x + b*y ]
[ c  d ] [y] = [ c*x + d*y ]

column 1, (a,c)  -- where (1,0) lands
column 2, (b,d)  -- where (0,1) lands

Read a matrix by its columns and you can predict the whole transformation without multiplying a single point: the first column is literally the new position of the point (1,0), the second column is the new position of (0,1), and every other point moves by linear interpolation between them.

live demo · the plane warping under a live 2x2 matrix● LIVE

Rotation, scale and shear are all the same object

Every familiar 2-D transformation is just a specific choice of the four numbers a, b, c, d:

rotation by angle theta:   [ cos(theta)  -sin(theta) ]
                           [ sin(theta)   cos(theta) ]

scale by (sx, sy):        [ sx  0  ]
                           [ 0   sy ]

shear (horizontal):       [ 1  k ]
                           [ 0  1 ]

A rotation matrix's columns are always unit-length and perpendicular to each other -- that is the algebraic signature of a rotation, and it is why rotations never distort shapes, only reorient them. Scaling matrices are diagonal, stretching each axis independently. Shear keeps one axis fixed while sliding the other proportionally to distance along it, turning a square into a parallelogram. Stacking several transformations is just multiplying their matrices together, in the order they are applied.

The determinant: how much area a matrix keeps or destroys

The determinant, ad - bc for a 2×2 matrix, has a precise geometric meaning: it is the signed factor by which the transformation scales area. A unit square maps to a parallelogram whose area is exactly |det|. If det = 2, every shape's area doubles; if det = 0.5, every area halves; and if det = 0, the transformation crushes the entire 2-D plane down onto a line or a single point -- a total, irreversible loss of one dimension, which is exactly why a matrix with determinant 0 has no inverse.

det = a*d - b*c

det > 0   orientation preserved (no flip), area scaled by |det|
det < 0   orientation flipped (a mirror is hiding in there), area scaled by |det|
det = 0   the plane collapses onto a line or a point -- not invertible

The sign of the determinant matters too: a negative determinant means the transformation includes a reflection, flipping orientation (clockwise becomes counterclockwise) even while it may preserve area magnitude.

Eigenvectors: the directions the matrix does not turn

For almost every direction in the plane, applying the matrix rotates that direction to point somewhere new. An eigenvector is the exception: a direction that the matrix only stretches or shrinks, never rotates off its own line. The amount of stretch is its eigenvalue λ:

M v = lambda * v

v         eigenvector -- a direction unchanged by the transformation (up to scale)
lambda    eigenvalue -- how much that direction is stretched (or flipped, if negative)

For a pure shear, one eigenvector points along the fixed axis (eigenvalue 1, unchanged) and there is only that one independent eigen-direction. For a pure rotation (other than 0 or 180 degrees) there are no real eigenvectors at all -- every direction turns, which is the algebraic fingerprint of a rotation and the reason its eigenvalues come out as a complex-conjugate pair instead of real numbers. Eigenvectors matter far beyond this simulation: they are the axes along which repeated application of a matrix (as in a Markov chain, a physics mode, or a machine-learning covariance matrix) behaves simply, growing or shrinking by a fixed factor each time rather than tangled up with every other direction.

Frequently asked questions

What is the fastest way to predict what a matrix does, without multiplying every point?

Read its two columns. The first column is exactly where the matrix sends the point (1,0); the second column is exactly where it sends (0,1). Since every other point in the plane is a combination of those two, seeing where the columns land tells you the whole transformation at a glance.

Why does a determinant of zero mean the matrix has no inverse?

The determinant is the factor by which the transformation scales area. A determinant of zero means every shape's area is crushed to zero -- the entire 2-D plane collapses onto a single line or point. Information about which of the (now infinitely many) original points mapped to a given output is lost, so there is no way to reverse the transformation and no inverse matrix exists.

Why does a pure rotation matrix have no real eigenvectors?

An eigenvector is a direction the matrix only stretches, never rotates away from itself. A genuine rotation (other than by 0 or 180 degrees) turns every single direction in the plane by the same angle, so there is no direction left unrotated -- algebraically this shows up as the eigenvalues coming out as a complex-conjugate pair rather than real numbers.

Try it live

Everything above runs in your browser — open Matrix Transformations and change the parameters while it is running. Nothing is installed, nothing is uploaded, the whole model lives in one tab.

▶ Open Matrix Transformations simulation

What did you find?

Add reproduction steps (optional)