Mathematical Function Grapher

Plot algebraic and trigonometric functions in real time on an interactive Cartesian plane. Supports dynamic X/Y coordinate tracking and vector SVG rendering.

Configuration & Input
Graph View Boundaries
Shadow Preview
X: 0.00 | Y: 0.00

User Guide: SVG Function Grapher

A **function grapher** is an essential analytical utility designed for students, educators, and science professionals. It grants the ability to visually interpret algebraic, polynomial, or trigonometric expressions on a standard two-dimensional grid. Plotting a function simplifies finding roots, coordinate intercepts, gradient behaviors, local extrema, asymptotes, and boundaries.

Our responsive graphing calculator utilizes the classic **Cartesian coordinate system**. Instead of loading massive third-party chart scripts or invoking slow backend rendering, this utility evaluates formulas fully client-side. The tool generates clean **SVG (Scalable Vector Graphics)** math curves instantly. Since it relies on vectors, the resulting curve scales perfectly and allows responsive coordinate tracking as you glide the mouse pointer.

How to plot multiple functions and implicit curves (e.g. circles or hearts)?

This graphing calculator is specialized in tracing **explicit** functions in the form $y = f(x)$ (where the $y$ variable is isolated on one side, such as $y = x^2 - 4$).

If you wish to plot an **implicit** equation (where $y$ is not isolated and multiple $y$ values exist for a single $x$, such as the equation of a circle $x^2 + y^2 = 9$ or the famous mathematical heart curve $(x^2 + y^2 - 1)^3 - x^2 y^3 = 0$), you must **isolate $y$ and split the equation into separate explicit functions**, then plot them simultaneously using the **"Add Color"** button:

  • **Example 1: Circle with radius 3 ($x^2 + y^2 = 9$)**
    Solving for $y$ yields $y = \pm\sqrt{9 - x^2}$. Plot it by adding two distinct functions:
    • **$f_1(x)$ (Top half):** `sqrt(9 - x^2)`
    • **$f_2(x)$ (Bottom half):** `-sqrt(9 - x^2)`
  • **Example 2: Mathematical Heart ($(x^2 + y^2 - 1)^3 - x^2 y^3 = 0$)**
    Solving the quadratic equation resulting from the heart equation splits it into two explicit curves. You can input them using standard mathematical notation:
    • **$f_1(x)$ (Top half):** `(cbrt(x*x) + sqrt(cbrt(x*x*x*x) - 4*x*x + 4)) / 2`
    • **$f_2(x)$ (Bottom half):** `(cbrt(x*x) - sqrt(cbrt(x*x*x*x) - 4*x*x + 4)) / 2`
    *Tip: Set your graph X and Y boundaries to span from -2 to 2 for a stunning high-definition heart visual.*
How to use this online tool?
  1. Input your expression inside the **Function Formula f(x)** field. You can compose formulas easily. To help user inputs, the parser automatically translates notation like `x^2` into JavaScript exponents (`x**2`), and standard operations like `sin(x)` or `cos(x)` into native `Math` commands.
  2. Click **"Add Color"** to append additional fields and plot up to 6 functions simultaneously, each mapped to a distinct curve color automatically.
  3. Fine-tune your coordinate boundaries inside the **Graph View Boundaries** section to zoom in or out of the X and Y axes (default values span from -10 to 10).
  4. Press the **"Plot Function"** button to instantly draw the coordinate grid and trace the mathematical curves.
  5. Hover your mouse or tap and drag over the visualizer container to inspect **exact (X, Y) math coordinates** in real-time inside the top right badge.
Data Privacy & Security Guaranteed
Local Computation: Your research privacy is completely guaranteed. All expression scanning, variable mapping, and vector path generation are computed directly in your browser. No data ever leaves your computer.