Skip to content

Variable: histogram2dcontourAttributes ​

ts
const histogram2dcontourAttributes: ObjectNode<{
  autobinx: Attr<boolean, {
     description: "Obsolete (Plotly compatibility): bins are automatic unless `xbins` sets them.";
     editType: "calc";
  }>;
  autobiny: Attr<boolean, {
     description: "Obsolete (Plotly compatibility): bins are automatic unless `ybins` sets them.";
     editType: "calc";
  }>;
  autocolorscale: Attr<boolean, {
     description: "Pick the colorscale from the sign of the color domain (`layout.colorscale.sequential`, `sequentialminus` or `diverging`). Defaults to true unless `colorscale` is given.";
     editType: "calc";
  }>;
  autocontour: Attr<boolean, {
     description: "Pick the contour levels automatically (at most `ncontours`, at nice round values). Defaults to false when `contours.start` and `contours.end` are given.";
     dflt: true;
     editType: "calc";
  }>;
  bingroup: Attr<string, {
     description: "Default of `xbingroup` and `ybingroup` (suffixed per direction): traces with the same `bingroup` get matching x bins and matching y bins.";
     dflt: "";
     editType: "calc";
  }>;
  coloraxis: Attr<"coloraxis" | `coloraxis${number}`, {
     description: "Share a colorscale and domain with other traces through `layout.coloraxis` (`'coloraxis'`, `'coloraxis2'`, …). Overrides this trace's colorscale attributes.";
     dflt: "coloraxis";
     editType: "calc" | "style";
  }>;
  colorbar: ObjectNode<{
     bgcolor: Attr<string, {
        description: "Background of the box.";
        dflt: "rgba(0,0,0,0)";
     }>;
     bordercolor: Attr<string, {
        description: "Border color of the colorbar box.";
        dflt: "#444";
     }>;
     borderwidth: Attr<number, {
        description: "Border width of the box, px.";
        dflt: 0;
        min: 0;
     }>;
     dtick: AttrSpec<unknown, unknown>;
     exponentformat: Attr<"none" | "e" | "E" | "power" | "SI" | "B", {
        description: "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⁹).";
        dflt: "B";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        values: readonly ["none", "e", "E", "power", "SI", "B"];
     }>;
     len: Attr<number, {
        description: "Length of the colorbar along its axis, padding included (`ypad` / `xpad`).";
        dflt: 1;
        min: 0;
     }>;
     lenmode: Attr<"fraction" | "pixels", {
        description: "Unit of `len`: px, or a fraction of the plot height (`v`) / width (`h`).";
        dflt: "fraction";
        values: readonly ["fraction", "pixels"];
     }>;
     minexponent: Attr<number, {
        description: "Smallest decimal exponent written in exponent form (`SI`/`B` and exponent formats); smaller magnitudes are written out in full.";
        dflt: 3;
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        min: 0;
     }>;
     nticks: Attr<number, {
        description: "Maximum number of ticks for `tickmode: auto` (the actual number may be lower so steps stay round). 0 picks it from the axis length.";
        dflt: 0;
        editType: "ticks";
        min: 0;
     }>;
     orientation: Attr<"v" | "h", {
        description: "Vertical bar (`v`, beside the plot) or horizontal bar (`h`, above or below).";
        dflt: "v";
        values: readonly ["h", "v"];
     }>;
     outlinecolor: Attr<string, {
        description: "Color of the outline around the bar.";
        dflt: "#444";
     }>;
     outlinewidth: Attr<number, {
        description: "Outline width, px.";
        dflt: 1;
        min: 0;
     }>;
     separatethousands: Attr<boolean, {
        description: "Always separate thousands (1,000). By default only numbers with 5 or more integer digits are separated.";
        dflt: false;
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
     }>;
     showexponent: Attr<"all" | "none" | "first" | "last", {
        description: "Which tick labels show the exponent.";
        dflt: "all";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        values: readonly ["all", "first", "last", "none"];
     }>;
     showticklabels: Attr<boolean, {
        description: "Show tick labels.";
        dflt: true;
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
     }>;
     showtickprefix: Attr<"all" | "none" | "first" | "last", {
        description: "Which tick labels get `tickprefix`.";
        dflt: "all";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        values: readonly ["all", "first", "last", "none"];
     }>;
     showticksuffix: Attr<"all" | "none" | "first" | "last", {
        description: "Which tick labels get `ticksuffix`.";
        dflt: "all";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        values: readonly ["all", "first", "last", "none"];
     }>;
     thickness: Attr<number, {
        description: "Thickness of the color bar.";
        dflt: 30;
        min: 0;
     }>;
     thicknessmode: Attr<"fraction" | "pixels", {
        description: "Unit of `thickness`: px, or a fraction of the plot width (`v`) / height (`h`).";
        dflt: "pixels";
        values: readonly ["fraction", "pixels"];
     }>;
     tick0: AttrSpec<unknown, unknown>;
     tickangle: Attr<number | "auto", {
        description: "Tick-label rotation in degrees. `auto` rotates x-axis labels by the first `autotickangles` entry that avoids overlap.";
        dflt: "auto";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        extras: readonly ["auto"];
     }>;
     tickcolor: Attr<string, {
        description: "Tick color. Defaults to `color`.";
        editType: "ticks";
     }>;
     tickfont: ObjectNode<{
        color: Attr<string, {
           description: "Text color.";
           editType: "style";
        }>;
        family: Attr<string, {
           description: "CSS font-family list. The renderer uses the first family it can load and falls back through the list.";
           noBlank: true;
           strict: true;
        }>;
        lineposition: Attr<
           | "none"
           | "under"
           | "over"
           | "through"
           | `under+${string}`
           | `over+${string}`
           | `through+${string}`, {
           description: "Text decoration: `under`, `over` and/or `through` joined with `+` (e.g. `under+over`), or `none`.";
           extras: readonly ["none"];
           flags: readonly ["under", "over", "through"];
        }>;
        shadow: Attr<string, {
           description: "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.";
        }>;
        size: Attr<number, {
           description: "Font size in CSS pixels.";
           min: 1;
        }>;
        style: Attr<"normal" | "italic", {
           description: "Font style.";
           values: readonly ["normal", "italic"];
        }>;
        textcase: Attr<"normal" | "word caps" | "upper" | "lower", {
           description: "Letter case transform: `upper`, `lower`, `word caps` (first letter of each word), or `normal`.";
           values: readonly ["normal", "word caps", "upper", "lower"];
        }>;
        variant: Attr<
           | "normal"
           | "small-caps"
           | "all-small-caps"
           | "all-petite-caps"
           | "petite-caps"
           | "unicase", {
           description: "Capitals variant (CSS `font-variant-caps`). The SDF text renderer approximates small and petite caps with uppercase letters at a reduced size.";
           values: readonly ["normal", "small-caps", "all-small-caps", "all-petite-caps", "petite-caps", "unicase"];
        }>;
        weight: Attr<number | "normal" | "bold", {
           description: "Font weight: a CSS numeric weight (1–1000), `normal` or `bold`.";
           extras: readonly ["normal", "bold"];
           max: 1000;
           min: 1;
        }>;
     }>;
     tickformat: Attr<string, {
        description: "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.";
        dflt: "";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
     }>;
     ticklabeloverflow: Attr<"allow" | "hide past div" | "hide past domain", {
        description: "Hide labels past the figure or past the bar. Defaults to `hide past domain` for inside labels, else `hide past div`.";
        values: readonly ["allow", "hide past div", "hide past domain"];
     }>;
     ticklabelposition: Attr<
        | "inside"
        | "outside"
        | "outside top"
        | "inside top"
        | "outside left"
        | "inside left"
        | "outside right"
        | "inside right"
        | "outside bottom"
        | "inside bottom", {
        description: "Tick labels outside the bar (away from it) or inside (over it); `top`/`bottom` (`v`) or `left`/`right` (`h`) move them beside their tick.";
        dflt: "outside";
        values: readonly ["outside", "inside", "outside top", "inside top", "outside bottom", "inside bottom", "outside left", "inside left", "outside right", "inside right"];
     }>;
     ticklabelstep: Attr<number, {
        description: "Label every n-th tick only (`tickmode` `auto` and `linear`).";
        dflt: 1;
        editType: "ticks";
        min: 1;
     }>;
     ticklen: Attr<number, {
        description: "Tick length in px.";
        dflt: 5;
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
        min: 0;
     }>;
     tickmode: Attr<"linear" | "auto" | "array" | "sync", {
        description: "`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`.";
        editType: "ticks";
        values: readonly ["auto", "linear", "array", "sync"];
     }>;
     tickprefix: Attr<string, {
        description: "Text before each tick label.";
        dflt: "";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
     }>;
     ticks: Attr<"" | "inside" | "outside", {
        description: "Draw tick marks outside or inside the plot area, or not at all (`''`).";
        dflt: "";
        editType: EditType;
        values: readonly ["outside", "inside", ""];
     }>;
     ticksuffix: Attr<string, {
        description: "Text after each tick label.";
        dflt: "";
        editType: readonly (
           | "none"
           | "legend"
           | "calc"
           | "calcIfAutorange"
           | "crossTraceCalc"
           | "layout"
           | "ticks"
           | "plot"
           | "style"
           | "colorbars"
           | "modebar"
          | "camera")[];
     }>;
     ticktext: AttrSpec<DataArray, DataArray | undefined>;
     tickvals: AttrSpec<DataArray, DataArray | undefined>;
     tickwidth: Attr<number, {
        description: "Tick width in px.";
        dflt: 1;
        editType: "ticks";
        min: 0;
     }>;
     title: ObjectNode<{
        font: ObjectNode<{
           color: Attr<string, {
              description: "Text color.";
              editType: "style";
           }>;
           family: Attr<string, {
              description: "CSS font-family list. The renderer uses the first family it can load and falls back through the list.";
              noBlank: true;
              strict: true;
           }>;
           lineposition: Attr<
              | "none"
              | "under"
              | "over"
              | "through"
              | `under+${(...)}`
              | `over+${(...)}`
              | `through+${(...)}`, {
              description: "Text decoration: `under`, `over` and/or `through` joined with `+` (e.g. `under+over`), or `none`.";
              extras: readonly [...];
              flags: readonly [..., ..., ...];
           }>;
           shadow: Attr<string, {
              description: "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.";
           }>;
           size: Attr<number, {
              description: "Font size in CSS pixels.";
              min: 1;
           }>;
           style: Attr<"normal" | "italic", {
              description: "Font style.";
              values: readonly [..., ...];
           }>;
           textcase: Attr<"normal" | "word caps" | "upper" | "lower", {
              description: "Letter case transform: `upper`, `lower`, `word caps` (first letter of each word), or `normal`.";
              values: readonly [..., ..., ..., ...];
           }>;
           variant: Attr<
              | "normal"
              | "small-caps"
              | "all-small-caps"
              | "all-petite-caps"
              | "petite-caps"
              | "unicase", {
              description: "Capitals variant (CSS `font-variant-caps`). The SDF text renderer approximates small and petite caps with uppercase letters at a reduced size.";
              values: readonly [..., ..., ..., ..., ..., ...];
           }>;
           weight: Attr<number | "normal" | "bold", {
              description: "Font weight: a CSS numeric weight (1–1000), `normal` or `bold`.";
              extras: readonly [..., ...];
              max: 1000;
              min: 1;
           }>;
        }>;
        side: Attr<"top" | "bottom" | "right", {
           description: "Where the title goes relative to the bar. Defaults to `top` (`v`) or `right` (`h`).";
           values: readonly ["right", "top", "bottom"];
        }>;
        text: Attr<string, {
           description: "Colorbar title.";
           dflt: "";
        }>;
     }>;
     x: Attr<number, {
        description: "Horizontal position (`xref` fraction). Defaults to 1.02 (`v`, paper), 1 (`v`, container) or 0.5 (`h`).";
     }>;
     xanchor: Attr<"left" | "center" | "right", {
        description: "Which side of the colorbar sits at `x`. Defaults to `left` (`v`, paper), `right` (`v`, container) or `center` (`h`).";
        values: readonly ["left", "center", "right"];
     }>;
     xpad: Attr<number, {
        description: "Horizontal padding, px.";
        dflt: 10;
        min: 0;
     }>;
     xref: Attr<"container" | "paper", {
        description: "Reference of `x`: the plot area (`paper`) or the whole figure.";
        dflt: "paper";
        values: readonly ["container", "paper"];
     }>;
     y: Attr<number, {
        description: "Vertical position (`yref` fraction). Defaults to 0.5 (`v`), 1.02 (`h`, paper) or 1 (`h`, container).";
     }>;
     yanchor: Attr<"middle" | "top" | "bottom", {
        description: "Which side of the colorbar sits at `y`. Defaults to `middle` (`v`), `bottom` (`h`, paper) or `top` (`h`, container).";
        values: readonly ["top", "middle", "bottom"];
     }>;
     ypad: Attr<number, {
        description: "Vertical padding, px.";
        dflt: 10;
        min: 0;
     }>;
     yref: Attr<"container" | "paper", {
        description: "Reference of `y`: the plot area (`paper`) or the whole figure.";
        dflt: "paper";
        values: readonly ["container", "paper"];
     }>;
  }>;
  colorscale: Attr<ColorScale, {
     description: "Colorscale of the aggregated values: a name (`'Viridis'`, `'RdBu'`, …), a list of colors, or `[position, color]` stops from 0 to 1. Default: Plotly's `RdBu`; the default `holochart` template uses its sequential neon plasma.";
     editType: "calc" | "style";
  }>;
  contours: ObjectNode<{
     coloring: Attr<"none" | "fill" | "heatmap" | "lines", {
        description: "How levels are colored: flat bands between levels (`'fill'`), a smooth heatmap under the lines (`'heatmap'`), colored lines only (`'lines'`), or plain `line.color` lines (`'none'`). Not used by constraint contours.";
        dflt: "fill";
        editType: "calc";
        values: readonly ["fill", "heatmap", "lines", "none"];
     }>;
     end: Attr<number, {
        description: "Last contour level (with `start`, turns `autocontour` off).";
        editType: "calc";
     }>;
     labelfont: ObjectNode<{
        color: Attr<string, {
           description: "Text color.";
           editType: "style";
        }>;
        family: Attr<string, {
           description: "CSS font-family list. The renderer uses the first family it can load and falls back through the list.";
           noBlank: true;
           strict: true;
        }>;
        lineposition: Attr<
           | "none"
           | "under"
           | "over"
           | "through"
           | `under+${string}`
           | `over+${string}`
           | `through+${string}`, {
           description: "Text decoration: `under`, `over` and/or `through` joined with `+` (e.g. `under+over`), or `none`.";
           extras: readonly ["none"];
           flags: readonly ["under", "over", "through"];
        }>;
        shadow: Attr<string, {
           description: "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.";
        }>;
        size: Attr<number, {
           description: "Font size in CSS pixels.";
           min: 1;
        }>;
        style: Attr<"normal" | "italic", {
           description: "Font style.";
           values: readonly ["normal", "italic"];
        }>;
        textcase: Attr<"normal" | "word caps" | "upper" | "lower", {
           description: "Letter case transform: `upper`, `lower`, `word caps` (first letter of each word), or `normal`.";
           values: readonly ["normal", "word caps", "upper", "lower"];
        }>;
        variant: Attr<
           | "normal"
           | "small-caps"
           | "all-small-caps"
           | "all-petite-caps"
           | "petite-caps"
           | "unicase", {
           description: "Capitals variant (CSS `font-variant-caps`). The SDF text renderer approximates small and petite caps with uppercase letters at a reduced size.";
           values: readonly ["normal", "small-caps", "all-small-caps", "all-petite-caps", "petite-caps", "unicase"];
        }>;
        weight: Attr<number | "normal" | "bold", {
           description: "Font weight: a CSS numeric weight (1–1000), `normal` or `bold`.";
           extras: readonly ["normal", "bold"];
           max: 1000;
           min: 1;
        }>;
     }>;
     labelformat: Attr<string, {
        description: "d3 number format of the level labels, e.g. `.2f`. Default: automatic.";
        dflt: "";
        editType: "plot";
     }>;
     operation: Attr<
        | "="
        | "<"
        | ">="
        | ">"
        | "<="
        | "[]"
        | "()"
        | "[)"
        | "(]"
        | "]["
        | ")("
        | "]("
        | ")[", {
        description: "Constraint contours: `'='` draws the line where `z` equals `value`; `'<'` / `'<='` and `'>'` / `'>='` shade where `z` is below or above `value`; `'[]'`, `'()'`, `'[)'`, `'(]'` shade inside the interval `value`, `']', ')(', '['` outside it. Open and closed ends draw the same.";
        dflt: "=";
        editType: "calc";
        values: readonly ["=", "<", ">=", ">", "<=", "[]", "()", "[)", "(]", "]", ")(", "["];
     }>;
     showlabels: Attr<boolean, {
        description: "Label contour lines with their level, along the lines (the lines break under the labels).";
        dflt: false;
        editType: "plot";
     }>;
     showlines: Attr<boolean, {
        description: "Draw the contour lines (only for `coloring: 'fill'` and shaded constraints; always drawn otherwise).";
        dflt: true;
        editType: "plot";
     }>;
     size: Attr<number, {
        description: "Step between contour levels. Default: a nice round step from `ncontours`.";
        editType: "calc";
        min: 0;
     }>;
     start: Attr<number, {
        description: "First contour level (with `end`, turns `autocontour` off).";
        editType: "calc";
     }>;
     type: Attr<"levels" | "constraint", {
        description: "`'levels'`: lines (and fills) at every level. `'constraint'`: the boundary of the region where `z` satisfies `operation` and `value`, with the region shaded in `fillcolor` for inequalities.";
        dflt: "levels";
        editType: "calc";
        values: readonly ["levels", "constraint"];
     }>;
     value: AttrSpec<unknown, unknown>;
  }>;
  fillcolor: Attr<string, {
     description: "Fill of the shaded region of constraint contours. Default: `line.color` (else the trace's colorway color) at half opacity.";
     editType: "calc";
  }>;
  histfunc: Attr<"count" | "sum" | "avg" | "min" | "max", {
     description: "What each bin shows: the number of samples (`count`), or the `sum`, average (`avg`), `min` or `max` of their `z` values.";
     dflt: "count";
     editType: "calc";
     values: readonly ["count", "sum", "avg", "min", "max"];
  }>;
  histnorm: Attr<"" | "percent" | "probability" | "density" | "probability density", {
     description: "Normalization: none, the percentage or fraction of the total (`percent`, `probability`), per unit area (`density`: value / bin area), or both (`probability density`, integrating to 1).";
     dflt: "";
     editType: "calc";
     values: readonly ["", "percent", "probability", "density", "probability density"];
  }>;
  line: ObjectNode<{
     color: Attr<string, {
        description: "Contour line color. Default: black; lines take their level's color with `coloring: 'lines'`. Constraint contours default to `fillcolor` made opaque.";
        editType: "style";
     }>;
     dash: Attr<string, {
        description: "Dash style: `'solid'`, `'dot'`, `'dash'`, `'longdash'`, `'dashdot'`, `'longdashdot'`, or a dash list such as `'5px,10px,2px'`.";
        dflt: "solid";
        editType: "style";
     }>;
     smoothing: Attr<number, {
        description: "Smoothing of the contour lines and fills (Plotly’s spline smoothing): 0 draws straight segments between grid crossings.";
        dflt: 1;
        editType: "plot";
        max: 1.3;
        min: 0;
     }>;
     width: Attr<number, {
        description: "Contour line width in px (default 0.5, or 2 for constraint contours).";
        dflt: 0.5;
        editType: "style";
        min: 0;
     }>;
  }>;
  marker: ObjectNode<{
     color: AttrSpec<DataArray, DataArray | undefined>;
  }>;
  nbinsx: Attr<number, {
     description: "Maximum number of x bins when `xbins.size` is not given (a nice round size is picked). 0: automatic.";
     dflt: 0;
     editType: "calc";
     min: 0;
  }>;
  nbinsy: Attr<number, {
     description: "Maximum number of y bins when `ybins.size` is not given (a nice round size is picked). 0: automatic.";
     dflt: 0;
     editType: "calc";
     min: 0;
  }>;
  ncontours: Attr<number, {
     description: "Maximum number of contour levels with `autocontour` (or without `contours.size`); the actual number is chosen to give nice round levels.";
     dflt: 15;
     editType: "calc";
     min: 1;
  }>;
  reversescale: Attr<boolean, {
     description: "Reverse the colorscale (the lowest value gets the last color).";
     dflt: false;
     editType: "calc" | "style";
  }>;
  showscale: Attr<boolean, {
     description: "Show a colorbar for the colorscale (drawn by the colorbar component).";
     dflt: true;
     editType: "colorbars";
  }>;
  textfont: ObjectNode<{
     color: Attr<string, {
        description: "Text color. Default: black or white, whichever contrasts with the cell.";
        editType: "style";
     }>;
     family: Attr<string, {
        description: "CSS font-family list. Default: `layout.font.family`.";
        editType: "plot";
        noBlank: true;
        strict: true;
     }>;
     size: Attr<number | "auto", {
        description: "Font size in CSS px, or `'auto'`: the largest size (up to `layout.font.size`) at which labels fit their cells.";
        dflt: "auto";
        editType: "plot";
        extras: readonly ["auto"];
        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;
     }>;
  }>;
  texttemplate: Attr<string, {
     description: "Label drawn in every bin with `contours.coloring: 'heatmap'`: `%{z}`, `%{x}`, `%{y}` with optional d3 formats. Empty: no labels.";
     dflt: "";
     editType: "plot";
  }>;
  x: AttrSpec<DataArray, DataArray | undefined>;
  xbingroup: Attr<string, {
     description: "Traces (histogram2d, histogram2dcontour, and histograms with the same `bingroup`) on axes of the same type with the same group share their x bins.";
     dflt: "";
     editType: "calc";
  }>;
  xbins: ObjectNode<{
     end: AttrSpec<unknown, unknown>;
     size: AttrSpec<unknown, unknown>;
     start: AttrSpec<unknown, unknown>;
  }>;
  xhoverformat: Attr<string, {
     description: "d3 number or date format of x values in hover labels. Default: the axis format.";
     dflt: "";
     editType: "none";
  }>;
  y: AttrSpec<DataArray, DataArray | undefined>;
  ybingroup: Attr<string, {
     description: "Like `xbingroup`, for y bins.";
     dflt: "";
     editType: "calc";
  }>;
  ybins: ObjectNode<{
     end: AttrSpec<unknown, unknown>;
     size: AttrSpec<unknown, unknown>;
     start: AttrSpec<unknown, unknown>;
  }>;
  yhoverformat: Attr<string, {
     description: "d3 number or date format of y values in hover labels. Default: the axis format.";
     dflt: "";
     editType: "none";
  }>;
  z: AttrSpec<DataArray, DataArray | undefined>;
  zauto: Attr<boolean, {
     description: "Compute the color domain from the aggregated values. Defaults to false when both `zmin` and `zmax` are given.";
     dflt: true;
     editType: "calc" | "style";
  }>;
  zhoverformat: Attr<string, {
     description: "d3 number format of z values in hover labels (and `%{z}` in templates).";
     dflt: "";
     editType: "none";
  }>;
  zmax: Attr<number, {
     description: "Value mapped to the last colorscale color (with `zmin`; turns `zauto` off).";
     editType: "calc" | "style";
  }>;
  zmid: Attr<number, {
     description: "With `zauto`, widen the automatic domain so it is symmetric around this value (diverging data).";
     editType: "calc" | "style";
  }>;
  zmin: Attr<number, {
     description: "Value mapped to the first colorscale color (with `zmax`; turns `zauto` off).";
     editType: "calc" | "style";
  }>;
  zorder: Attr<number, {
     description: "Stacking order among the traces of a subplot: higher is drawn on top. At equal `zorder`, contours draw below bars and scatter traces (Plotly’s layer order).";
     dflt: 0;
     editType: "plot";
  }>;
}>;

Experimental

The histogram2dcontour schema. Common trace attributes come from core.

Released under the MIT License.