The manual is very short: many more can be done !

( Many additional info is scattered in the help center, if you take time to crawl it 🙂 ).

## Variables and function names

`x,y, r,θ` are the default parameterization in Cartesian and polar coordinates,
`π,τ,e` are the special constants.
- Possible names:
`a0, A1, B_whatever, α (type "alpha"), β, φ, α1, α_whatever,` …
- More: since LaTeX inputs are valid, you can get any other Greek variable name, in caps or not, by copy pasting from outside (or from a text field in DesmosGraph): \gamma, \Gamma, \epsilon, etc. Once there the symbol can be copy-pasted between fields.

## Arrays / lists

Expressions and thus resulting variables and functions accept arrays: it’s like using vectors instead of scalar. It also allows to graph a full family of curves of areas instead of one, whatever the plotting method (Cartesian, polar, implicit, inequations…)

e.g.:` A = [1,...,10] → sin(A*x) ,`

`2*A/10-1 `, etc. More: here.

`sin(x)*sin(y) <= -1+2*[0,.3,...1] `

Complex examples:

Array of threads , Fractal braid , Push hole in param

## Variable length

- Array can be set as
`[1,...,N]` , or `[0,1/N...1]`
- Slider can be set between 0 and expressions like
`a+pi/2`

## Functions

- All trigonometrics also have their inverse, comprising
`sinh(x)`, etc.

Moreover, you can also get them using `sin^-1(x)` (alas, this does not work for custom functions).
`min , max ` works with any number or parameters, as well as lists (like all the stats functions).
- nth root (e.g., cubic):
`nthroot`
- The gamma function, generalization of the factorial, is just
`x!`
- Piecewise function / expression:
`f(x) = {cond1: expr1, cond2: expr2, ... , default_expr}`
- Derivatives:
`d/dx f(x) , f'(x) , f''(x) , d/dx d/dx f(x)`
- Summation, product, integrals:
`sum, prod, int`
- From statistical distributions:
`f = normaldist(0,1)`

→ draw: `g(x) = pdf(f,x)` or `g(x) = f.pdf(x)` . Same with `cdf`.

Distributions: `uniformdist(), normaldist(), poissondist(), binomialdist(), tdist()` *(student)*
`random(N)` creates an array of N uniform random numbers in range 0..1.

`random(N,s)` provides a seed `s` allowing producing different sequences.
`random(normaldist(...) , ... )` or `normaldist(...).random(...)` :

same for normal law (or any distribution).

→ See example.

## Restrictions / Range

- Domain limited function / expression:
` f(x) = expr {cond}`

- Range condition:
` 0 <= x < 1`
- AND of conditions:
` {cond1}{cond2}`
- For parametrics curve, the condition must be *in* the parenthesis:

`( t, sin ( t ) { t > 0 } )`

- Variable slider: a reminder to tune the bounds, and possibly the step ( 1 for integers).
- For points used as (bi)sliders, remember to set limits on the associated variable.

If you want the point to only move in one axis, or not at all, the settings menu let you restrain it (and do many other things).
- For parametric and polar curves, a reminder than you can tune the bounds as well. You can even abuse of it to generate 2D parameters using
`mod()` and `floor()` :-).

## Geometry & drawing:

- There are undocumented operators and features for geometry ! We explain these here.
`histogram(A [,step])` : plot the histogram of array A for values every steps.

`dotplot(A [,step])` : same with points instead of bars

`boxplot(A)` : draw a box encoding mean, stddev, range.

## More about:

### Like this:

Like Loading...