sy-gauge-chart

Gauge

Read a metric's current state within a defined range.

sy-gauge-chart

Use for values with a clear range, such as target completion, capacity, or speed.

Show trends over time in a separate chart. Explain out-of-range values and the meaning of boundaries.

Base chart tier: Community. Features such as additional renderers and custom branding have separate entitlement requirements.

InputData description
valueThe current measurement.
minThe start of the measurement range.
maxThe end of the measurement range.
variantThe gauge style, such as solid or dial.

Complete implementation example

html
<div id="chart-container" style="width: 100%; min-width: 0;"></div>

<script type="module">
  import { defineCustomElement as define0 } from '@syidax/advanced/components/sy-gauge-chart.js';
  define0();

  const specs = [
    {
      "id": "example-chart",
      "tag": "sy-gauge-chart",
      "props": {
        "engine": "standard",
        "value": 80,
        "min": 0,
        "max": 200,
        "variant": "dial",
        "unit": "km/h",
        "bandThickness": 14,
        "plotBands": [
          {
            "from": 0,
            "to": 120,
            "color": "#16a34a"
          },
          {
            "from": 120,
            "to": 160,
            "color": "#f59e0b"
          },
          {
            "from": 160,
            "to": 200,
            "color": "#dc2626"
          }
        ],
        "width": 640,
        "height": 360,
        "brandPosition": "bottom-right",
        "brandLogo": ""
      }
    }
  ];
  const container = document.querySelector('#chart-container');
  const elements = specs.map(({ tag, id, props }) => {
    const element = document.createElement(tag);
    element.id = id;
    Object.assign(element, props);
    element.setAttribute('aria-label', 'gauge example chart');
    return element;
  });
  container.replaceChildren(...elements);
  const chart = elements.at(-1);
  const onEvent = event => {
    console.log('valueChange', event.detail);
  };
  chart.addEventListener('valueChange', onEvent);
  const observer = new ResizeObserver(([entry]) => {
    const width = Math.max(160, Math.floor(entry.contentRect.width));
    elements.forEach(element => { element.width = width; });
  });
  observer.observe(container);

  // In an SPA, call this function when the view is disposed.
  function disposeChart() {
    observer.disconnect();
    chart.removeEventListener('valueChange', onEvent);
    container.replaceChildren();
  }
</script>

Properties

value

The current measurement.

ItemValue
JavaScript propertyvalue
HTML attributevalue
Typenumber
Default0

min

The start of the measurement range.

ItemValue
JavaScript propertymin
HTML attributemin
Typenumber
Default0

max

The end of the measurement range.

ItemValue
JavaScript propertymax
HTML attributemax
Typenumber
Default100

needles

Multi-needle override (dial variant). When set + non-empty, drives the dial instead of value.

ItemValue
JavaScript propertyneedles
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeGaugeNeedleSpec[]
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

width

Chart width in pixels. If the container width changes, update width from a ResizeObserver.

ItemValue
JavaScript propertywidth
HTML attributewidth
Typenumber
Default320

height

Chart height in pixels. Allow space for axes, titles, and the legend.

ItemValue
JavaScript propertyheight
HTML attributeheight
Typenumber
Default280

brandPosition

The corner where the logo is anchored. Community and Pro both support all four corners, using the same position on screen and in image exports.

ItemValue
JavaScript propertybrandPosition
HTML attributebrand-position
Type'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'
Default'bottom-right'
Allowed valuestop-left, top-right, bottom-left, bottom-right

variant

The gauge style, such as solid or dial.

ItemValue
JavaScript propertyvariant
HTML attributevariant
TypeGaugeChartVariant
Default'dial'
Allowed valuessolid, dial, activity, vuMeter, speedometer, clock

startAngle

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertystartAngle
HTML attributestart-angle
Typenumber
Default-150

endAngle

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyendAngle
HTML attributeend-angle
Typenumber
Default150

size

Pass as a JavaScript property. type: number | string.

ItemValue
JavaScript propertysize
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | string
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

centerX

Pass as a JavaScript property. type: number | string.

ItemValue
JavaScript propertycenterX
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | string
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

centerY

Pass as a JavaScript property. type: number | string.

ItemValue
JavaScript propertycenterY
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | string
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

innerRadius

Solid-variant inner radius. Number = px; '%' = fraction of outerRadius.

ItemValue
JavaScript propertyinnerRadius
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | string
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

thickness

Band / solid-ring thickness in px. Wins over innerRadius for the solid variant.

