Skip to content

surface attributes ​

Surfaces: a grid of heights drawn as a lit 3D surface built on the GPU, with contour lines, projections, a wireframe and a colorbar.

  • Categories: gl3d, 2dMap, showLegend
  • Plotly equivalent: surface
  • Guide: surface chart page
  • Used in examples: demos/dallas-weather/temp-surface, demos/index-funds/rolling-return-surface, demos/science-basics/ideal-gas-surface, demos/tqqq-soxl/decay-surface, scene/orthographic, scene/subplots, surface/basic, surface/connectgaps, surface/contours-xy, surface/contours, surface/hidesurface, surface/interaction, surface/lighting, surface/materials, surface/matrices, surface/multiple, surface/opacityscale, surface/perf-1024, surface/surfacecolor, surface/vectors, surface/wireframe

Generated from the attribute schema (208 entries). Machine-readable: plot-schema.json.

Attribute tree

type string ​

Trace type, e.g. 'scatter'. Defaults to 'scatter'.

  • Type: string (non-empty)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

visible enumerated ​

Whether the trace is drawn. legendonly hides it but keeps its (toggleable) legend entry.

  • Type: enumerated
  • Values: true | false | "legendonly"
  • Default: true
  • Array OK: no
  • Edit type: calc
  • Animatable: no

name string ​

Trace name shown in the legend and hover labels. Defaults to trace N.

  • Type: string
  • Default: none
  • Array OK: no
  • Edit type: legend+plot
  • Animatable: no

uid string ​

Stable identity used to match traces across updates, so reordered traces are moved instead of rebuilt.

  • Type: string
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

showlegend boolean ​

Whether this trace has a legend entry.

  • Type: boolean
  • Default: true
  • Array OK: no
  • Edit type: legend+layout
  • Animatable: no

legend subplotid ​

The legend this trace's item is shown in: 'legend' (layout.legend), 'legend2' (layout.legend2), ….

  • Type: subplotid (legend, legend2, legend3, …)
  • Default: "legend"
  • Array OK: no
  • Edit type: legend+layout
  • Animatable: no

legendgroup string ​

Traces in the same legend group toggle together.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: legend
  • Animatable: no

hovertext data_array ​

Hover text per point (a 2D array like z, or one string); takes precedence over text.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

hoverinfo flaglist ​

Which fields hover labels show; 'skip' also turns hover events off for this trace. Default 'all'.

  • Type: flaglist
  • Flags: "x", "y", "z", "text", "name" (combine with +)
  • Also accepts: "all" | "none" | "skip"
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hovertemplate string ​

Template for hover labels, e.g. '%{x}: %{y:.2f}<extra></extra>' (d3-format / d3-time-format after : / |). Overrides hoverinfo.

  • Type: string
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel ​

Hover label style for this trace. Unset fields fall back to layout.hoverlabel (so there are no trace-level defaults).

  • Type: object
  • Edit type: none

hoverlabel.bgcolor color ​

Label background. Default: the point color.

  • Type: color
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel.bordercolor color ​

Label border. Default: contrasting with the background.

  • Type: color
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel.font ​

Label font.

  • Type: object
  • Edit type: none

hoverlabel.font.family string ​

Font family.

  • Type: string
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel.font.size number ​

Font size in px.

  • Type: number ≥ 1
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel.font.color color ​

Font color.

  • Type: color
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel.align enumerated ​

Text alignment inside labels.

  • Type: enumerated
  • Values: "left" | "right" | "auto"
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

hoverlabel.namelength integer ​

Characters of the trace name shown (-1: all, 0: none).

  • Type: integer ≥ -1
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: none
  • Animatable: no

selectedpoints any ​

Indices of the selected points (set by box/lasso selection, or programmatically). null clears the selection.

  • Type: any
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

legendrank number ​

Sort key for legend entries: lower ranks come first (top, or left). Ties keep trace order; traces default to 1000.

  • Type: number
  • Default: 1000
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendwidth number ​

Width of this trace's item in horizontal legends, overriding legend.entrywidth (same units). Default: its text's.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendgrouptitle ​

Title of the legend group this trace belongs to.

  • Type: object
  • Edit type: legend

legendgrouptitle.text string ​

Title heading this trace's legend group.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendgrouptitle.font ​

Group title font. Unset fields come from legend.grouptitlefont.

  • Type: object
  • Edit type: legend

