MathGrapher: Graphing Calculator-Function Grapher

Free online 2D graphing calculator (plotter), or curve calculator, that can plot piecewise, linear, quadratic, cubic, quartic, polynomial, trigonometric, hyperbolic, exponential, logarithmic, inverse functions given in different forms: explicit, implicit, polar and parametric. It can also graph arbitrary inequalities or system of inequalities, slope fields (vector fields or direction fields), visualize Riemann Sum. Plots can be styled and customized according to needs.

To plot 3d graph use 3d grapher.

Show Instructions
  • In general, you can skip multiplication sign, so `5x` is equivalent to `5*x`
  • In general, you can skip parentheses, but be very careful: e^3x is `e^3x` and e^(3x) is `e^(3x)`
  • Also be careful when you write fractions: 1/x^2 ln(x) is `1/x^2 ln(x)` and 1/(x^2 ln(x)) is `1/(x^2 ln(x))`
  • If you skip parentheses or multiplication sign, type at least whitespace, i.e. write sin x (or even better sin(x)) instead of sinx
  • Sometimes I see expressions like tan^2xsec^3x: this will be parsed as `tan^(2*3)(x sec(x))`. To get `tan^2(x)sec^3(x)`, use parentheses: tan^2(x)sec^3(x)
  • Similarly tanxsec^3x will be parsed as `tan(xsec^3(x))`. To get `tan(x)sec^3(x)`, use parentheses: tan(x)sec^3(x)
  • From table below you can notice, that sech is not supported, but you can still enter it using identity `sech(x)=1/cosh(x)`
  • If you get an error, double check your expression, add parentheses and multiplication signs, where needed, and consult the table below
  • All suggestions and improvements are welcomed. Leave them in comments
The following table contains supported operations and functions:
TypeGet
Constants
ee
pi`pi`
ii (imaginary unit)
Operations
a+ba+b
a-ba-b
a*b`a*b`
a^b, a**b`a^b`
sqrt(x), x^(1/2)`sqrt(x)`
cbrt(x), x^(1/3)`root(3)(x)`
root(x,n), x^(1/n)`root(n)(x)`
x^(a/b)`x^(a/b)`
abs(x)`|x|`
Functions
e^x`e^x`
ln(x), log(x)ln(x)
ln(x)/ln(a)`log_a(x)`
Trigonometric Functions
sin(x)sin(x)
cos(x)cos(x)
tan(x)tan(x), tg(x)
cot(x)cot(x), ctg(x)
sec(x)sec(x)
csc(x)csc(x), cosec(x)
Inverse Trigonometric Functions
asin(x), arcsin(x), sin^-1(x)asin(x)
acos(x), arccos(x), cos^-1(x)acos(x)
atan(x), arctan(x), tan^-1(x)atan(x)
acot(x), arccot(x), cot^-1(x)acot(x)
asec(x), arcsec(x), sec^-1(x)asec(x)
acsc(x), arccsc(x), csc^-1(x)acsc(x)
Hyperbolic Functions
sinh(x)sinh(x)
cosh(x)cosh(x)
tanh(x)tanh(x)
coth(x)coth(x)
1/cosh(x)sech(x)
1/sinh(x)csch(x)
Inverse Hyperbolic Functions
asinh(x), arcsinh(x), sinh^-1(x)asinh(x)
acosh(x), arccosh(x), cosh^-1(x)acosh(x)
atanh(x), arctanh(x), tanh^-1(x)atanh(x)
acoth(x), arccoth(x), cot^-1(x)acoth(x)
acosh(1/x)asech(x)
asinh(1/x)acsch(x)

To draw a parabola, ellipse or hyperbola choose implicit option.

You can pass a function as a parameter: http://www.emathhelp.net/calculators/calculus-1/online-graphing-calculator/?f=sin(x) will draw y=sin(x)

Pan the graph (move it) by holding the Shift key and dragging the graph with the mouse.

Zoom in and out of the graph by holding Shift key and using mouse wheel.

Above operations can be very slow for more than 2 graphs. To avoid it, delete all graphs, pan and zoom, and then plot the graphs again.

Save as...
Get short link to this page or link to plot's image for embedding