ItemValue
JavaScript propertythickness
HTML attributethickness
Typenumber
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

rings

Activity-variant rings (property-only). Each ring has its OWN value/max (Move 500 kcal, Exercise 30 min…). Absent → the variant falls back to needles (shared chart max) or the scalar value (one ring).

ItemValue
JavaScript propertyrings
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeGaugeActivityRingSpec[]
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

time

Clock-variant time. 'now'/unset keeps the face ticking live (1 s interval, cleaned up on disconnect); 'HH:MM'/'HH:MM:SS' freezes it.

ItemValue
JavaScript propertytime
HTML attributetime
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

showSeconds

Clock-variant second hand (thin, red).

ItemValue
JavaScript propertyshowSeconds
HTML attributeshow-seconds
Typeboolean
Defaulttrue

color

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertycolor
HTML attributecolor
Typestring
Default'#2563eb'

colors

Needle palette (multi-needle). Per-needle color always wins.

ItemValue
JavaScript propertycolors
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeReadonlyArray<string>
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

stops

Solid-variant colour stops (0..1 along min..max). Progress colour interpolates between them.

ItemValue
JavaScript propertystops
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeGaugeColorStop[]
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

needleShape

Allowed values: needle, arrow, line, wedge. Default: 'needle'.

ItemValue
JavaScript propertyneedleShape
HTML attributeneedle-shape
TypeGaugeNeedleShape
Default'needle'
Allowed valuesneedle, arrow, line, wedge

needleLength

Pass as a JavaScript property. type: number | string.

ItemValue
JavaScript propertyneedleLength
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | string
Default'88%'

needleRearLength

Pass as a JavaScript property. type: number | string.

ItemValue
JavaScript propertyneedleRearLength
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | string
Default'14%'

needleWidth

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyneedleWidth
HTML attributeneedle-width
Typenumber
Default8

pivotRadius

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertypivotRadius
HTML attributepivot-radius
Typenumber
Default7

pivotColor

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertypivotColor
HTML attributepivot-color
Typestring
Default'#1f2937'

plotBands

Coloured zones — an array, or 'auto' to split the axis by % of max.

ItemValue
JavaScript propertyplotBands
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeGaugePlotBand[] | 'auto'
Defaultundefined
Literals in the typeauto

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

bandThickness

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertybandThickness
HTML attributeband-thickness
Typenumber
Default14

bandTrackColor

The 'empty' track behind plot bands — the un-zoned part of the axis.

ItemValue
JavaScript propertybandTrackColor
HTML attributeband-track-color
Typestring
Default'#eef2f7'

rounded

Set as an HTML attribute or JavaScript property. type: boolean.

ItemValue
JavaScript propertyrounded
HTML attributerounded
Typeboolean
Defaulttrue

trackColor

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertytrackColor
HTML attributetrack-color
Typestring
Default'#e5e7eb'

showTicks

Set as an HTML attribute or JavaScript property. type: boolean.

ItemValue
JavaScript propertyshowTicks
HTML attributeshow-ticks
Typeboolean
Defaulttrue

tickInterval

Allowed values: auto. Default: 'auto'.

ItemValue
JavaScript propertytickInterval
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Typenumber | 'auto'
Default'auto'
Literals in the typeauto

minorTicks

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyminorTicks
HTML attributeminor-ticks
Typenumber
Default4

tickLength

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertytickLength
HTML attributetick-length
Typenumber
Default9

minorTickLength

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyminorTickLength
HTML attributeminor-tick-length
Typenumber
Default6

tickWidth

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertytickWidth
HTML attributetick-width
Typenumber
Default2

minorTickWidth

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyminorTickWidth
HTML attributeminor-tick-width
Typenumber
Default1

tickColor

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertytickColor
HTML attributetick-color
Typestring
Default'#94a3b8'

showTickLabels

Set as an HTML attribute or JavaScript property. type: boolean.

ItemValue
JavaScript propertyshowTickLabels
HTML attributeshow-tick-labels
Typeboolean
Defaulttrue

tickLabelDistance

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertytickLabelDistance
HTML attributetick-label-distance
Typenumber
Default7

tickLabelColor

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertytickLabelColor
HTML attributetick-label-color
Typestring
Default'#64748b'

tickLabelFontSize

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertytickLabelFontSize
HTML attributetick-label-font-size
Typenumber
Default11

tickLabelFormat

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertytickLabelFormat
HTML attributetick-label-format
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

