Vismo · Create · Explore · Topics · Guides · Pricing

Library · Community

Vismo Library — verified math & science animations

Ready for your next lesson or video. Watch free; download the video or adapt it to your lesson with any paid plan. Every item is reviewed by hand and checked at animation steps.

Browse by concept: algorithms · area · complexity · limits · sorting · derivatives · big o · convergence · pythagorean theorem · quadratic equations · regression · right triangle · sequences and series · sine · tangent lines · triangles · angles · arrays · exponential growth · functions · machine learning · normal distribution · optimization · variance · amplitude and period · binary search · central limit theorem · complex numbers · cosine · data structures · definite integrals · factoring · gravity · kinematics · linear transformations · matrices · perimeter · polynomials · probability · quadratic formula

Minimum spanning tree with Kruskal's algorithm
Minimum spanning tree with Kruskal's algorithm

A weighted graph is processed by sorting all edges from cheapest to most expensive, adding each one only if it…

Binary search tree: smaller left, larger right
Binary search tree: smaller left, larger right

Values 50, 30, 70, 20, 40, 60, 80, and 35 are inserted one at a time into a binary search tree, with each comp…

Hash tables: a formula decides where each key lives
Hash tables: a formula decides where each key lives

Seven buckets receive keys according to key mod 7, with collisions stacked as chains beneath each bucket. A lo…

Big-O: how running time grows with the input
Big-O: how running time grows with the input

This animation plots O(1), O(log n), O(n), O(n log n), O(n^2), and O(2^n) on shared axes, showing how each cur…

Linear search vs binary search: count the comparisons
Linear search vs binary search: count the comparisons

This animation compares two ways to find the value 51 in a sorted list of 16 numbers. Linear search checks eac…

Quicksort: pick a pivot, partition, recurse
Quicksort: pick a pivot, partition, recurse

This animation walks through the Lomuto partition method used in quicksort, choosing the last element as pivot…

Merge sort: split, then merge sorted halves
Merge sort: split, then merge sorted halves

An array of eight values is recursively divided into halves until single elements remain, then pairs are merge…

Selection sort: find the smallest, put it in place
Selection sort: find the smallest, put it in place

This animation visualizes selection sort by highlighting the unsorted portion of an array, using a yellow scan…

Insertion sort: grow a sorted prefix
Insertion sort: grow a sorted prefix

This animation shows insertion sort in action: each new value is lifted from the array and slid leftward past …

Bubble sort: swap neighbours until nothing moves
Bubble sort: swap neighbours until nothing moves

Six numbers are sorted using bubble sort, with each pass comparing neighboring values and swapping them when t…

Snell's law: light bends toward the normal in glass
Snell's law: light bends toward the normal in glass

A light ray travels from air into glass, bending according to n1 sin(theta1) = n2 sin(theta2). As the incident…

Where e comes from: compounding more and more often
Where e comes from: compounding more and more often

This animation tracks one dollar growing under 100% annual interest as the number of compounding periods incre…

The normal distribution: the 68-95-99.7 rule
The normal distribution: the 68-95-99.7 rule

A normal distribution curve is built up with shaded bands marking one, two, and three standard deviations from…

Superposition: waves add point by point
Superposition: waves add point by point

Two sine waves of equal frequency are plotted alongside their sum as the phase offset sweeps continuously from…

Conservation of energy: a pendulum trades height for speed
Conservation of energy: a pendulum trades height for speed

An animated pendulum swings back and forth while live bar graphs track kinetic and potential energy at every i…

Simple harmonic motion: spring, mass, sine wave
Simple harmonic motion: spring, mass, sine wave

A block attached to a spring oscillates back and forth while its position x(t) = A cos(omega t) is traced live…

Logistic regression: a separating line and a probability curve
Logistic regression: a separating line and a probability curve

Two clusters of labeled points sit on a plane while a straight line rotates and shifts, searching for the orie…

Underfitting and overfitting
Underfitting and overfitting

Ten noisy training points and three held-out test points are fit with polynomials of degree 1, 3, and 9. The a…

k-nearest neighbours: ask the closest points
k-nearest neighbours: ask the closest points

Two labeled classes of points sit on a plane alongside one new, unlabeled point. For k = 1, 3, and 7, the anim…

Gradient descent: walk downhill on the loss
Gradient descent: walk downhill on the loss

A ball rolls along the parabola L(w) = (w-3)^2 + 1, starting at w = -1 and updating via w <- w - eta dL/dw wit…

Inverse functions are reflections across y = x
Inverse functions are reflections across y = x

This animation plots e^x and ln x on the same coordinate grid alongside the line y = x, showing how the two cu…

Eigenvectors keep their direction under a matrix
Eigenvectors keep their direction under a matrix

This animation shows a linear transformation acting on the plane, with a grid of vectors sweeping and stretchi…

Bayes' theorem: a positive test is not a diagnosis
Bayes' theorem: a positive test is not a diagnosis

A population of 200 people, 5% sick, is tested with a 90% sensitive, 90% specific test. The animation counts o…

The law of cosines is Pythagoras with a correction
The law of cosines is Pythagoras with a correction

A triangle with sides a and b and included angle C morphs while c is computed live from c squared equals a squ…

The binomial distribution: heads in n coin flips
The binomial distribution: heads in n coin flips