legendgrouptitle.font.family string ​

Font family.

  • Type: string
  • Default: none
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendgrouptitle.font.size number ​

Font size in px.

  • Type: number ≥ 1
  • Default: none
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendgrouptitle.font.color color ​

Font color.

  • Type: color
  • Default: none
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendgrouptitle.font.weight integer ​

Font weight: a CSS numeric weight (1–1000), normal or bold.

  • Type: integer from 1 to 1000, or "normal" | "bold"
  • Default: none
  • Array OK: no
  • Edit type: legend
  • Animatable: no

legendgrouptitle.font.style enumerated ​

Font style.

  • Type: enumerated
  • Values: "normal" | "italic"
  • Default: none
  • Array OK: no
  • Edit type: legend
  • Animatable: no

opacity number ​

Opacity of the whole trace.

  • Type: number from 0 to 1
  • Default: 1
  • Array OK: no
  • Edit type: style
  • Animatable: yes

meta any ​

Arbitrary user data, available in text templates as %{meta}.

  • Type: any
  • Default: none
  • Array OK: yes (one value per point)
  • Edit type: plot
  • Animatable: no

customdata data_array ​

Per-point user data, returned in events and available in hover templates.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

ids data_array ​

Per-point ids used to match points across animation frames.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

dataset string ​

Name of a figure-level dataset (figure.datasets). Data arrays, and per-point attributes whose values cannot start with @ (such as colors and sizes), may then reference its columns as '@column'; on string attributes such as text, '@…' stays literal text.

  • Type: string (non-empty)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

uirevision any ​

While unchanged, user interaction state for this trace (legend visibility, selections) is kept across updates.

  • Type: any
  • Default: none
  • Array OK: no
  • Edit type: none
  • Animatable: no

styleRules any ​

Conditional per-point styling as JSON (plan E8.5): [{ when: { y: { gt: 10 } }, set: { 'marker.color': 'gold' } }]. when tests fields of the point ('y', 'customdata[1]', 'pointNumber', …) with eq, ne, gt, gte, lt, lte, in, nin, between, regex, and, or and not; set gives per-point (arrayOk) attributes a value on the matching points. Later rules win; other points keep the trace's own value.

  • Type: any
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

scene subplotid ​

The 3D scene this trace is drawn in: 'scene' (layout.scene), 'scene2' (layout.scene2), ….

  • Type: subplotid (scene, scene2, scene3, …)
  • Default: "scene"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

z data_array ​

Heights: a 2D array, z[row][column] (rows along y, columns along x). Non-numeric entries are gaps (see connectgaps).

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

x data_array ​

x coordinates (numbers, dates or categories): one per column of z, or a 2D array like z (one per point, for grids that are not rectangular in x and y). Default: the column indices.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

y data_array ​

y coordinates: one per row of z, or a 2D array like z. Default: the row indices.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

surfacecolor data_array ​

Values the colorscale colors the surface by, a 2D array like z. Default: z itself.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

text data_array ​

Text per point (a 2D array like z, or one string): shown in hover labels and as %{text}.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

connectgaps boolean ​

