Skip to main content
appkiro.com

Graphing Calculator

Plot mathematical functions and explore equations visually when a graph explains more than raw numbers.

Practical guide

The Graphing Calculator is a free, browser-based tool for plotting mathematical functions, equations, and inequalities on an interactive coordinate plane. Type an expression such as x^2, sin(x), or 2*x + 1 and the curve is drawn instantly; you can stack several functions in different colours, drag to pan, scroll to zoom around the cursor, and read off exact coordinates with the trace feature. Every expression is parsed and evaluated locally with the mathjs library and rendered on an SVG canvas, so nothing you type is uploaded to a server and the page keeps working offline once it has loaded. When you also need the precise number behind a point, open the scientific calculator alongside it.

Where this fits

See the shape of a function

A formula like y = x^2 - 3x + 2 is hard to picture from the symbols alone. Plotting it shows the parabola, where it crosses the x-axis, and where its minimum sits — often the fastest way to understand what a function actually does.

Check homework and catch mistakes

Graphing an answer next to the original problem makes sign errors, missing roots, and wrong slopes obvious. If the curve does not pass through the points you expect, the algebra usually needs another look.

Demonstrate a concept live

Teachers and tutors can change a coefficient and watch the curve move in real time, which makes ideas like slope, intercepts, period, and amplitude concrete during a lesson or screen share.

Compare several functions at once

Plot a function and its transformation together — for example sin(x) and sin(2*x), or x^2 and (x-1)^2 + 3 — to see exactly how a shift, stretch, or reflection changes the graph. Each expression keeps its own colour.

Shade an inequality

Switch the operator from = to <, >, ≤, or ≥ to draw the solution region of an inequality instead of a single curve, with a dashed boundary for strict inequalities and a solid one for ≤ and ≥.

Read an exact value at a point

The trace input evaluates every visible function at a chosen x and lists the matching y values, so you can answer questions like what is f(2.5) without leaving the graph or doing the arithmetic by hand.

How to use Graphing Calculator

  1. 1Type a function of xEnter an expression using x as the variable — for example x^2, sin(x), sqrt(x), 1/x, or 2*x + 1. The graph updates as you type, and an invalid expression is flagged inline instead of breaking the plot.
  2. 2Choose equation or inequalityClick the operator button to cycle through =, <, >, ≤, and ≥. Equality draws a curve; the four inequalities shade the region where the condition holds.
  3. 3Add and colour more functionsUse Add function to stack another row. Each row has a colour swatch you can cycle, an eye icon to hide it without deleting it, and a trash icon to remove it.
  4. 4Pan and zoom to frame the graphDrag inside the canvas to move the view, and scroll the wheel to zoom in or out around the cursor. Type exact bounds into the X range and Y range inputs when you need a specific window.
  5. 5Use the zoom presetsZStandard returns to -10..10, ZTrig sets a ±2π by ±4 window for trigonometry, ZDecimal gives a tight ±1 close-up, and ZSquare adjusts the Y range so circles look round rather than stretched. Reset restores the default view.
  6. 6Trace exact valuesType an x value in the Trace box and press Enter or the crosshair button. The tool evaluates every visible function at that x and stacks the result, keeping the last ten lookups until you clear them.

Practical notes

Expression syntax

Use ^ for powers (x^2), * for multiplication (2*x, though 2x also works), and parentheses to group terms. The constants pi and e are recognised, and common functions include sin, cos, tan, sqrt, abs, and exp.

log is base 10, ln is natural

In this tool log means the base-10 logarithm and ln means the natural logarithm (base e). This matches the convention used in most classrooms, so write ln(x) when you want the natural log rather than log(x).

Asymptotes are handled automatically

Functions with breaks such as 1/x, tan(x), or log(x) are sampled and split into continuous segments, so the curve is not joined by a vertical line across an asymptote or a gap where the function is undefined.

Use ZSquare when shapes look stretched

Because the canvas is wider than it is tall, a circle or a 45-degree line can look distorted after panning. ZSquare rescales the Y range to a 1:1 aspect ratio so geometry appears correct.

Zoom has sensible limits

Zooming is clamped between a visible range of 1 and 10000 to keep the grid readable. When you need a window outside that, or an exact one, type the numbers directly into the X and Y range fields.

Toggles and dark mode

Hide the grid, axis lines, or tick numbers independently for a cleaner screenshot, and the whole graph follows light or dark mode with axes and labels that stay readable on either background.

Plot the expression to understand its shape, then read off the precise numbers you need and prepare any real-world data in the right units or base before charting it.

  1. 1

    Plot the function here

  2. 2

    Scientific Calculator

  3. 3

    Unit Converter

  4. 4

    Base Converter

Questions worth checking

What functions and operators can I plot?

Any single-variable expression in x that mathjs understands: powers (x^3), roots (sqrt(x)), trigonometry (sin, cos, tan), logarithms (log for base 10, ln for natural), exponentials (exp(x)), absolute value (abs(x)), and arithmetic with +, -, *, /, and parentheses. The constants pi and e are built in.

How do I graph an inequality?

Click the operator button next to the expression and cycle from = to <, >, ≤, or ≥. The tool then shades the region that satisfies the inequality instead of drawing a single line. Strict inequalities (< and >) use a dashed boundary; ≤ and ≥ use a solid one.

Can I plot more than one function at the same time?

Yes. Use Add function to create as many rows as you need. Each gets its own colour, can be hidden with the eye icon, and can be removed with the trash icon, which makes it easy to compare a function with its transformation.

What is the difference between log and ln here?

log is the base-10 logarithm and ln is the natural logarithm (base e). The tool overrides the library default so the names match standard mathematical convention.

How do I find the y-value at a specific x?

Type the x value into the Trace box and press Enter or click the crosshair. The tool evaluates every visible function at that point and lists each y value with its colour, keeping the last ten lookups in a stack you can clear at any time.

Does it handle functions with asymptotes, like 1/x or tan(x)?

Yes. The function is sampled across the view and broken into continuous segments, so an asymptote or a region where the function is undefined leaves a clean gap instead of a misleading vertical line.

Is anything I type sent to a server?

No. Expressions are parsed, evaluated, and drawn entirely in your browser. Nothing is uploaded, and the tool continues to work without a network connection once the page has loaded.

Can I plot a vertical line such as x = 3, or a full circle?

The tool plots functions of x, where each x has one y value, so it cannot draw a vertical line or a complete circle as a single equation. You can approximate a circle by plotting its upper and lower halves, for example sqrt(1 - x^2) and -sqrt(1 - x^2).

Why does scrolling on the graph zoom instead of scrolling the page?

The canvas captures the mouse wheel so it can zoom around the cursor. Move the pointer off the graph to scroll the page normally, or use the X and Y range inputs to set the view without scrolling.

Does it work on mobile and offline?

Yes. The interface is responsive for touch screens, and because all computation runs locally the graph keeps working after the first load even with no connection.