Skip to content

Settings

A file’s config { … } block sets up the calculator: the viewport, the grid, what the reader may change. It is written once, at the top level, one key: value to an entry.

config {
showGrid: false
xmin: -10; xmax: 10
}
y = sin(x)
Open in playground →

Use degrees instead of radians [default: false]

Takes true or false, or the name alone for true.

config { degreeMode: true }
y = sin(x)
Open in playground →

Show coordinate grid [default: true]

Takes true or false, or the name alone for true.

config { showGrid: false }
y = sin(x)
Open in playground →

Show x-axis [default: true]

Takes true or false, or the name alone for true.

config { showXAxis: false }
y = sin(x)
Open in playground →

Show y-axis [default: true]

Takes true or false, or the name alone for true.

config { showYAxis: false }
y = sin(x)
Open in playground →

Show numbers on x-axis [default: true]

Takes true or false, or the name alone for true.

config { xAxisNumbers: false }
y = sin(x)
Open in playground →

Show numbers on y-axis [default: true]

Takes true or false, or the name alone for true.

config { yAxisNumbers: false }
y = sin(x)
Open in playground →

Use polar coordinates [default: false]

Takes true or false, or the name alone for true.

config { polarMode: true }
r = 2 + sin(3theta)
Open in playground →

Lock viewport from panning/zooming [default: false]

Takes true or false, or the name alone for true.

config { lockViewport: true }
y = sin(x)
Open in playground →

Keep one x unit the same length as one y unit [default: true]

Takes true or false, or the name alone for true.

config { squareAxes: false; ymin: -1; ymax: 1 }
y = sin(x)
Open in playground →

Lock the viewport the way the graph’s own settings menu does, so nobody can pan or zoom [default: false]

Takes true or false, or the name alone for true.

config { userLockedViewport: true }
y = sin(x)
Open in playground →

Collapse expressions list [default: true]

Takes true or false, or the name alone for true.

config { expressionsCollapsed: false }
y = sin(x)
Open in playground →

Limit expression complexity [default: true]

Takes true or false, or the name alone for true.

config { capExpressionSize: false }
y = sin(x)
Open in playground →

Show points of interest [default: true]

Takes true or false, or the name alone for true.

config { pointsOfInterest: false }
y = sin(x)
Open in playground →

Enable trace mode [default: false]

Takes true or false, or the name alone for true.

config { trace: false }
y = sin(x)
Open in playground →

Show calculator border [default: false]

Takes true or false, or the name alone for true.

config { border: true }
y = sin(x)
Open in playground →

Show on-screen keypad [default: true]

Takes true or false, or the name alone for true.

config { keypad: false }
y = sin(x)
Open in playground →

Show graph paper background [default: true]

Takes true or false, or the name alone for true.

config { graphpaper: true }
y = sin(x)
Open in playground →

Allow derivatives and integrals [default: true] (Desmos v1.12)

Takes true or false, or the name alone for true.

config { calculus: false }
y = sin(x)
Open in playground →

Clearing the graph keeps degree mode [default: matches degreeMode] (Desmos v1.12)

Takes true or false, or the name alone for true.

config { clearIntoDegreeMode: true }
y = sin(x)
Open in playground →

Invert every displayed color [default: false]

Takes true or false, or the name alone for true.

config { invertedColors: true }
y = sin(x)
Open in playground →

Show the “Reverse Contrast” checkbox [default: true] (Desmos v1.12)

Takes true or false, or the name alone for true.

config { invertedColorsControl: false }
y = sin(x)
Open in playground →

Pause animations for prefers-reduced-motion [default: false]

Takes true or false, or the name alone for true.

config { showReducedMotionCover: true }
y = sin(x)
Open in playground →

Larger fonts and thicker lines [default: false]

Takes true or false, or the name alone for true.

config { projectorMode: true }
y = sin(x)
Open in playground →

Allow expressions to specify a viewport [default: true]

Takes true or false, or the name alone for true.

config { zoomFit: false }
y = sin(x)
Open in playground →

Vary random() by a function’s arguments [default: true]

Takes true or false, or the name alone for true.

config { includeFunctionParametersInRandomSeed: false }
f(a) = random()
b = f(1)
Open in playground →

Show the expressions list [default: true]

Takes true or false, or the name alone for true.

config { expressions: false }
y = sin(x)
Open in playground →

Show the toolbar above the expressions list [default: true]

Takes true or false, or the name alone for true.

config { expressionsTopbar: false }
y = sin(x)
Open in playground →

Show the zoom buttons [default: false]

Takes true or false, or the name alone for true.

config { zoomButtons: true }
y = sin(x)
Open in playground →

Open the keypad on load [default: false]

Takes true or false, or the name alone for true.

config { keypadActivated: true }
y = sin(x)
Open in playground →

Show a reset button on the graph paper [default: false]

Takes true or false, or the name alone for true.

config { showResetButtonOnGraphpaper: true }
y = sin(x)
Open in playground →

Show the graph settings menu [default: false]

Takes true or false, or the name alone for true.

config { settingsMenu: true }
y = sin(x)
Open in playground →

