Affiche une valeur cle (KPI) avec formatage, couleurs conditionnelles basees sur des seuils, et icones optionnelles.

Attributs

AttributTypeDescription
sourceStringID du <dsfr-data-source> (requis)
valeurStringExpression de calcul : "champ", "avg:champ", "count:champ:valeur"
labelStringLibelle affiche sous la valeur
formatStringFormat d'affichage (defaut : nombre)
iconeStringClasse d'icone Remix Icon (ex: ri-global-line)
couleurStringCouleur forcee : vert, orange, rouge, bleu
seuil-vertNumberSeuil au-dessus duquel la couleur est verte
seuil-orangeNumberSeuil au-dessus duquel la couleur est orange
colNumberLargeur en colonnes (1-12), actif uniquement dans un <dsfr-data-kpi-group>

dsfr-data-kpi-group - Attributs

AttributTypeDescription
colsNumberNombre de colonnes par defaut (1-12, defaut: 3)
gapStringEspacement : sm (0.5rem), md (1rem, defaut), lg (1.5rem)
aria-labelStringLabel accessible du groupe

Expressions de calcul

Formats d'affichage

FormatExemple (valeur : 32073247.5)Description
nombre32 073 248Entier avec separateurs de milliers (arrondi)
euro32 073 248 €Montant en euros avec separateurs de milliers
pourcentage75,5 %Pourcentage (divise par 100, 1 decimale max)
decimal32 073 247,50Nombre decimal (1 a 2 decimales)

Tous les formats utilisent la locale francaise (separateur de milliers = espace, decimales = virgule).

Exemples

1. KPI simple avec valeur directe

<dsfr-data-kpi
  source="meta"
  valeur="total"
  label="Sites suivis"
  icone="ri-global-line"
  format="nombre">
</dsfr-data-kpi>

2. KPI avec moyenne et seuils

<dsfr-data-kpi
  source="sites"
  valeur="avg:score_rgaa"
  label="Score RGAA moyen"
  format="pourcentage"
  seuil-vert="80"
  seuil-orange="50">
</dsfr-data-kpi>

3. KPI avec comptage conditionnel

<dsfr-data-kpi
  source="sites"
  valeur="count:statut:actif"
  label="Sites actifs"
  icone="ri-checkbox-circle-line"
  couleur="vert">
</dsfr-data-kpi>

4. KPI avec min/max

<dsfr-data-kpi source="sites" valeur="max:score_rgaa" label="Meilleur score" format="pourcentage" couleur="vert"></dsfr-data-kpi>
<dsfr-data-kpi source="sites" valeur="min:score_rgaa" label="Plus bas score" format="pourcentage" couleur="rouge"></dsfr-data-kpi>

5. Tableau de bord complet (CSS manuel)

Grouper des KPIs avec dsfr-data-kpi-group

6. Colonnes egales (cols="4")

<dsfr-data-kpi-group cols="4">
  <dsfr-data-kpi source="meta" valeur="total" label="Sites suivis"></dsfr-data-kpi>
  <dsfr-data-kpi source="sites" valeur="avg:score_rgaa" label="RGAA moyen"></dsfr-data-kpi>
  <dsfr-data-kpi source="sites" valeur="avg:score_dsfr" label="DSFR moyen"></dsfr-data-kpi>
  <dsfr-data-kpi source="sites" valeur="count:certificat_valide:false" label="Expires"></dsfr-data-kpi>
</dsfr-data-kpi-group>

7. Largeurs personnalisees (col)

<dsfr-data-kpi-group>
  <dsfr-data-kpi source="meta" valeur="total" label="Sites suivis" col="6"></dsfr-data-kpi>
  <dsfr-data-kpi source="sites" valeur="avg:score_rgaa" label="RGAA moyen" col="3"></dsfr-data-kpi>
  <dsfr-data-kpi source="sites" valeur="max:score_rgaa" label="Meilleur RGAA" col="3"></dsfr-data-kpi>
</dsfr-data-kpi-group>

8. Espacement large (gap="lg")

<dsfr-data-kpi-group cols="2" gap="lg">
  <dsfr-data-kpi source="sites" valeur="min:score_rgaa" label="Plus bas RGAA" couleur="rouge"></dsfr-data-kpi>
  <dsfr-data-kpi source="sites" valeur="max:score_rgaa" label="Meilleur RGAA" couleur="vert"></dsfr-data-kpi>
</dsfr-data-kpi-group>