Variable: funnelareaAttributes
ts
const funnelareaAttributes: ObjectNode<{
aspectratio: Attr<number, {
description: "Height of the funnel relative to its width.";
dflt: 1;
editType: "plot";
min: 0;
}>;
baseratio: Attr<number, {
description: "Width of the funnel's narrow end relative to its wide end.";
dflt: 0.333;
editType: "plot";
max: 1;
min: 0;
}>;
dlabel: Attr<number, {
description: "Label step, see `label0`.";
dflt: 1;
editType: "calc";
}>;
hoverinfo: Attr<
| "name"
| "text"
| `name+${string}`
| `text+${string}`
| "all"
| "none"
| "skip"
| "label"
| "value"
| `label+${string}`
| `value+${string}`
| "percent"
| `percent+${string}`
| readonly (
| "name"
| "text"
| `name+${string}`
| `text+${string}`
| "all"
| "none"
| "skip"
| "label"
| "value"
| `label+${string}`
| `value+${string}`
| "percent"
| `percent+${string}`)[], {
arrayOk: true;
description: "Which fields hover labels show, in a fixed order; `'skip'` also turns hover events off for this trace. Default `'all'`.";
editType: "none";
extras: readonly ["all", "none", "skip"];
flags: readonly ["label", "text", "value", "percent", "name"];
}>;
insidetextfont: ObjectNode<{
color: Attr<string | readonly string[], {
arrayOk: true;
description: "Text color, or one per slice.";
editType: "style";
}>;
family: Attr<string, {
description: "CSS font-family list.";
editType: "plot";
noBlank: true;
strict: true;
}>;
size: Attr<
| number
| TypedArray
| readonly number[], {
arrayOk: true;
description: "Font size in CSS px, or one per slice.";
editType: "plot";
min: 1;
}>;
style: Attr<"normal" | "italic", {
description: "Font style.";
editType: "plot";
values: readonly ["normal", "italic"];
}>;
weight: Attr<number | "normal" | "bold", {
description: "Font weight: a CSS numeric weight (1–1000), `normal` or `bold`.";
editType: "plot";
extras: readonly ["normal", "bold"];
max: 1000;
min: 1;
}>;
}>;
label0: Attr<number, {
description: "Without `labels`: numeric labels `label0 + i·dlabel` (only used when `values` is set).";
dflt: 0;
editType: "calc";
}>;
labels: AttrSpec<DataArray, DataArray | undefined>;
marker: ObjectNode<{
colors: AttrSpec<DataArray, DataArray | undefined>;
line: ObjectNode<{
color: Attr<string | readonly string[], {
arrayOk: true;
description: "Outline color of the stages, or one per stage. Default: `layout.paper_bgcolor`.";
editType: "style";
}>;
width: Attr<
| number
| TypedArray
| readonly number[], {
arrayOk: true;
description: "Outline width in CSS px (centered on the edge), or one per stage.";
dflt: 1;
editType: "style";
min: 0;
}>;
}>;
pattern: ObjectNode<{
bgcolor: Attr<string, {
arrayOk: boolean;
description: `Pattern background. Default: the fill color with `fillmode: 'overlay'`, else transparent${string}.`;
editType: "style";
}>;
fgcolor: Attr<string, {
arrayOk: boolean;
description: `Pattern color. Default: the fill color with `fillmode: 'replace'`, else white or dark grey, whichever contrasts with `bgcolor`${string}.`;
editType: "style";
}>;
fgopacity: Attr<number, {
description: "Opacity of the pattern color. Default 0.5 with `fillmode: 'overlay'`, else 1.";
editType: "style";
max: 1;
min: 0;
}>;
fillmode: Attr<"replace" | "overlay", {
description: "`'replace'`: the pattern in the fill color on `bgcolor` (default transparent) replaces the fill; `'overlay'`: the pattern is drawn over the fill color, in its contrast color at half opacity by default.";
dflt: "replace";
editType: "style";
values: readonly ["replace", "overlay"];
}>;
shape: Attr<"" | "x" | "/" | "\" | "-" | "|" | "+" | ".", {
arrayOk: boolean;
description: `Hatch shape: diagonal (`'/'`, `'\'`, `'x'`), horizontal and vertical (`'-'`, `'|'`, `'+'`) lines or dots (`'.'`); `''` for none${string}.`;
dflt: "";
editType: "style";
values: readonly ["", "/", "\", "x", "-", "|", "+", "."];
}>;
size: Attr<number, {
arrayOk: boolean;
description: `Size of the pattern's tiles in CSS px: the spacing of its lines or dots${string}.`;
dflt: 8;
editType: "style";
min: 0;
}>;
solidity: Attr<number, {
arrayOk: boolean;
description: `Fraction of the area the pattern covers: 0 shows only the background, 1 only the pattern color${string}.`;
dflt: 0.3;
editType: "style";
max: 1;
min: 0;
}>;
}>;
}>;
scalegroup: Attr<string, {
description: "Funnel areas with the same non-empty scale group are sized by their totals: their areas are proportional to the sums of their values.";
dflt: "";
editType: "calc";
}>;
text: AttrSpec<DataArray, DataArray | undefined>;
textfont: ObjectNode<{
color: Attr<string | readonly string[], {
arrayOk: true;
description: "Text color, or one per slice.";
editType: "style";
}>;
family: Attr<string, {
description: "CSS font-family list.";
editType: "plot";
noBlank: true;
strict: true;
}>;
size: Attr<
| number
| TypedArray
| readonly number[], {
arrayOk: true;
description: "Font size in CSS px, or one per slice.";
editType: "plot";
min: 1;
}>;
style: Attr<"normal" | "italic", {
description: "Font style.";
editType: "plot";
values: readonly ["normal", "italic"];
}>;
weight: Attr<number | "normal" | "bold", {
description: "Font weight: a CSS numeric weight (1–1000), `normal` or `bold`.";
editType: "plot";
extras: readonly ["normal", "bold"];
max: 1000;
min: 1;
}>;
}>;
textinfo: Attr<
| "text"
| `text+${string}`
| "none"
| "label"
| "value"
| `label+${string}`
| `value+${string}`
| "percent"
| `percent+${string}`, {
description: "What stage labels show, in a fixed order (label, text, value, percent of the total), one per line. Default `'percent'`, or `'text+percent'` when `text` is an array. Use `texttemplate` for other layouts.";
editType: "calc";
extras: readonly ["none"];
flags: readonly ["label", "text", "value", "percent"];
}>;
textposition: Attr<"none" | "inside" | readonly ("none" | "inside")[], {
arrayOk: true;
description: "Where stage labels go: `inside` (centered in the stage, shrunk to fit) or `none`.";
dflt: "inside";
editType: "plot";
values: readonly ["inside", "none"];
}>;
texttemplate: Attr<string | readonly string[], {
arrayOk: true;
description: "Template for stage labels, overriding `textinfo`: `%{label}`, `%{value}`, `%{percent}`, `%{text}`, `%{color}`, `%{customdata}`, `%{meta}`, with optional d3 formats (`%{percent:.1%}`). Without a format, `value` and `percent` are formatted like `textinfo`.";
dflt: "";
editType: "plot";
}>;
title: ObjectNode<{
font: ObjectNode<{
color: Attr<string | readonly string[], {
arrayOk: true;
description: "Text color, or one per slice.";
editType: "style";
}>;
family: Attr<string, {
description: "CSS font-family list.";
editType: "plot";
noBlank: true;
strict: true;
}>;
size: Attr<
| number
| TypedArray
| readonly number[], {
arrayOk: true;
description: "Font size in CSS px, or one per slice.";
editType: "plot";
min: 1;
}>;
style: Attr<"normal" | "italic", {
description: "Font style.";
editType: "plot";
values: readonly ["normal", "italic"];
}>;
weight: Attr<number | "normal" | "bold", {
description: "Font weight: a CSS numeric weight (1–1000), `normal` or `bold`.";
editType: "plot";
extras: readonly ["normal", "bold"];
max: 1000;
min: 1;
}>;
}>;
position: Attr<"top left" | "top center" | "top right", {
description: "Where the title goes above the funnel.";
dflt: "top center";
editType: "plot";
values: readonly ["top left", "top center", "top right"];
}>;
text: Attr<string, {
description: "Title of the pie. Empty: no title.";
dflt: "";
editType: "plot";
}>;
}>;
values: AttrSpec<DataArray, DataArray | undefined>;
}>;Experimental
The funnelarea schema.