Enable author features such as secret folders [default: false]

Takes true or false, or the name alone for true.

config { authorFeatures: true }
k = 3 @ secret
y = k sin(x)
Open in playground →

Reveal the contents of secret folders [default: false]

Takes true or false, or the name alone for true.

config { administerSecretFolders: true }
k = 3 @ secret
y = k sin(x)
Open in playground →

Allow images [default: true]

Takes true or false, or the name alone for true.

config { images: false }
y = sin(x)
Open in playground →

Allow folders [default: true]

Takes true or false, or the name alone for true.

config { folders: false }
y = sin(x)
Open in playground →

Allow notes [default: true]

Takes true or false, or the name alone for true.

config { notes: false }
y = sin(x)
Open in playground →

Allow sliders [default: true]

Takes true or false, or the name alone for true.

config { sliders: false }
y = sin(x)
Open in playground →

Allow “with” substitutions [default: true]

Takes true or false, or the name alone for true.

config { substitutions: true }
y = a x ^ 2 with a = 0.5
Open in playground →

Show the QWERTY keyboard on the keypad [default: true]

Takes true or false, or the name alone for true.

config { qwertyKeyboard: false }
y = sin(x)
Open in playground →

Allow statistical distributions [default: true]

Takes true or false, or the name alone for true.

config { distributions: false }
y = sin(x)
Open in playground →

Limit the available functions to a basic set [default: false]

Takes true or false, or the name alone for true.

config { restrictedFunctions: true }
y = sin(x)
Open in playground →

Enable geometry functions [default: false]

Takes true or false, or the name alone for true.

config { forceEnableGeometryFunctions: true }
y = sin(x)
Open in playground →

Allow pasting a graph link to import it [default: false]

Takes true or false, or the name alone for true.

config { pasteGraphLink: true }
y = sin(x)
Open in playground →

Allow pasting tabular data into a table [default: true]

Takes true or false, or the name alone for true.

config { pasteTableData: false }
y = sin(x)
Open in playground →

Resize the calculator with its container [default: true]

Takes true or false, or the name alone for true.

config { autosize: false }
y = sin(x)
Open in playground →

Shade inequalities [default: true]

Takes true or false, or the name alone for true.

config { plotInequalities: false }
y = sin(x)
Open in playground →

Plot implicit equations and inequalities [default: true]

Takes true or false, or the name alone for true.

config { plotImplicits: false }
y = sin(x)
Open in playground →

Plot single-variable implicit equations [default: true]

Takes true or false, or the name alone for true.

config { plotSingleVariableImplicitEquations: false }
y = sin(x)
Open in playground →

Show braille controls [default: true]

Takes true or false, or the name alone for true.

config { brailleControls: false }
y = sin(x)
Open in playground →

Enable audio trace [default: true]

Takes true or false, or the name alone for true.

config { audio: false }
y = sin(x)
Open in playground →

Allow the tone() function [default: true]

Takes true or false, or the name alone for true.

config { tone: false }
y = sin(x)
Open in playground →

Mute audio output [default: false]

Takes true or false, or the name alone for true.

config { muted: true }
y = sin(x)
Open in playground →

Force regressions into log mode [default: false]

Takes true or false, or the name alone for true.

config { forceLogModeRegressions: true }
y = sin(x)
Open in playground →

Default new regressions to log mode [default: false]

Takes true or false, or the name alone for true.

config { defaultLogModeRegressions: true }
y = sin(x)
Open in playground →

Allow custom regressions [default: true]

Takes true or false, or the name alone for true.

config { customRegressions: false }
y = sin(x)
Open in playground →

Offer regression templates [default: true]

Takes true or false, or the name alone for true.

config { regressionTemplates: false }
y = sin(x)
Open in playground →

Allow logarithmic axis scales [default: true]

Takes true or false, or the name alone for true.

config { logScales: false }
y = sin(x)
Open in playground →

Allow interval comprehensions [default: true]

Takes true or false, or the name alone for true.

config { intervalComprehensions: false }
y = sin(x)
Open in playground →

Put the graph in complex mode [default: false]

Takes true or false, or the name alone for true.

In complex mode i is the imaginary unit, sqrt(-1) is i rather than undefined, a complex number is drawn as a point, and real, imag, conj and arg exist.

config { allowComplex: true }
z = 3 + 4i
w = conj(z)
Open in playground →

Allow recursive definitions [default: false]

Takes true or false, or the name alone for true.

config { recursion: true }
f(n) = {n <= 1: 1, n f(n - 1)}
a = f(5)
Open in playground →

Show copy buttons beside evaluations [default: false]

Takes true or false, or the name alone for true.

config { showEvaluationCopyButtons: true }
a = 2 ^ 10
Open in playground →

Offer decimal/fraction toggling [default: true]

Takes true or false, or the name alone for true.

config { decimalToFraction: false }
a = 1 / 3
Open in playground →

Enable six-key braille input [default: false]

Takes true or false, or the name alone for true.

config { sixKeyInput: true }
y = sin(x)
Open in playground →