showValue

Set as an HTML attribute or JavaScript property. type: boolean.

ItemValue
JavaScript propertyshowValue
HTML attributeshow-value
Typeboolean
Defaulttrue

valueDisplay

Print the raw value or its percent of the axis (gauges use both).

ItemValue
JavaScript propertyvalueDisplay
HTML attributevalue-display
TypeGaugeValueDisplay
Default'value'
Allowed valuespercent, value

valueFormat

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertyvalueFormat
HTML attributevalue-format
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

valueColor

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertyvalueColor
HTML attributevalue-color
Typestring
Default'#0f172a'

valueFontSize

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyvalueFontSize
HTML attributevalue-font-size
Typenumber
Default26

unit

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertyunit
HTML attributeunit
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

centerText

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertycenterText
HTML attributecenter-text
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

centerSubtext

Set as an HTML attribute or JavaScript property. type: string.

ItemValue
JavaScript propertycenterSubtext
HTML attributecenter-subtext
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

chartTitle

The title inside the chart. Explain the data's unit and meaning alongside it.

ItemValue
JavaScript propertychartTitle
HTML attributechart-title
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

chartSubtitle

The subtitle inside the chart.

ItemValue
JavaScript propertychartSubtitle
HTML attributechart-subtitle
Typestring
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

tooltipShow

Whether to display the built-in tooltip.

ItemValue
JavaScript propertytooltipShow
HTML attributetooltip-show
Typeboolean
Defaulttrue

tooltipFormat

Pass as a JavaScript property. type: (detail: GaugeChartPointerEventDetail) => string.

ItemValue
JavaScript propertytooltipFormat
HTML attributePass objects, arrays, and callbacks as JavaScript properties
Type(detail: GaugeChartPointerEventDetail) => string
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

enableMouseTracking

Set as an HTML attribute or JavaScript property. type: boolean.

ItemValue
JavaScript propertyenableMouseTracking
HTML attributeenable-mouse-tracking
Typeboolean
Defaulttrue

tooltip

Rich tooltip configuration object — the dial-flavoured counterpart to the cartesian / pie .tooltip API. Enables trigger (hover/click/hover-click), openMode (single/multiple pinned), connector, draggable, interactive action buttons, custom format/html/style/className/side and fixed sizing. When set it takes precedence over the flat tooltip-show / tooltipFormat props (which stay for back-compat). Property-only — assign the object, not an attribute.

ItemValue
JavaScript propertytooltip
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeGaugeChartTooltipInput
Defaultundefined
Literals in the typeauto, off

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

legend

Whether to show a legend for series or items.

ItemValue
JavaScript propertylegend
HTML attributelegend
Typeboolean
Defaultfalse

legendPosition

Where the legend is positioned.

ItemValue
JavaScript propertylegendPosition
HTML attributelegend-position
TypeGaugeChartLegendPosition
Default'bottom'
Allowed valuestop, bottom, left, right

legendItems

Pass as a JavaScript property. type: LegendItem[].

ItemValue
JavaScript propertylegendItems
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeLegendItem[]
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

animated

Whether to animate initial display and data changes.

ItemValue
JavaScript propertyanimated
HTML attributeanimate
Typeboolean
Defaultfalse

animationDuration

Animation duration in milliseconds.

ItemValue
JavaScript propertyanimationDuration
HTML attributeanimation-duration
Typenumber
Default900

animationEasing

Allowed values: linear, ease-out, ease-in, ease-in-out, analog. Default: 'analog'.

ItemValue
JavaScript propertyanimationEasing
HTML attributeanimation-easing
TypeGaugeChartEasing
Default'analog'
Allowed valueslinear, ease-out, ease-in, ease-in-out, analog

animationType

Allowed values: initial, update. Default: undefined.

ItemValue
JavaScript propertyanimationType
HTML attributeanimation-type
TypeGaugeChartAnimationType
Defaultundefined
Allowed valuesinitial, update

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

analogDamping

analog damping (1..n) for long sweeps — LOWER = bigger overshoot + more wobbles, higher = calmer. Short updates are auto-damped calmer.

ItemValue
JavaScript propertyanalogDamping
HTML attributeanalog-damping
Typenumber
Default5

analogFrequency

analog swing frequency (1..n) — higher = more wobbles packed into the settle.

ItemValue
JavaScript propertyanalogFrequency
HTML attributeanalog-frequency
Typenumber
Default18

