MT Math Tools

Graphing Calculator

Plot one or more y = f(x) functions on a canvas with zoom and pan, parsed safely with mathjs.

🔒 Runs entirely in your browser — nothing is uploaded

Scroll to zoom, drag to pan.

Advertisement

Visualize functions on a shared grid

A graph turns an abstract formula into a shape you can read at a glance. This graphing calculator samples each function you enter across the visible window and connects the points to draw a smooth curve. Type one expression per line in terms of x, such as x^2, sin(x), 1/x or sqrt(x). Every line is parsed by the mathjs grammar, so a wide range of powers, roots, trigonometric, exponential and logarithmic functions are available, and several curves can share the same axes in distinct colors for easy comparison.

The view is interactive. Scroll the mouse wheel to zoom toward the cursor and click-drag to pan across the plane, which lets you inspect roots, intercepts, asymptotes and turning points without re-typing anything. The axes and gridlines rescale automatically as you move, and a reset button returns to a balanced default window. Because the curve is re-sampled every frame, panning into a new region always shows accurate detail rather than a stretched image.

Reading the plot

The horizontal axis is x and the vertical axis is y, meeting at the origin in the middle of the default view. Points where a curve crosses the x-axis are the real roots of the equation f(x) = 0, and the height of a curve at a given x is the function's value there. Comparing two curves shows where they intersect, which corresponds to solving f(x) = g(x). Functions with division can shoot off to infinity near values that make the denominator zero; the calculator breaks the line at those jumps so the asymptote is not drawn as a misleading vertical streak.

Accuracy and privacy

Sampling uses many points across the width of the canvas, which is accurate for smooth functions but can miss extremely rapid oscillations between samples, so zoom in to confirm fine detail. Values are computed with standard double precision. Everything runs locally in your browser: the functions you type are never uploaded, nothing is stored between visits and no external graphing service is contacted, so you can explore ideas privately and instantly.

How to use

  1. Enter functionsType one y = f(x) per line, for example x^2 or sin(x). Leave out the y = if you prefer.
  2. PlotPress plot to draw every function on the same axes with distinct colors.
  3. ExploreScroll to zoom and drag to pan. Reset returns to the default view.

Frequently asked questions

What functions can I plot?
Any expression mathjs understands in terms of x, including powers, roots, trig, exp and log.
How do I zoom and pan?
Use the mouse wheel to zoom toward the cursor and click-drag to pan the view.
Can I plot several curves at once?
Yes. Put each function on its own line and they are drawn together in different colors.
Does plotting send data anywhere?
No. Functions are parsed and sampled in your browser and drawn on a local canvas.
Advertisement