b2KIT

Implicit Curve Plotter

Visualize implicit equations f(x,y)=0 using marching squares. Supports circles, conics, and arbitrary implicit relations.

Tested tool guide Tested browser tools Checked August 16, 2026

What Implicit Curve Plotter does, with a checked example

An implicit curve is traced as the set of locations where an entered expression in x and y becomes zero. The plotter samples that scalar field across the displayed coordinate region and uses marching squares to join zero-crossing cells into visible curve segments. This lets it show closed loops, vertical tangents, and several branches without rewriting the relation as y = g(x). The main interpretive trap is treating the picture as a surface plot: it displays only the zero level, not the value or height of f elsewhere.

Worked example

A concrete input and expected output from the current implementation.

Input

x*x + y*y - 4

Expected output

A numerical zero-contour approximating a circle centered at (0, 0) with radius 2 and axis crossings at (-2, 0), (2, 0), (0, -2), and (0, 2).

Setting the expression to zero gives x*x + y*y = 4, so every point on the curve is distance sqrt(4) = 2 from the origin. At each listed crossing, the squared coordinates sum to 4.

How the result is produced

1

Marching-square cells

Marching squares examines each rectangular grid cell using the signs of f at its four corners. A cell whose corner classifications differ can contain the zero contour. The method selects a local segment pattern for that sign configuration, and segments from adjacent cells combine into the displayed trace. The resulting line is a numerical contour, not a symbolic solution of the equation.

2

Zero-set interpretation

The entered expression represents f(x,y), with the requested curve defined by f(x,y) = 0. Writing all terms on one side turns a relation L = R into the zero expression L - R. Because x and y remain peers, one x-coordinate may correspond to several y-coordinates. Closed curves, vertical portions, and disconnected conic branches can therefore appear in one plot.

Good uses

  • Checking the shape, symmetry, axes, and intercepts of a rearranged conic such as x*x/9 + y*y/4 - 1 = 0.
  • Viewing a relation that cannot be represented by one single-valued formula y = g(x), such as a circle or a two-branch hyperbola.
  • Locating loops, crossings, or disconnected branches of a polynomial zero set before attempting numerical root finding or symbolic analysis.

Limits and checks

  • The trace covers only the displayed coordinate region. A valid branch outside that region is absent, and a feature narrower than the sampling cells may be missed or drawn with visibly angular segments.
  • A cell with two positive and two negative corners arranged diagonally has more than one possible internal connection. The displayed choice is a discretized interpretation and may not establish the exact topology near a saddle or crossing.
  • A sign change is not always a root: 1/x changes sign across x = 0 although it is undefined there, so a contour can suggest a false branch. Conversely, x*x + y*y has an isolated zero at the origin without a surrounding sign change, so marching squares may omit it.

Common questions

Can I plot a relation that is not solved for y?

Yes. That is the purpose of an implicit plot: x and y do not need to be separated. Enter an expression whose zero set is the relation, such as x*x + y*y - 4 for a radius-2 circle. The result is a sampled contour, not an algebraic parametrization or proof that every component was found.

Why can a curve disappear or reconnect when the viewing region changes?

Marching squares makes local decisions from the samples in the current grid. A narrow loop, tangency, isolated zero, or pair of nearby branches may fall between samples. Changing the displayed region can change those samples and the apparent connections. The exact equation has not changed, and a blank plot does not prove that its real zero set is empty.

References and verification

The example and behavioral notes were checked against the browser implementation. Standards and primary references below define the relevant format, formula, or platform behavior.

Related Tools