Bar charts show P(k) = C(n,k)/2^n for n = 1, 2, 3, 4, 6, 8, and 10, with heights generated directly from Pasca…

Exponential decay: every half-life halves what is left
Exponential decay: every half-life halves what is left

Bars shrinking from 100% to 50%, 25%, 12.5%, and 6.25% illustrate how a radioactive sample loses the same frac…

Why the area of a circle is pi r^2
Why the area of a circle is pi r^2

A circle is sliced into 16 equal sectors, then unfolded and reassembled into a shape resembling a rectangle wi…

The harmonic series diverges
The harmonic series diverges

Bars representing 1/n shrink toward zero, illustrating why it seems the sum should settle down. The animation …

The squeeze theorem: why sin x / x tends to 1
The squeeze theorem: why sin x / x tends to 1

This animation visualizes why sin x / x approaches 1 as x approaches 0, even though the function itself is und…

Least squares: the line with the smallest squared errors
Least squares: the line with the smallest squared errors

Seven scattered points appear alongside a movable line, with vertical residuals shown as squares whose areas s…

Multiplying complex numbers rotates and scales
Multiplying complex numbers rotates and scales

Two complex numbers, z = 1 + i and w = 0.5 + 1.5i, are plotted on the complex plane and multiplied together. T…

Pythagorean Theorem With A 3-4-5 Triangle
Pythagorean Theorem With A 3-4-5 Triangle

A right triangle with legs 3 and 4 units and hypotenuse 5 units is drawn on screen, with squares built on each…

Why sin^2 + cos^2 = 1
Why sin^2 + cos^2 = 1

A point travels around the unit circle while its horizontal and vertical projections trace cosine and sine val…

Optimization: the biggest rectangle for a fixed perimeter
Optimization: the biggest rectangle for a fixed perimeter

An animation shows a rectangle with fixed perimeter 20 changing shape as its width varies, tracing the area fu…

Feature Engineering For Numerical Data
Feature Engineering For Numerical Data

This animation walks through how raw numerical data becomes usable features for machine learning. It visualize…

The discriminant decides how many real roots
The discriminant decides how many real roots

A parabola y = x^2 - 2x + c shifts vertically as c moves from -3 to 1 to 3, showing how the number of real roo…

Newton's method: follow the tangent to the root
Newton's method: follow the tangent to the root

Starting from x0 = 2.5 on f(x) = x^2 - 2, this animation draws each tangent line and follows it down to the x-…

1/2 + 1/4 + 1/8 + ... = 1: filling a square
1/2 + 1/4 + 1/8 + ... = 1: filling a square

A unit square is progressively filled by repeatedly halving the remaining area, generating the series 1/2 + 1/…

Taylor polynomials of sin x
Taylor polynomials of sin x

This animation overlays the sine curve with its Taylor polynomials of degree 1, 3, 5, 7, 9, and 11, drawn one …

The fundamental theorem of calculus: area has a derivative
The fundamental theorem of calculus: area has a derivative

A curve f is shown alongside a second graph tracking A(x), the running area under f from 0 to x. As x sweeps r…

The derivative as the limit of secant slopes
The derivative as the limit of secant slopes

An animation tracks secant lines through the fixed point (2, f(2)) on f(x) = x^2/4 + 1/2 as the second point s…

Completing the square, literally
Completing the square, literally

An x-by-x square is joined by two strips of width 3/2, representing the algebraic expression x squared plus 3x…

Le Chatelier's principle: push an equilibrium and it pushes back
Le Chatelier's principle: push an equilibrium and it pushes back

This animation depicts the Haber process equilibrium, N2 + 3H2 in balance with 2NH3, showing four gas molecule…

Euclid's algorithm as squares in a rectangle
Euclid's algorithm as squares in a rectangle

A 48 by 18 rectangle is filled with the largest possible squares in stages: two 18-squares leave a 12 by 18 st…

Sine and cosine are the unit circle's shadows
Sine and cosine are the unit circle's shadows

A point travels around the unit circle while its vertical and horizontal coordinates are tracked in real time.…

Projectile motion: two independent motions
Projectile motion: two independent motions

An animation of a ball launched at an angle, splitting its motion into a constant horizontal velocity and a ve…

The central limit theorem, one sample at a time
The central limit theorem, one sample at a time

Starting from a skewed exponential population, the animation builds sampling distributions of the mean for sam…

Why a² + b² = c²: rearrange four triangles
Why a² + b² = c²: rearrange four triangles

Two identical large squares each contain four congruent right triangles arranged differently. In one square th…

A matrix is a transformation of the plane
A matrix is a transformation of the plane

This animation shows how the matrix A = [[2,1],[0,1]] transforms the plane by tracking where the basis vectors…

Riemann sums become the integral
Riemann sums become the integral

This animation approximates the area under y = x^2 from 0 to 2 using rectangles, starting with four and doubli…

Constructing An Equilateral Triangle With Compass
Constructing An Equilateral Triangle With Compass

This animation demonstrates the classical ruler-and-compass method for constructing an equilateral triangle wi…

Drawing A Line Segment With A Ruler
Drawing A Line Segment With A Ruler

This animation demonstrates how to construct a line segment of exact length using a ruler, a foundational skil…

Solving Second-Order Linear ODEs
Solving Second-Order Linear ODEs

This animation walks through solving a linear second-order differential equation with constant coefficients by…