Skip to content

waterfall attributes ​

Waterfall charts: how a running total is built from positive and negative changes, with sum bars and connector lines, drawn as one instanced GPU rect set with batched SDF labels.

  • Categories: cartesian, waterfall, showLegend
  • Plotly equivalent: waterfall
  • Guide: waterfall chart page
  • Used in examples: demos/dallas-weather/rain-waterfall, demos/index-funds/growth-waterfall, demos/science-basics/combustion-waterfall, demos/tqqq-soxl/exposure-waterfall, waterfall/connector-modes, waterfall/depth, waterfall/grouped, waterfall/horizontal, waterfall/interaction, waterfall/pnl

Generated from the attribute schema (137 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 string ​

Hover text per point; defaults to text.

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

hoverinfo flaglist ​

Which fields hover labels show: the position and value (x, y), text, the running total before (initial) and after (final) the bar and its change (delta, with ▲ or ▼) and the trace name; 'skip' also turns hover events off for this trace. Default 'all'.

  • Type: flaglist
  • Flags: "name", "x", "y", "text", "initial", "delta", "final" (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

xaxis subplotid ​

The x axis this trace is plotted against: 'x' → layout.xaxis, 'x2' → layout.xaxis2.

  • Type: subplotid (x, x2, x3, …)
  • Default: "x"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

yaxis subplotid ​

The y axis this trace is plotted against: 'y' → layout.yaxis, 'y2' → layout.yaxis2.

  • Type: subplotid (y, y2, y3, …)
  • Default: "y"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

x data_array ​

x coordinates: bar positions for vertical bars, bar lengths otherwise. Numbers, dates or category names depending on the axis type.

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

x0 any ​

Starting x coordinate when x is not given: bar i is at x0 + i·dx.

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

dx number ​

Step between implicit x coordinates (see x0).

  • Type: number
  • Default: 1
  • Array OK: no
  • Edit type: calc
  • Animatable: no

xperiod any ​

Only on date or linear x axes: snap each x value to its period of this length (ms, or 'M<n>' months on date axes), positioned per xperiodalignment.

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

xperiod0 any ​

A period boundary for xperiod. Default: 2000-01-01 on date axes (a Sunday for weekly periods), 0 otherwise.

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

xperiodalignment enumerated ​

Where points sit within their xperiod.

  • Type: enumerated
  • Values: "start" | "middle" | "end"
  • Default: "middle"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

y data_array ​

y coordinates: bar positions for horizontal bars, bar lengths otherwise. Numbers, dates or category names depending on the axis type.

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

y0 any ​

Starting y coordinate when y is not given: bar i is at y0 + i·dy.

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

dy number ​

Step between implicit y coordinates (see y0).

  • Type: number
  • Default: 1
  • Array OK: no
  • Edit type: calc
  • Animatable: no

yperiod any ​

Only on date or linear y axes: snap each y value to its period of this length (ms, or 'M<n>' months on date axes), positioned per yperiodalignment.

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

yperiod0 any ​

A period boundary for yperiod. Default: 2000-01-01 on date axes (a Sunday for weekly periods), 0 otherwise.

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

yperiodalignment enumerated ​

Where points sit within their yperiod.

  • Type: enumerated
  • Values: "start" | "middle" | "end"
  • Default: "middle"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

text string ​

Text per bar, drawn per textposition and shown in hover labels.

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

textposition enumerated ​

Where bar labels go: inside (against the bar end, see insidetextanchor), outside (past the bar end; inner bars of a stack stay inside), auto (inside when it fits, else outside), none.

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

insidetextanchor enumerated ​

Where inside labels sit along the bar.

  • Type: enumerated
  • Values: "end" | "middle" | "start"
  • Default: "end"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

textangle angle ​

Label rotation in degrees, clockwise. 'auto' turns inside labels 90° when that fits the bar better.

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

textfont ​

Font of bar labels. Defaults to layout.font.

  • Type: object
  • Edit type: calc

textfont.family string ​

CSS font-family list.

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

textfont.size number ​

Font size in CSS px, or one per bar.

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

textfont.color color ​

Text color, or one per bar.

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

textfont.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: calc
  • Animatable: no

textfont.style enumerated ​

Font style.

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

insidetextfont ​

Font of labels inside bars. Defaults to textfont, with a color contrasting the bar fill.

  • Type: object
  • Edit type: calc

insidetextfont.family string ​

CSS font-family list.

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

insidetextfont.size number ​

Font size in CSS px, or one per bar.

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

insidetextfont.color color ​

Text color, or one per bar.

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

insidetextfont.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: calc
  • Animatable: no

insidetextfont.style enumerated ​

Font style.

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

outsidetextfont ​

Font of labels outside bars. Defaults to textfont.

  • Type: object
  • Edit type: calc

outsidetextfont.family string ​

CSS font-family list.

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

outsidetextfont.size number ​

Font size in CSS px, or one per bar.

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

outsidetextfont.color color ​

Text color, or one per bar.

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

outsidetextfont.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: calc
  • Animatable: no

outsidetextfont.style enumerated ​

Font style.

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

constraintext enumerated ​

Shrink labels (inside, outside, or both) so they are no larger than their bar.

  • Type: enumerated
  • Values: "inside" | "outside" | "both" | "none"
  • Default: "both"
  • Array OK: no
  • Edit type: calc
  • Animatable: no

cliponaxis boolean ​

Clip labels to the plot area. false is not drawn yet: labels are always clipped to the subplot.

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

offset number ​

Shift of the bar's leading edge from its position, in position-axis units, one value or one per bar. Default: centered in its (group) slot.

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

width number ​

Bar width in position-axis units (category slots, or ms on date axes: 86400000 is one day), one value or one per bar. Default: the slot left by layout.bargap and the bar mode.

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

offsetgroup string ​

Traces with the same offset group share one slot in group mode (and stack together in stack/relative modes); bars at the same position line up, also across subplots on the same position axis.

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

alignmentgroup string ​

Traces on the same position axis with the same alignment group split each position between their offset groups; different alignment groups lay out independently.

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

zorder integer ​

Stacking order among the traces of a subplot: higher is drawn on top. At equal zorder, bars draw below scatter traces (Plotly’s layer order), then in trace order.

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

measure data_array ​

What each value is: 'relative' (the default: a change added to the running total), 'total' (a bar showing the running total; its own value is ignored) or 'absolute' (a bar resetting the running total to its value). 'r', 't' and 'a' work too.

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

base number ​

Where the waterfall starts on the value axis (default 0): every bar is drawn relative to it.

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

orientation enumerated ​

'v': vertical bars at x positions with y values; 'h': horizontal bars at y positions with x values. Defaults to 'h' when only x is given.

  • Type: enumerated
  • Values: "v" | "h"
  • Default: none
  • Array OK: no
  • Edit type: calc
  • Animatable: no

texttemplate string ​

Template for bar labels, overriding textinfo and text: %{initial}, %{delta} and %{final} (the running total before and after the bar, and its change), %{label} (position), %{value}, %{x}, %{y}, %{text}, %{customdata}, %{meta}, with optional d3 formats (%{delta:+.1f}).

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

textinfo flaglist ​

What bar labels show, in a fixed order (label, text, initial, delta, final), one per line, formatted like the axes. Unset: text. Totals are computed per trace.

  • Type: flaglist
  • Flags: "label", "text", "initial", "delta", "final" (combine with +)
  • Also accepts: "none"
  • Default: none
  • Array OK: no
  • Edit type: plot
  • Animatable: no

increasing ​

Style of rising bars (relative measures at or above zero).

  • Type: object
  • Edit type: style

increasing.marker ​

Style of rising bars (relative measures at or above zero).

  • Type: object
  • Edit type: style

increasing.marker.color color ​

Fill color of rising bars (relative measures at or above zero). Default '#3D9970'.

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

increasing.marker.line ​

Outline of rising bars (relative measures at or above zero).

  • Type: object
  • Edit type: style

increasing.marker.line.color color ​

Outline color of rising bars (relative measures at or above zero).

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

increasing.marker.line.width number ​

Outline width in CSS px of rising bars (relative measures at or above zero) (centered on the edge).

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

decreasing ​

Style of falling bars (relative measures below zero).

  • Type: object
  • Edit type: style

decreasing.marker ​

Style of falling bars (relative measures below zero).

  • Type: object
  • Edit type: style

decreasing.marker.color color ​

Fill color of falling bars (relative measures below zero). Default '#FF4136'.

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

decreasing.marker.line ​

Outline of falling bars (relative measures below zero).

  • Type: object
  • Edit type: style

decreasing.marker.line.color color ​

Outline color of falling bars (relative measures below zero).

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

decreasing.marker.line.width number ​

Outline width in CSS px of falling bars (relative measures below zero) (centered on the edge).

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

totals ​

Style of sum bars (total and absolute measures).

  • Type: object
  • Edit type: style

totals.marker ​

Style of sum bars (total and absolute measures).

  • Type: object
  • Edit type: style

totals.marker.color color ​

Fill color of sum bars (total and absolute measures). Default '#4499FF'.

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

totals.marker.line ​

Outline of sum bars (total and absolute measures).

  • Type: object
  • Edit type: style

totals.marker.line.color color ​

Outline color of sum bars (total and absolute measures).

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

totals.marker.line.width number ​

Outline width in CSS px of sum bars (total and absolute measures) (centered on the edge).

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

connector ​

Lines connecting each bar to the next.

  • Type: object
  • Edit type: plot

connector.line ​

The connector lines.

  • Type: object
  • Edit type: plot

connector.line.color color ​

Color of the connector lines.

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

connector.line.width number ​

Width in CSS px of the connector lines.

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

connector.line.dash string ​

Dash style: 'solid', 'dot', 'dash', 'longdash', 'dashdot', 'longdashdot', or a dash list such as '5px,10px,2px'.

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

connector.mode enumerated ​

'between': a line from each bar's end to the next bar; 'spanning': also across the bars' ends, so the line runs through the whole waterfall.

  • Type: enumerated
  • Values: "spanning" | "between"
  • Default: "between"
  • Array OK: no
  • Edit type: plot
  • Animatable: no

connector.visible boolean ​

Draw the connector lines.

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

depth any ​

Extrusion toward the viewer (Holochart extension, 2.5D): CSS px, a percentage of each shape's width ('60%'), or one number per item. 0 (default) draws the trace flat. Seen in perspective with layout.view3d; in the flat view extruded shapes are lit from the front.

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

bevel ​

Rounded edges of extruded shapes (with depth).

  • Type: object
  • Edit type: plot

bevel.size number ​

Radius of the rounded front and side edges, CSS px (at most half the size).

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

bevel.segments integer ​

Segments of each rounded edge.

  • Type: integer from 1 to 16
  • Default: 3
  • Array OK: no
  • Edit type: plot
  • Animatable: no

material ​

The material of extruded shapes (with depth): 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

Released under the MIT License.