Fill the gaps in z by interpolating their neighbours (Plotly's Laplace fill) instead of leaving holes.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: calc
  • Animatable: no

hidesurface boolean ​

Hide the surface itself, keeping its contour lines and wireframe.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

opacityscale any ​

Opacity by color value, like a colorscale: [[0, 0.1], [0.5, 1], [1, 0.4]] (positions 0–1 of the color domain, opacities 0–1), or 'max' (the highest values opaque, the lowest faded to 0.1), 'min' (the reverse) or 'extremes' (both ends opaque, the middle faded).

  • Type: any
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

colorscale colorscale ​

Colorscale for numeric z or surfacecolor values: a name ('Viridis', 'RdBu', …), a list of colors, or [position, color] stops from 0 to 1.

  • Type: colorscale
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

autocolorscale boolean ​

Pick the colorscale from the sign of the color domain (Reds for ≥ 0, Blues for ≤ 0, RdBu across 0). Defaults to true unless colorscale is given.

  • Type: boolean
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

reversescale boolean ​

Reverse the colorscale (the lowest value gets the last color).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: style
  • Animatable: no

cauto boolean ​

Compute the color domain from the numeric z or surfacecolor values. Defaults to false when both cmin and cmax are given.

  • Type: boolean
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

cmin number ​

Value mapped to the first colorscale color (with cmax; turns cauto off).

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

cmax number ​

Value mapped to the last colorscale color (with cmin; turns cauto off).

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

cmid number ​

With cauto, widen the automatic domain so it is symmetric around this value (diverging data).

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

showscale boolean ​

Show a colorbar for this colorscale (drawn by the colorbar component, plan E5.3).

  • Type: boolean
  • Default: true
  • Array OK: no
  • Edit type: colorbars
  • Animatable: no

colorbar ​

The colorbar of this colorscale (plan E5.3).

  • Type: object
  • Edit type: colorbars+layout

colorbar.orientation enumerated ​

Vertical bar (v, beside the plot) or horizontal bar (h, above or below).

  • Type: enumerated
  • Values: "h" | "v"
  • Default: "v"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.thicknessmode enumerated ​

Unit of thickness: px, or a fraction of the plot width (v) / height (h).

  • Type: enumerated
  • Values: "fraction" | "pixels"
  • Default: "pixels"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.thickness number ​

Thickness of the color bar.

  • Type: number ≥ 0
  • Default: 30
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.lenmode enumerated ​

Unit of len: px, or a fraction of the plot height (v) / width (h).

  • Type: enumerated
  • Values: "fraction" | "pixels"
  • Default: "fraction"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.len number ​

Length of the colorbar along its axis, padding included (ypad / xpad).

  • Type: number ≥ 0
  • Default: 1
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.x number ​

Horizontal position (xref fraction). Defaults to 1.02 (v, paper), 1 (v, container) or 0.5 (h).

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.xref enumerated ​

Reference of x: the plot area (paper) or the whole figure.

  • Type: enumerated
  • Values: "container" | "paper"
  • Default: "paper"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.xanchor enumerated ​

Which side of the colorbar sits at x. Defaults to left (v, paper), right (v, container) or center (h).

  • Type: enumerated
  • Values: "left" | "center" | "right"
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.xpad number ​

Horizontal padding, px.

  • Type: number ≥ 0
  • Default: 10
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.y number ​

Vertical position (yref fraction). Defaults to 0.5 (v), 1.02 (h, paper) or 1 (h, container).

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.yref enumerated ​

Reference of y: the plot area (paper) or the whole figure.

  • Type: enumerated
  • Values: "container" | "paper"
  • Default: "paper"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.yanchor enumerated ​

Which side of the colorbar sits at y. Defaults to middle (v), bottom (h, paper) or top (h, container).

  • Type: enumerated
  • Values: "top" | "middle" | "bottom"
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.ypad number ​

Vertical padding, px.

  • Type: number ≥ 0
  • Default: 10
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.outlinecolor color ​

Color of the outline around the bar.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.outlinewidth number ​

Outline width, px.

  • Type: number ≥ 0
  • Default: 1
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.bordercolor color ​

Border color of the colorbar box.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.borderwidth number ​

Border width of the box, px.

  • Type: number ≥ 0
  • Default: 0
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.bgcolor color ​

Background of the box.

  • Type: color
  • Default: "rgba(0, 0, 0, 0)"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.tickmode enumerated ​

auto picks up to nticks round ticks; linear places ticks from tick0 every dtick; array uses tickvals/ticktext; sync aligns with the overlaid axis (reserved; behaves as auto). Defaults to array when tickvals is set, linear when dtick is set, else auto.

  • Type: enumerated
  • Values: "auto" | "linear" | "array" | "sync"
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.nticks integer ​

Maximum number of ticks for tickmode: auto (the actual number may be lower so steps stay round). 0 picks it from the axis length.

  • Type: integer ≥ 0
  • Default: 0
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tick0 any ​

Position of one tick for tickmode: linear (data units; a date on date axes, an exponent on log axes unless dtick is L<f>). Defaults to 0, or 2000-01-01 on date axes.

  • Type: any
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.dtick any ​

Tick step. Linear axes: a positive number. Log axes: an integer n (a tick every n decades), L<f> (linear steps of f in data units, e.g. L0.5), D1 (every digit) or D2 (1, 2 and 5). Date axes: milliseconds, or M<n> for n months (M12 for years).

  • Type: any
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tickvals data_array ​

Tick positions for tickmode: array (data units).

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.ticktext data_array ​

Tick labels for tickvals. Missing entries are formatted as usual.

  • Type: data_array (array or typed array)
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.ticks enumerated ​

Draw tick marks outside or inside the plot area, or not at all ('').

  • Type: enumerated
  • Values: "outside" | "inside" | ""
  • Default: ""
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.ticklen number ​

Tick length in px.

  • Type: number ≥ 0
  • Default: 5
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tickwidth number ​

Tick width in px.

  • Type: number ≥ 0
  • Default: 1
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tickcolor color ​

Tick color. Defaults to color.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.ticklabelposition enumerated ​

Tick labels outside the bar (away from it) or inside (over it); top/bottom (v) or left/right (h) move them beside their tick.

  • Type: enumerated
  • Values: "outside" | "inside" | "outside top" | "inside top" | "outside bottom" | "inside bottom" | "outside left" | "inside left" | "outside right" | "inside right"
  • Default: "outside"
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.ticklabeloverflow enumerated ​

Hide labels past the figure or past the bar. Defaults to hide past domain for inside labels, else hide past div.

  • Type: enumerated
  • Values: "allow" | "hide past div" | "hide past domain"
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.ticklabelstep integer ​

Label every n-th tick only (tickmode auto and linear).

  • Type: integer ≥ 1
  • Default: 1
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.showticklabels boolean ​

Show tick labels.

  • Type: boolean
  • Default: true
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tickfont ​

Tick-label font. Defaults to layout.font.

  • Type: object
  • Edit type: layout+plot

colorbar.tickfont.family string ​

CSS font-family list. The renderer uses the first family it can load and falls back through the list.

  • Type: string (non-empty)
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.size number ​

Font size in CSS pixels.

  • Type: number ≥ 1
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.color color ​

Text color.

  • Type: color
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

colorbar.tickfont.weight integer ​

Font weight: a CSS numeric weight (1–1000), normal or bold.

  • Type: integer from 1 to 1000, or "normal" | "bold"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.style enumerated ​

Font style.

  • Type: enumerated
  • Values: "normal" | "italic"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.variant enumerated ​

Capitals variant (CSS font-variant-caps). The SDF text renderer approximates small and petite caps with uppercase letters at a reduced size.

  • Type: enumerated
  • Values: "normal" | "small-caps" | "all-small-caps" | "all-petite-caps" | "petite-caps" | "unicase"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.textcase enumerated ​

Letter case transform: upper, lower, word caps (first letter of each word), or normal.

  • Type: enumerated
  • Values: "normal" | "word caps" | "upper" | "lower"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.lineposition flaglist ​

Text decoration: under, over and/or through joined with + (e.g. under+over), or none.

  • Type: flaglist
  • Flags: "under", "over", "through" (combine with +)
  • Also accepts: "none"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickfont.shadow string ​

CSS text-shadow behind the text (2px 2px 3px black; only the first shadow is drawn), none, or auto for a thin halo in the contrast color of the text.

  • Type: string
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.tickangle angle ​

Tick-label rotation in degrees. auto rotates x-axis labels by the first autotickangles entry that avoids overlap.

  • Type: angle (degrees), or "auto"
  • Default: "auto"
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tickformat string ​

Tick-label format: a d3-format specifier for numbers (.2f, ~s, $,) or a d3-time-format specifier for dates (%b %Y), plus %{n}f for n digits of fractional seconds and %h for the half year. Empty picks a format automatically.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.tickprefix string ​

Text before each tick label.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.showtickprefix enumerated ​

Which tick labels get tickprefix.

  • Type: enumerated
  • Values: "all" | "first" | "last" | "none"
  • Default: "all"
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.ticksuffix string ​

Text after each tick label.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.showticksuffix enumerated ​

Which tick labels get ticksuffix.

  • Type: enumerated
  • Values: "all" | "first" | "last" | "none"
  • Default: "all"
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.separatethousands boolean ​

Always separate thousands (1,000). By default only numbers with 5 or more integer digits are separated.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.exponentformat enumerated ​

How large and small numbers are written: none (1000000), e (1e+6), E (1E+6), power (1×10⁶), SI (1M), B (like SI but 1B for 10⁹).

  • Type: enumerated
  • Values: "none" | "e" | "E" | "power" | "SI" | "B"
  • Default: "B"
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.minexponent number ​

Smallest decimal exponent written in exponent form (SI/B and exponent formats); smaller magnitudes are written out in full.

  • Type: number ≥ 0
  • Default: 3
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.showexponent enumerated ​

Which tick labels show the exponent.

  • Type: enumerated
  • Values: "all" | "first" | "last" | "none"
  • Default: "all"
  • Array OK: no
  • Edit type: colorbars+layout
  • Animatable: no

colorbar.title ​

Colorbar title.

  • Type: object
  • Edit type: colorbars+layout

colorbar.title.text string ​

Colorbar title.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

colorbar.title.font ​

Title font. Defaults to layout.font with the tick-label family and 1.2 × its size.

  • Type: object
  • Edit type: layout+plot

colorbar.title.font.family string ​

CSS font-family list. The renderer uses the first family it can load and falls back through the list.

  • Type: string (non-empty)
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.size number ​

Font size in CSS pixels.

  • Type: number ≥ 1
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.color color ​

Text color.

  • Type: color
  • Default: none
  • Array OK: no
  • Edit type: style
  • Animatable: no

colorbar.title.font.weight integer ​

Font weight: a CSS numeric weight (1–1000), normal or bold.

  • Type: integer from 1 to 1000, or "normal" | "bold"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.style enumerated ​

Font style.

  • Type: enumerated
  • Values: "normal" | "italic"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.variant enumerated ​

Capitals variant (CSS font-variant-caps). The SDF text renderer approximates small and petite caps with uppercase letters at a reduced size.

  • Type: enumerated
  • Values: "normal" | "small-caps" | "all-small-caps" | "all-petite-caps" | "petite-caps" | "unicase"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.textcase enumerated ​

Letter case transform: upper, lower, word caps (first letter of each word), or normal.

  • Type: enumerated
  • Values: "normal" | "word caps" | "upper" | "lower"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.lineposition flaglist ​

Text decoration: under, over and/or through joined with + (e.g. under+over), or none.

  • Type: flaglist
  • Flags: "under", "over", "through" (combine with +)
  • Also accepts: "none"
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.font.shadow string ​

CSS text-shadow behind the text (2px 2px 3px black; only the first shadow is drawn), none, or auto for a thin halo in the contrast color of the text.

  • Type: string
  • Default: none
  • Array OK: no
  • Edit type: layout+plot (inherited)
  • Animatable: no

colorbar.title.side enumerated ​

Where the title goes relative to the bar. Defaults to top (v) or right (h).

  • Type: enumerated
  • Values: "right" | "top" | "bottom"
  • Default: none
  • Array OK: no
  • Edit type: colorbars+layout (inherited)
  • Animatable: no

coloraxis subplotid ​

Share a colorscale and domain with other traces through layout.coloraxis ('coloraxis', 'coloraxis2', …). Overrides this container's colorscale attributes.

  • Type: subplotid (coloraxis, coloraxis2, coloraxis3, …)
  • Default: "coloraxis"
  • Array OK: no
  • Edit type: style
  • Animatable: no

contours ​

Contour lines of constant x, y and z.

  • Type: object
  • Edit type: plot

contours.x ​

Contour lines of constant x: drawn in the surface's shader (exact at any zoom), and projected onto the walls with project.

  • Type: object
  • Edit type: plot

contours.x.show boolean ​

Draw contour lines of the x coordinates on the surface.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.start number ​

First contour level (with end and size). Default: the x axis ticks.

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.end number ​

Last contour level (with start and size). Default: the x axis ticks.

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.size number ​

Step between contour levels (with start and end). Default: the x axis ticks.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.project ​

Projections of the contour lines (and highlight lines) onto the axis walls.

  • Type: object
  • Edit type: plot

contours.x.project.x boolean ​

Also draw these contour lines projected onto the scene's x wall (the far wall across the x axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.project.y boolean ​

Also draw these contour lines projected onto the scene's y wall (the far wall across the y axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.project.z boolean ​

Also draw these contour lines projected onto the scene's z wall (the far wall across the z axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.color color ​

Color of the contour lines.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.usecolormap boolean ​

Color the contour lines with the surface's colorscale instead of color.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.width number ​

Width of the contour lines, px.

  • Type: number from 1 to 16
  • Default: 2
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.highlight boolean ​

Draw the contour line of the hovered point's x value while hovering.

  • Type: boolean
  • Default: true
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.highlightcolor color ​

Color of the highlight line.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.x.highlightwidth number ​

Width of the highlight line, px.

  • Type: number from 1 to 16
  • Default: 2
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y ​

Contour lines of constant y: drawn in the surface's shader (exact at any zoom), and projected onto the walls with project.

  • Type: object
  • Edit type: plot

contours.y.show boolean ​

Draw contour lines of the y coordinates on the surface.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.start number ​

First contour level (with end and size). Default: the y axis ticks.

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.end number ​

Last contour level (with start and size). Default: the y axis ticks.

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.size number ​

Step between contour levels (with start and end). Default: the y axis ticks.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.project ​

Projections of the contour lines (and highlight lines) onto the axis walls.

  • Type: object
  • Edit type: plot

contours.y.project.x boolean ​

Also draw these contour lines projected onto the scene's x wall (the far wall across the x axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.project.y boolean ​

Also draw these contour lines projected onto the scene's y wall (the far wall across the y axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.project.z boolean ​

Also draw these contour lines projected onto the scene's z wall (the far wall across the z axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.color color ​

Color of the contour lines.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.usecolormap boolean ​

Color the contour lines with the surface's colorscale instead of color.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.width number ​

Width of the contour lines, px.

  • Type: number from 1 to 16
  • Default: 2
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.highlight boolean ​

Draw the contour line of the hovered point's y value while hovering.

  • Type: boolean
  • Default: true
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.highlightcolor color ​

Color of the highlight line.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.y.highlightwidth number ​

Width of the highlight line, px.

  • Type: number from 1 to 16
  • Default: 2
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z ​

Contour lines of constant z: drawn in the surface's shader (exact at any zoom), and projected onto the walls with project.

  • Type: object
  • Edit type: plot

contours.z.show boolean ​

Draw contour lines of the heights (z) on the surface.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.start number ​

First contour level (with end and size). Default: the z axis ticks.

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.end number ​

Last contour level (with start and size). Default: the z axis ticks.

  • Type: number
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.size number ​

Step between contour levels (with start and end). Default: the z axis ticks.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.project ​

Projections of the contour lines (and highlight lines) onto the axis walls.

  • Type: object
  • Edit type: plot

contours.z.project.x boolean ​

Also draw these contour lines projected onto the scene's x wall (the far wall across the x axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.project.y boolean ​

Also draw these contour lines projected onto the scene's y wall (the far wall across the y axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.project.z boolean ​

Also draw these contour lines projected onto the scene's z wall (the far wall across the z axis, following the camera).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.color color ​

Color of the contour lines.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.usecolormap boolean ​

Color the contour lines with the surface's colorscale instead of color.

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.width number ​

Width of the contour lines, px.

  • Type: number from 1 to 16
  • Default: 2
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.highlight boolean ​

Draw the contour line of the hovered point's z value while hovering.

  • Type: boolean
  • Default: true
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.highlightcolor color ​

Color of the highlight line.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

contours.z.highlightwidth number ​

Width of the highlight line, px.

  • Type: number from 1 to 16
  • Default: 2
  • Array OK: no
  • Edit type: plot
  • Animatable: no

lighting ​

Plotly's lighting model: coefficients of the ambient, diffuse and specular light. With scene.lighting, they scale the scene's lights.

  • Type: object
  • Edit type: calc

lighting.ambient number ​

Ambient light: the share of the color shown whatever the direction of the light.

  • Type: number from 0 to 1
  • Default: 0.8
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lighting.diffuse number ​

Diffuse light: the share of the color lit by the light (Lambert).

  • Type: number from 0 to 1
  • Default: 0.8
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lighting.specular number ​

Specular highlights: the light reflected toward the eye.

  • Type: number from 0 to 2
  • Default: 0.05
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lighting.roughness number ​

Roughness of the surface: the spread of the specular highlights.

  • Type: number from 0 to 1
  • Default: 0.5
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lighting.fresnel number ​

Fresnel reflection: how much more light surfaces reflect at grazing angles.

  • Type: number from 0 to 5
  • Default: 0.2
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lightposition ​

Position of the light (Plotly's model, without scene.lighting), in clip space: it moves with the view.

  • Type: object
  • Edit type: calc

lightposition.x number ​

x of the light, in clip space (moves with the view; ±1 is the edge of the view, 1e5 far away).

  • Type: number from -100000 to 100000
  • Default: 10
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lightposition.y number ​

y of the light, in clip space (moves with the view; ±1 is the edge of the view, 1e5 far away).

  • Type: number from -100000 to 100000
  • Default: 10000
  • Array OK: no
  • Edit type: calc
  • Animatable: no

lightposition.z number ​

z of the light, in clip space (moves with the view; ±1 is the edge of the view, 1e5 far away).

  • Type: number from -100000 to 100000
  • Default: 0
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material ​

The material of the surface (Holochart extension). Plotly figures keep the default, plotly.

  • Type: object
  • Edit type: calc

material.type enumerated ​

How surfaces are shaded. plotly: Plotly's lighting model. flat: unlit, colors as given. basic, lambert, phong, standard, physical, toon, matcap: the three.js material of that name, lit by the lights of the scene (scene.lighting) or of the 2.5D view.

  • Type: enumerated
  • Values: "plotly" | "flat" | "basic" | "lambert" | "phong" | "standard" | "physical" | "toon" | "matcap"
  • Default: "plotly"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.roughness number ​

Surface roughness (standard, physical). Default: lighting.roughness.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.metalness number ​

How metallic the surface is (standard, physical). Default 0.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.shininess number ​

Sharpness of the highlights (phong). Default: from lighting.roughness.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.specular color ​

Color of the highlights (phong). Default: lighting.specular gray.

  • Type: color
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.emissive color ​

Color the surface emits regardless of the lights. Default black.

  • Type: color
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.emissiveintensity number ​

Strength of emissive. Default 1.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.reflectivity number ​

How much the environment is reflected (basic, lambert, phong, physical).

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.envmapintensity number ​

Strength of the environment's light (standard, physical). Default 1.

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.clearcoat number ​

A clear lacquer layer (physical). Default 0.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.clearcoatroughness number ​

Roughness of the clear coat (physical). Default 0.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.transmission number ​

Transmission, for glass-like surfaces (physical). Default 0.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.ior number ​

Index of refraction (physical). Default 1.5.

  • Type: number from 1 to 2.333
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.thickness number ​

Thickness of transmissive volumes, scene units (physical).

  • Type: number ≥ 0
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.sheen number ​

Velvet-like sheen (physical). Default 0.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.sheencolor color ​

Color of the sheen (physical).

  • Type: color
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.sheenroughness number ​

Roughness of the sheen (physical). Default 1.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.iridescence number ​

Thin-film iridescence (physical). Default 0.

  • Type: number from 0 to 1
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.steps integer ​

Number of shading bands (toon).

  • Type: integer from 2 to 16
  • Default: 3
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.matcap string ​

URL of a matcap image (matcap): the surface takes its colors from it by normal direction.

  • Type: string
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.castshadow boolean ​

Cast shadows from the lights of scene.lighting with castshadow (onto three.js material types and the ground plane).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: calc
  • Animatable: no

material.receiveshadow boolean ​

Receive shadows (three.js material types only).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: calc
  • Animatable: no

wireframe ​

A wireframe over the surface: its grid lines, drawn in the shader (Holochart extension, not in Plotly).

  • Type: object
  • Edit type: plot

wireframe.show boolean ​

Draw the grid lines of the surface over it (Holochart extension).

  • Type: boolean
  • Default: false
  • Array OK: no
  • Edit type: plot
  • Animatable: no

wireframe.color color ​

Color of the grid lines.

  • Type: color
  • Default: "#444"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

wireframe.width number ​

Width of the grid lines, px.

  • Type: number from 0.5 to 16
  • Default: 1
  • Array OK: no
  • Edit type: plot
  • Animatable: no

wireframe.step integer ​

Draw every step-th grid line (1: every row and column of z).

  • Type: integer ≥ 1
  • Default: 1
  • Array OK: no
  • Edit type: plot
  • Animatable: no

xhoverformat string ​

d3 number or date format of x values in hover labels. Default: the axis format.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: none
  • Animatable: no

yhoverformat string ​

d3 number or date format of y values in hover labels. Default: the axis format.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: none
  • Animatable: no

zhoverformat string ​

d3 number or date format of z values in hover labels. Default: the axis format.

  • Type: string
  • Default: ""
  • Array OK: no
  • Edit type: none
  • Animatable: no

Released under the MIT License.