Show numbers on the polar grid [default: true]

Takes true or false, or the name alone for true.

config { polarMode: true; polarNumbers: false }
r = 2
Open in playground →

Left edge of the viewport [default: -10]

Takes a number.

config { xmin: -2; xmax: 2 }
y = x ^ 3
Open in playground →

Right edge of the viewport [default: 10]

Takes a number.

config { xmin: -2; xmax: 2 }
y = x ^ 3
Open in playground →

Bottom edge of the viewport [default: fits the aspect ratio]

Takes a number.

config { ymin: -1; ymax: 8 }
y = x ^ 2
Open in playground →

Top edge of the viewport [default: fits the aspect ratio]

Takes a number.

config { ymin: -1; ymax: 8 }
y = x ^ 2
Open in playground →

Base font size [default: 16]

Takes a number.

config { fontSize: 20 }
y = sin(x)
Open in playground →

Spacing between x-axis labels, 0 for automatic [default: 0]

Takes a number.

config { xAxisStep: 3.14159 }
y = sin(x)
Open in playground →

Spacing between y-axis labels, 0 for automatic [default: 0]

Takes a number.

config { yAxisStep: 0.5 }
y = sin(x)
Open in playground →

Minor grid lines per x-axis step, 0 for automatic [default: 0]

Takes a number.

config { xAxisMinorSubdivisions: 2 }
y = sin(x)
Open in playground →

Minor grid lines per y-axis step, 0 for automatic [default: 0]

Takes a number.

config { yAxisMinorSubdivisions: 2 }
y = sin(x)
Open in playground →

Calculator background colour, #hex or a palette name [beta, Desmos v1.12]

Takes a colour: a #hex, a palette name, or an expression.

A hex literal or a palette name only: Desmos wants a hex string here, not an expression.

config { backgroundColor: #1e1e2e }
y = sin(x)
Open in playground →

Calculator text colour, #hex or a palette name [beta, Desmos v1.12]

Takes a colour: a #hex, a palette name, or an expression.

A hex literal or a palette name only: Desmos wants a hex string here, not an expression.

config { textColor: #444444 }
y = sin(x)
Open in playground →

Accent colour for buttons and focus outlines, #hex or a palette name [beta, Desmos v1.12]

Takes a colour: a #hex, a palette name, or an expression.

A hex literal or a palette name only: Desmos wants a hex string here, not an expression.

config { accentColor: PURPLE }
y = sin(x)
Open in playground →

Label for the x-axis [default: empty]

Takes a string.

config { xAxisLabel: "time"; yAxisLabel: "height" }
y = sin(x)
Open in playground →

Label for the y-axis [default: empty]

Takes a string.

config { xAxisLabel: "time"; yAxisLabel: "height" }
y = sin(x)
Open in playground →

Seed for random() [default: generated]

Takes a string.

The same seed gives the same numbers every time the graph opens.

config { randomSeed: "axis" }
L = random(5)
Open in playground →

UI language [default: en]

Takes a string.

config { language: "fr" }
y = sin(x)
Open in playground →

Screen-reader description of the whole graph [default: empty]

Takes a string.

config { graphDescription: "One period of a sine wave" }
y = sin(x)
Open in playground →

Which Desmos calculator draws the graph [default: GRAPHING]

Takes one of its values. Values GRAPHING, GEOMETRY, GRAPHING_3D.

The geometry and 3D calculators draw the same expressions the graphing calculator does; their own tools are not in Axis yet.

config { calculator: GEOMETRY }
P = (1, 2)
y = x
Open in playground →

x-axis scale [default: linear]

Takes one of its values. Values linear, logarithmic.

Needs logScales, which is on by default: with it off, the scale is linear whatever this says.

config { xAxisScale: logarithmic; xmin: 0.1; xmax: 1000 }
y = log(x)
Open in playground →

y-axis scale [default: linear]

Takes one of its values. Values linear, logarithmic.

Needs logScales, which is on by default: with it off, the scale is linear whatever this says.

config { yAxisScale: logarithmic; ymin: 0.1; ymax: 1000 }
y = 2 ^ x
Open in playground →

Arrowheads on the x-axis [default: NONE]

Takes one of its values. Values NONE, POSITIVE, BOTH.

config { xAxisArrowMode: POSITIVE }
y = sin(x)
Open in playground →

Arrowheads on the y-axis [default: NONE]

Takes one of its values. Values NONE, POSITIVE, BOTH.

config { yAxisArrowMode: BOTH }
y = sin(x)
Open in playground →

Allow action expressions [default: auto]

Takes one of its values. Values true, false, auto.

auto decides from the expression list, which cannot see a ticker - so the compiler switches actions on for any file with one.

config { actions: true }
n = 0
ticker n -> n + 1 @ playing
Open in playground →

Position readout for screen readers [default: default]

Takes one of its values. Values default, coordinates, percents.

config { reportPosition: coordinates }
y = sin(x)
Open in playground →

Braille code [default: none]

Takes one of its values. Values none, nemeth, ueb.

config { brailleMode: nemeth }
y = sin(x)
Open in playground →