analogOvershootAngle

How far past the scale ends the needle may overshoot, in degrees (visible at min/max).

ItemValue
JavaScript propertyanalogOvershootAngle
HTML attributeanalog-overshoot-angle
Typenumber
Default14

streamSource

A stream source for live data. Check the contract for the specific type.

ItemValue
JavaScript propertystreamSource
HTML attributePass objects, arrays, and callbacks as JavaScript properties
TypeGaugeChartStreamSource
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

streamWindow

The streaming data range to keep visible.

ItemValue
JavaScript propertystreamWindow
HTML attributestream-window
Typenumber
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

streamMax

The maximum number of streaming data points to retain.

ItemValue
JavaScript propertystreamMax
HTML attributestream-max
Typenumber
Defaultundefined

undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.

engine

Renderer selection: auto, standard, or pro. Engine selection is separate from permission to use a Pro chart type.

ItemValue
JavaScript propertyengine
HTML attributeengine
TypeGaugeChartEngineMode
Default'auto'
Allowed valuesauto, standard, pro

proThreshold

Set as an HTML attribute or JavaScript property. type: number.

ItemValue
JavaScript propertyproThreshold
HTML attributepro-threshold
Typenumber
Default50_000

unavailable

Allowed values: fallback, error, throw. Default: 'fallback'.

ItemValue
JavaScript propertyunavailable
HTML attributeunavailable
TypeGaugeChartUnavailableBehaviour
Default'fallback'
Allowed valuesfallback, error, throw

Events

rendered

Emits rendering results in detail when chart drawing completes.

Event name: rendered. Names are case-sensitive. Read the payload from detail on CustomEvent<GaugeChartRenderResult & { tier: GaugeChartEngineTier }>.

javascript
chart.addEventListener('rendered', event => {
  console.log(event.detail); // GaugeChartRenderResult & { tier: GaugeChartEngineTier }
});

gaugeClick

CustomEvent.detail type: GaugeChartPointerEventDetail. Event names are case-sensitive.

Event name: gaugeClick. Names are case-sensitive. Read the payload from detail on CustomEvent<GaugeChartPointerEventDetail>.

javascript
chart.addEventListener('gaugeClick', event => {
  console.log(event.detail); // GaugeChartPointerEventDetail
});

gaugeHover

CustomEvent.detail type: GaugeChartPointerEventDetail | null. Event names are case-sensitive.

Event name: gaugeHover. Names are case-sensitive. Read the payload from detail on CustomEvent<GaugeChartPointerEventDetail | null>.

javascript
chart.addEventListener('gaugeHover', event => {
  console.log(event.detail); // GaugeChartPointerEventDetail | null
});

pointContextMenu

CustomEvent.detail type: ChartPointContextMenuEventDetail<GaugeChartPointerEventDetail>. Event names are case-sensitive.

Event name: pointContextMenu. Names are case-sensitive. Read the payload from detail on CustomEvent<ChartPointContextMenuEventDetail<GaugeChartPointerEventDetail>>.

javascript
chart.addEventListener('pointContextMenu', event => {
  console.log(event.detail); // ChartPointContextMenuEventDetail<GaugeChartPointerEventDetail>
});

valueChange

CustomEvent.detail type: { value: number; fraction: number }. Event names are case-sensitive.

Event name: valueChange. Names are case-sensitive. Read the payload from detail on CustomEvent<{ value: number; fraction: number }>.

javascript
chart.addEventListener('valueChange', event => {
  console.log(event.detail); // { value: number; fraction: number }
});

legendItemClick

CustomEvent.detail type: { index: number; needleId: string; label: string; disabled: boolean }. Event names are case-sensitive.

Event name: legendItemClick. Names are case-sensitive. Read the payload from detail on CustomEvent<{ index: number; needleId: string; label: string; disabled: boolean }>.

javascript
chart.addEventListener('legendItemClick', event => {
  console.log(event.detail); // { index: number; needleId: string; label: string; disabled: boolean }
});

needleToggled

CustomEvent.detail type: { index: number; needleId: string; disabled: boolean }. Event names are case-sensitive.

Event name: needleToggled. Names are case-sensitive. Read the payload from detail on CustomEvent<{ index: number; needleId: string; disabled: boolean }>.

javascript
chart.addEventListener('needleToggled', event => {
  console.log(event.detail); // { index: number; needleId: string; disabled: boolean }
});

appended

CustomEvent.detail type: { count: number }. Event names are case-sensitive.

