Aller au contenu

Composant · Données

GaugeChart

Stable

Jauge semi-circulaire affichant une valeur sur un arc coloré par seuils. Les seuils (thresholds) définissent des bandes colorées sur la piste pour contextualiser immédiatement le niveau mesuré. La valeur et l'unité sont affichées au centre de l'arc.

Exemples

Deux jauges avec seuils inversés : disponibilité SLA (vert au-delà de 80 %) et charge CPU (rouge au-delà de 90 %).

Jauges SLA et CPU

  • Disponibilité SLA: 72 % (min 0, max 100)
  • Charge CPU: 42 % (min 0, max 100)
Voir le code (Svelte)
<div class="gauge-demo-row">
  <GaugeChart
    value={72}
    label="Disponibilité SLA"
    thresholds={[{"value":0,"tone":"error"},{"value":60,"tone":"warning"},{"value":80,"tone":"success"}]}
    unit="%"
    size={200}
  />
  <GaugeChart
    value={42}
    label="Charge CPU"
    thresholds={[{"value":0,"tone":"success"},{"value":70,"tone":"warning"},{"value":90,"tone":"error"}]}
    unit="%"
    size={200}
  />
</div>

API du composant

PropTypeDéfautDescription
valuenumberrequisValeur courante de la jauge.
minnumber0Valeur minimale de l'échelle.
maxnumber100Valeur maximale de l'échelle.
thresholdsGaugeChartThreshold[]–Bandes colorées triées par value croissante.
labelstring–Description de la jauge (a11y + texte sous valeur).
format"number" | "percent""number"Format de la valeur centrale.
unitstring–Suffixe d'unité (ignoré pour format percent).
sizenumber220Diamètre du SVG en pixels.
thicknessnumber22Épaisseur de l'arc en pixels.
startAnglenumber180Angle de départ en degrés (0 = est, sens horaire).
endAnglenumber360Angle de fin en degrés.

GaugeChartThreshold = { value: number; tone: GaugeChartTone } : tone ∈ neutral | info | success | warning | error | category1…8

Tokens CSS

Variable CSSDescription
--st-component-gaugeChart-trackStrokeCouleur de la piste de fond (défaut : border-subtle).
--st-component-gaugeChart-valueFillCouleur du texte de la valeur centrale.
--st-component-gaugeChart-labelFillCouleur du label sous la valeur.
--st-semantic-feedback-success / warning / errorCouleurs des bandes de seuil sémantiques.
--st-semantic-data-category1…8Couleurs des bandes de seuil catégorielles.

Piloté par store

La version adaptateur (@sentropic/dataviz-svelte, -react, -vue, -angular) reprend l’intégralité du contrat natif et y ajoute la liaison au DashboardStore partagé : aucune prop du natif n’est abandonnée, mais value change de sens (identifiant de mesure string agrégé depuis le store, contre nombre direct côté natif).

Charge (store)

Voir le code (Svelte)
<div class="chart-wrapper">
  <GaugeChart
    store={store}
    value="revenue"
    min={0}
    max={100}
    unit="%"
    label="Charge (store)"
  />
</div>
PropTypePar défaut
storeDashboardStorerequis
viewIdstringnon défini
valuestringrequis (identifiant de mesure, agrégé depuis le store — pas le nombre direct du natif)
min / maxnumbernatif
thresholdsGaugeChartThreshold[]non défini
format / unitGaugeChartFormat / stringnatif
size / thicknessnumbernatif
startAngle / endAnglenumbernatif
labelstringnon défini

Props du natif non reprises par la version store : aucune.