Skip to main content
L
Loopaloo
Buy Us a Coffee
All ToolsImage ProcessingAudio ProcessingVideo ProcessingDocument & TextPDF ToolsCSV & Data AnalysisConverters & EncodersWeb ToolsMath & ScienceGames
Guides & BlogAboutContact
Buy Us a Coffee
L
Loopaloo

Free online tools for developers, designers, and content creators. Your files are processed in your browser and are never uploaded - no accounts required. A few network utilities (like What's My IP and Currency Converter) call public APIs to do their job and say so on their pages.

support@loopaloo.com

Tool Categories

  • Image Tools
  • Audio Tools
  • Video Tools
  • Document & Text
  • PDF Tools
  • CSV & Data
  • Converters
  • Web Tools
  • Math & Science
  • Games

Company

  • About Us
  • Contact
  • Blog
  • FAQ

Legal

  • Privacy Policy
  • Terms of Service
  • Disclaimer

Support

Buy Us a Coffee

© 2026 Loopaloo. All rights reserved. Built with privacy in mind.

Privacy|Terms|Disclaimer
  1. Home
  2. Math & Science
  3. Graphing Calculator
Add to favorites

Graphing Calculator

Plot functions with a real expression parser, poles drawn as gaps, and roots, turning points and integrals found by bracketing with the check printed.

Calculated locally in your browserMore math & scienceJump to full guide

Initializing in your browser…

You might also like

3D Graphing Calculator

Plot 3D surfaces from z = f(x, y), polar z = f(r, theta), or fully parametric equations. Exact evaluation via mathjs, real holes where a function is undefined, and OBJ or STL export for 3D printing.

Scientific Calculator

Exact arithmetic on rationals, with both evaluation conventions named and the precedence table the parser runs on printed on the page.

Chemistry Calculator

Molar mass, equation balancing, pH and the gas laws on all 118 elements of the IUPAC 2021 table, with every interval mass and every approximation named.

A worked calculation

You type 1/x, which every graphing tool draws, and want it drawn correctly.

Function

1/x  over  x ∈ [-10, 10]
What Graphing Calculator produces

Plot and analysis

Two separate branches, with a gap at x = 0
Roots: none
"The curve is broken at 1 pole, where the value crosses the whole window and changes sign."

Between the samples either side of zero the value goes from about -3000 to +3000. A plotter that joins them draws a vertical line where the function has an asymptote, and a root finder that looks for a sign change reports a root that is not there. This one breaks the curve and, having bisected the bracket, checks the value at the answer and finds it is not zero, so it reports no root.

What this calculator does

Plot up to eight functions of x with a real expression parser, find their roots, turning points and intersections by bracketing rather than by guessing, and integrate any of them with an error estimate. A pole is drawn as a gap rather than as a vertical line, and an expression that will not compile is explained rather than drawn as a blank canvas.

How it works

The shipped version of this tool evaluated an expression by rewriting the string with regular expressions and calling new Function once per point. Measured on the page, 14 of 18 expressions a person would type came out as NaN with nothing said and a blank canvas as the only symptom: 2x, x(x+1), abs(x), max(x,0), round(x), sign(x), sec(x), cot(x), asinh(x) and nthRoot(x,3) among them. It also compiled 20,000 functions in 123 ms, which for eight animating functions at sixty frames a second is 480,000 compilations a second. This version compiles each expression ONCE with mathjs, which is a real grammar rather than a set of substitutions, and evaluates it per point. Three other things a plotter has to get right are here too. A pole is not a line: tan(x) and 1/x jump from a large positive value to a large negative one between adjacent samples, and joining them draws a vertical stroke where the function has an asymptote, so segments are broken there and the page says how many breaks it made and why. A root is found by bisecting a sign change rather than by Newton steps from the middle of a bracket, which can walk out of the bracket entirely, and the value of the function at the root is printed so the answer can be checked; a sign change that is a pole rather than a root, like 1/x at zero, is not reported as one. And a turning point is refined by golden section rather than by comparing three consecutive samples, so it lands to machine precision rather than to the sample spacing.

How to use

  1. 1Type a function of x. Results and the plot update as you type
  2. 2Add more functions with the Add button, up to eight
  3. 3Drag the canvas to pan and use the zoom buttons, or type the window bounds directly
  4. 4Turn on the derivative to see it drawn as a dashed line
  5. 5Turn on the integral and set its limits to shade the area and get its value with an error estimate
  6. 6Use t in an expression and press Animate to see it move

Key features

  • A real expression grammar through mathjs: implicit multiplication, abs, max, min, round, sign, sec, nthRoot and the rest
  • Compiled once per expression change rather than once per point
  • Poles drawn as gaps, with the number of breaks and the reason for each reported
  • Roots found by bisection, with the value of the function at each one printed as the check
  • A sign change that is a pole distinguished from one that is a root
  • Turning points refined by golden section and classified by the second derivative
  • Intersections between two functions, found the same way
  • A definite integral by adaptive Simpson, with an error estimate and the evaluation count
  • The derivative by a five-point stencil with a step scaled to the point
  • Axes on a readable grid: ticks at 1, 2 or 5 times a power of ten
  • Pan by dragging, zoom, animate with t, and export the plot as a PNG
  • An expression that will not compile, or that evaluates to something other than a number, reported with the reason

When this is useful

  • Seeing what a function does

    Eight curves at once with their roots, turning points and intersections marked and listed.

  • Checking calculus homework

    The derivative drawn over the function, and a definite integral with the error it carries.

  • Functions with asymptotes

    tan, 1/x and rational functions drawn as they are, with the gaps in the right places.

  • Finding a root numerically

    Bisection cannot leave its bracket, and the value at the root is printed so the answer can be verified.

  • Animated families of curves

    Use t in the expression and watch the curve move.

Frequently asked questions

Why is there a gap in my curve?

Either the function has no value there (sqrt of a negative number, a logarithm of zero) or it has a pole. A pole is where the value crosses the whole window and changes sign between two adjacent samples; joining those points would draw a vertical line where there is an asymptote. The page says how many breaks it made and which kind they were.

Why does it say 1/x has no roots?

Because it does not. The function changes sign at zero, which is what a naive root finder looks for, but it has a pole there rather than a crossing. Every bracket is bisected and the value there checked, so a pole is not reported as a root.

What can I type?

Anything mathjs parses: implicit multiplication (2x, 3(x+1)), the whole function library (abs, max, min, round, sign, sec, csc, cot, nthRoot, gamma, hypot), constants (pi, e) and t for animation. Note that x(x+1) is read as CALLING x, which is a real ambiguity in the grammar, so write x*(x+1) or x (x+1) instead.

How accurate is the integral?

It uses adaptive Simpson, which splits an interval wherever the two halves disagree with the whole by more than the tolerance, and it reports the resulting error estimate and how many function evaluations it took. A number without an error estimate is a number with no idea how far out it is.

How are turning points found?

By scanning for a sign change in the derivative and then refining with golden section, which converges to machine precision inside its bracket. Comparing three consecutive samples, which is the usual shortcut, finds a turning point only to within the sample spacing.

Why does an expression sometimes show an error instead of just not drawing?

Because a blank canvas is not an answer. The expression is compiled and then evaluated once as a check before it is used, so an unknown symbol (which mathjs only discovers at evaluation time) is caught and named rather than silently producing NaN at every one of a thousand points.

Private by design

Every calculation runs locally in your browser. Your numbers and expressions are not transmitted or stored.