Event name: appended. Names are case-sensitive. Read the payload from detail on CustomEvent<{ count: number }>.

javascript
chart.addEventListener('appended', event => {
  console.log(event.detail); // { count: number }
});

windowSlid

CustomEvent.detail type: { dropped: number }. Event names are case-sensitive.

Event name: windowSlid. Names are case-sensitive. Read the payload from detail on CustomEvent<{ dropped: number }>.

javascript
chart.addEventListener('windowSlid', event => {
  console.log(event.detail); // { dropped: number }
});

chartAnimationStart

CustomEvent.detail type: void. Event names are case-sensitive.

Event name: chartAnimationStart. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.

javascript
chart.addEventListener('chartAnimationStart', event => {
  console.log(event.detail); // void
});

chartAnimationEnd

CustomEvent.detail type: void. Event names are case-sensitive.

Event name: chartAnimationEnd. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.

javascript
chart.addEventListener('chartAnimationEnd', event => {
  console.log(event.detail); // void
});

chartAnimationInterrupted

CustomEvent.detail type: void. Event names are case-sensitive.

Event name: chartAnimationInterrupted. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.

javascript
chart.addEventListener('chartAnimationInterrupted', event => {
  console.log(event.detail); // void
});

tooltipShow

Whether to display the built-in tooltip.

Event name: tooltipShow. Names are case-sensitive. Read the payload from detail on CustomEvent<GaugeChartTooltipShowEventDetail>.

javascript
chart.addEventListener('tooltipShow', event => {
  console.log(event.detail); // GaugeChartTooltipShowEventDetail
});

tooltipHide

CustomEvent.detail type: void. Event names are case-sensitive.

Event name: tooltipHide. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.

javascript
chart.addEventListener('tooltipHide', event => {
  console.log(event.detail); // void
});

tooltipAction

CustomEvent.detail type: GaugeChartTooltipActionEventDetail. Event names are case-sensitive.

Event name: tooltipAction. Names are case-sensitive. Read the payload from detail on CustomEvent<GaugeChartTooltipActionEventDetail>.

javascript
chart.addEventListener('tooltipAction', event => {
  console.log(event.detail); // GaugeChartTooltipActionEventDetail
});

Methods

redraw

Redraw the chart using its current data and options. Inspect the rendered result after the returned Promise resolves.

typescript
redraw(): Promise<GaugeChartRenderResult>

Return type: Promise<GaugeChartRenderResult>. Call the method after element registration and await its Promise result.

getActiveTier

An asynchronous method. Check the argument and return types below.

typescript
getActiveTier(): Promise<GaugeChartEngineTier>

Return type: Promise<GaugeChartEngineTier>. Call the method after element registration and await its Promise result.

getValue

The dB value of a cell (null when empty or outside the grid).

typescript
getValue(): Promise<number>

Return type: Promise<number>. Call the method after element registration and await its Promise result.

setValue

Set the primary value (animates when animated).

typescript
setValue(value: number): Promise<void>
ArgumentsTypeRequired
valuenumberRequired

Return type: Promise<void>. Call the method after element registration and await its Promise result.

addNeedle

Gauge-only — add a needle (dial variant).

typescript
addNeedle(needle: GaugeNeedleSpec, opts?: { insertAt?: number }): Promise<number>
ArgumentsTypeRequired
needleGaugeNeedleSpecRequired
opts{ insertAt?: number }Optional

Return type: Promise<number>. Call the method after element registration and await its Promise result.

removeNeedle

Gauge-only — remove a needle by id or index.

typescript
removeNeedle(idOrIndex: string | number): Promise<boolean>
ArgumentsTypeRequired
idOrIndexstring | numberRequired

Return type: Promise<boolean>. Call the method after element registration and await its Promise result.

setRings

Replace the activity ring set (animates per ring when animated).

typescript
setRings(rings: GaugeActivityRingSpec[]): Promise<void>
ArgumentsTypeRequired
ringsGaugeActivityRingSpec[]Required

Return type: Promise<void>. Call the method after element registration and await its Promise result.

setRingValue

Update ONE activity ring's value by id, name, or index (animates when animated).

typescript
setRingValue(idOrIndex: string | number, value: number): Promise<boolean>
ArgumentsTypeRequired
idOrIndexstring | numberRequired
valuenumberRequired

Return type: Promise<boolean>. Call the method after element registration and await its Promise result.

updateNeedle

Gauge-only — patch a needle.

