Logo

Warning: you seem to be using this with a small device. Unfortunately, this application is not fully stable on some phones. Please use a computer or a wireless mouse for best results.

Your browser does not support canvas. Please use a recent version of a major browser, ex: Firefox.

Quick Start

This quick start will show you the basic features of the program

Functions

Each equation in the upper left corner can be edited to any valid math equation. You can use most normal math symbols, including polar coordinates and trig.

Press the + button beneath the functions to add a new equation. The colors of the circular badge beside each equation will adjust to match the shapes on screen.

Constants

Each constant in the top right bar can be changed by clicking and dragging or scrolling.

New constants appear when you use them in an equation. Constants can be used in multiple functions; they will all hold the same value.

Settings

The settings bar on the bottom controls the way the graph looks, and each one can be changed just like the constants.

Precision changes how accurate the graph is; the higher it is, the fewer errors, but the more processing power that is required.

One last thing:

Here are a few tips to get started:

  • If the function disappears, try increasing size or adding in a constant to experiment with
  • Use division sparingly. Dividing by 0 will result in \infty, leading to rendering errors, so try multiplying both sides to cancel out division
  • Enjoy!

Advanced Tutorial

This tutorial will show you all the features of the program.

Controls

There are only a few main controls, but they aim to be as flexible as possible.

In the top left corner is the function bar. It holds all of the various equations you are currently graphing. Beneath it is the add function button. In the top right is that constant bar. This holds all of the constants that you include in your functions. On the bottom is the settings bar. It holds the global settings that control the look and feel of the grapher.

In the bottom left is the save button. It allows you to save a url link to the functions you are using or to download a transparent picture of the function. In the bottom right is a help button. Hovering over it shows a quick help text detailing the things you can put in a function. And speaking of...

Functions

Functions each have three parts. A colored badge on the left shows the color that the equation will display in the 3d viewport. The text input in the middle allows you to type an equation, and the x on the right will delete the function.

New functions can be added by clicking the "+" button beneath the function list.

An equation can include specific variables and mathematic operations, as long as it is valid mathematically. Special variables include x, y, z, r, rho (\rho), theta (\theta), and phi - the angle (\phi). Special constants are: pi (\pi), phi_0 - the constant (\phi_0), and e. The rest of the letters will be represented as constants, which can be changed in the constants bar.

Functions - Cont...

Some special functions are also available, including trigonometric functions and others such as: ln, round, floor, mod, step, and smoothstep. (The last few are only included because they work by default. If you are unfamiliar with them, you can check the GLSL reference pages for each). Inverse trig functions have arc- as a prefix (arccos, arctan); hyperbolic have -h as a suffix (sinh).

Normal math symbols also work, including +, -, *, and /. Exponentiation is ^ (Shift-6), and sqrt \sqrt{x} is avilable, but x^{0.5} is more stable. Dividing by a special variable will often lead to artifacts in the image; try to multiply both sides to eliminate it. The variables 'theta' and 'phi' are defined from -2\pi to 2\pi. The letter 'r' is \sqrt{x^2 + y^2}, and 'rho' is the radius in 3 dimensions (\sqrt{x^2 + y^2 + z^2}).

Constants

Up in the top right corner is the constants bar. This will hold all the letters which are treated as constants in the equation. Clicking and dragging (or scrolling) these boxes will change the value of that number across all functions. New constants will appear as soon as you use them in an equation.

Constants are a great way to see how different numbers can affect a function. For example, using the equation y = mx + b will allow you to visually see how different slopes (m) and y-intercepts (b) affect the shape of the line. Or, for a more detailed example, try \frac{(x-a)^2}{f^2} + \frac{(y-b)^2}{f^2} = \frac{(z - d)^2}{c^2} to see how each constant affects the shape of a cone.

Settings

The settings bar at the bottom allows you to manipulate the way that the program functions. The size slider changes the size of the area that the graph displays. This is limited by default to improve performance and visibility. The line width slider sets how wide the lines of the coordinate plane are, from 0 width (hidden) to 1 width (solid planes).

The precision slider changes how accurate the graph is. This is low by default to improve performance, and should only need increasing if strange artifacts appear in the graph's shape. This generally happens when there are divisions by 0, or functions which have asymptotes. Increasing this slider should fix that, but it will cost performance on some machines.

Save

The save button in the bottom left will allow you to save the current equations you are looking at. The "Copy URL" option will copy a shareable URL to the clipboard with the current equations and the camera position. The "Save Photo" button will open a new tab with a transparent-background PNG image of what is currently being displayed.

One last thing:

Here are a few tips to get started:

  • If the function disappears, try increasing size or adding in a constant to experiment with
  • Use division sparingly. The computer doesn't like dividing by 0, so try multiplying both sides to cancel out division
  • Enjoy!

Interesting Functions:

xxyyzz\ =\ be^{a\rho }-c \sin \left(\rho r\right)=e^yx^z
help
The function box will accept any input that is a valid equation. Letters (aside from x,y,z, and r) are constants that can be adjusted using the boxes on the side. You can use the following special names in an equation: In addition, most trig functions are available, including sin, arctan, and cosh (hyperbolic cos). Some other functions, such as round, floor, and mod are also allowed.
save