typescript
updateNeedle(idOrIndex: string | number, patch: Partial<GaugeNeedleSpec>): Promise<boolean>
ArgumentsTypeRequired
idOrIndexstring | numberRequired
patchPartial<GaugeNeedleSpec>Required

Return type: Promise<boolean>. Call the method after element registration and await its Promise result.

appendPoint

Append one value to the stream. Check the argument type and the licensing requirements for streaming.

typescript
appendPoint(value: number): Promise<void>
ArgumentsTypeRequired
valuenumberRequired

Return type: Promise<void>. Call the method after element registration and await its Promise result.

appendBatch

Append multiple values to the stream. Check the argument type and the licensing requirements for streaming.

typescript
appendBatch(values: ReadonlyArray<number>): Promise<void>
ArgumentsTypeRequired
valuesReadonlyArray<number>Required

Return type: Promise<void>. Call the method after element registration and await its Promise result.

shift

Drop the oldest streamed categories (the data boxes are not the stream).

typescript
shift(count?: number): Promise<void>
ArgumentsTypeRequired
countnumberOptional

Return type: Promise<void>. Call the method after element registration and await its Promise result.

replace

Swap the streamed set (replace([]) clears it); the base values never leave. Without chart.streaming the dies upsert into the base like a batch (quietly: no appended, no binChanged, as a ring replace).

typescript
replace(values: ReadonlyArray<number>): Promise<void>
ArgumentsTypeRequired
valuesReadonlyArray<number>Required

Return type: Promise<void>. Call the method after element registration and await its Promise result.

getStreamSource

The stream session's source (Chart Pro): like the stream methods it waits for a license still being confirmed.

typescript
getStreamSource(): Promise<GaugeChartStreamSource | undefined>

Return type: Promise<GaugeChartStreamSource | undefined>. Call the method after element registration and await its Promise result.

setAnimation

An asynchronous method. Check the argument and return types below.

typescript
setAnimation(options: { duration?: number; easing?: GaugeChartEasing; enabled?: boolean; type?: GaugeChartAnimationType }): Promise<void>
ArgumentsTypeRequired
options{ duration?: number; easing?: GaugeChartEasing; enabled?: boolean; type?: GaugeChartAnimationType }Required

Return type: Promise<void>. Call the method after element registration and await its Promise result.

pauseAnimation

Pause the current animation.

typescript
pauseAnimation(): Promise<void>

Return type: Promise<void>. Call the method after element registration and await its Promise result.

resumeAnimation

Resume a paused animation.

typescript
resumeAnimation(): Promise<void>

Return type: Promise<void>. Call the method after element registration and await its Promise result.

replayAnimation

Replay the initial sweep from min → value(s). No-op when animation is off / reduced.

typescript
replayAnimation(): Promise<void>

Return type: Promise<void>. Call the method after element registration and await its Promise result.

hitTest

The box under a host-local CSS point (the nearest slot, within half a pitch), or null.

typescript
hitTest(cssX: number, cssY: number): Promise<GaugeChartPointerEventDetail | null>
ArgumentsTypeRequired
cssXnumberRequired
cssYnumberRequired

Return type: Promise<GaugeChartPointerEventDetail | null>. Call the method after element registration and await its Promise result.

showTooltip

Open the value tooltip programmatically at the primary value (needle 0, or the scalar value). Anchors on the dial along the value's angle.

typescript
showTooltip(): Promise<GaugeChartPointerEventDetail | null>

Return type: Promise<GaugeChartPointerEventDetail | null>. Call the method after element registration and await its Promise result.

showTooltipAtValue

Gauge analogue of pie's showTooltipAtSlice — compute the pointer detail at value's angle on the dial and open the tooltip there.

typescript
showTooltipAtValue(value: number): Promise<GaugeChartPointerEventDetail | null>
ArgumentsTypeRequired
valuenumberRequired

Return type: Promise<GaugeChartPointerEventDetail | null>. Call the method after element registration and await its Promise result.

hideTooltip

Close the currently visible tooltip.

typescript
hideTooltip(): Promise<void>

Return type: Promise<void>. Call the method after element registration and await its Promise result.

getEngineStatus

Requested engine vs what runs, and why (CHART-ADD-08): always Standard (this type has no WebGPU renderer); read without side effects, never consults the license.

typescript
getEngineStatus(): Promise<ChartEngineStatus>

Return type: Promise<ChartEngineStatus>. Call the method after element registration and await its Promise result.