Qu'est-ce qu'une figure dans cette wiki ?
Une figure ici montre un seul fait dans une seule grammaire — pour que tu voies, six mois plus tard, avant de lire.
Cette page est la démonstration du charter. Tout ce qu'elle énonce, elle l'applique. Si tu vois une figure qui frotte contre ses propres règles, signale-la — on regénère.
Trois engagements, et c'est tout
Le charter tient en trois invariants. Pas dix. Pas trente. Trois.
- Trois couleurs pour parler de régime — pas une de plus. Bleu pour Smooth, ambre pour Transition, rouge pour Rough. Si une figure parle de régime, elle utilise exclusivement ces trois teintes. Si une figure utilise du bleu / ambre / rouge, elle parle de régime — pas d'autre chose.
- Une seule grammaire temporelle : UTC, gauche-à-droite, NY-open marqué.
Aucun timestamp local. Aucun axe temps vertical. Le marqueur
14:30 UTCest dessiné comme ligne verticale tirée sur toute figure intraday. C'est un point fixe — l'œil l'ancre avant de lire les détails. - Aucune font téléchargée —
system-uipartout. Le rendu changera d'OS à OS. C'est accepté. La contrainte vient d'ADR-0004 §7 : pas de Referer leak, pas de tracker, pas de Google Fonts. Mieux vaut un rendu qui varie un peu d'écran à écran qu'un rendu homogène qui te trace.
Pourquoi ces trois couleurs
Le triplet est ergonomique. Il calque sur la sémantique humaine standard — celle de la signalisation routière, de la météo, de l'aviation :
| Régime | Couleur ligne | Sémantique humaine | Pourquoi cette teinte précise |
|---|---|---|---|
| Smooth | #4A6FA5 (bleu calme) | calme, profond, sûr — la mer plate | Le bleu profond porte l'absence d'alarme. En finance, « calme / au repos » te parle plus que « OK / valide ». |
| Transition | #D4A024 (ambre) | avertissement — le ciel qui se voile | L'ambre est le feu orange universel. Tout humain qui voit de l'ambre ralentit avant de lire pourquoi. |
| Rough | #B83A4B (rouge profond) | danger, brisure — la cascade | Rouge profond plutôt qu'écarlate : l'écarlate fatigue à 23h sur écran 13'' ; le rouge profond grave sans crier. |
Conséquence opérationnelle. Tu ouvres, six mois plus tard, la page d'un cas Dirac que tu n'as jamais lue. Tu vois un grand ribbon rouge autour de 14:35 UTC. Tu sais — avant de lire la légende — qu'il s'agit d'un régime rugueux. La charge cognitive de relire l'axe Y et la légende est supprimée. C'est ça, une charte graphique : retirer le bruit en homogénéisant les non-dits.
Démo — les quatre figures préflight existantes
Ces quatre PNG ont été générées par research/plots/preflight_figures.py
sur les données AMC 2021-01-27. Elles servent ici de démonstration de la
grammaire visuelle. Les figures de cette section sont en cours de
re-génération avec la palette canonique bleu/ambre/rouge — si tu vois
encore du vert pour Smooth au moment où tu lis, c'est que la regen n'est
pas encore passée. La table de référence des couleurs reste celle ci-dessus :
c'est elle qui définit le charter, pas les PNG transitoires.
Figure 1 — RV timeline + ribbon régime

Ce que la figure montre. Une journée AMC à granularité 60 secondes : trace noire = RV (échelle log), fond coloré = régime classé. La charte exige bleu/ambre/rouge — voir la table plus haut pour la définition de référence.
Figure 2 — BV vs RV (scatter)

Ce que la figure montre. Chaque point = une fenêtre 60s. Diagonale =
RV \(\approx\) BV \(\Rightarrow\) J \(\approx\) 0 (pas de saut détecté). Points sous la diagonale =
RV \(\gg\) BV \(\Rightarrow\) J \(\to\) 1 (signature d'un saut localisé). Le scatter rend la
définition J = 1 − BV/RV visible sans relire l'équation.
Figure 3 — Densité de ticks intraday

Ce que la figure montre. Nombre de ticks par fenêtre 60s sur la
journée. Le pic à 14:30 UTC justifie le seuil
MIN_TICK_COUNT_SHORT = 30 pour J — sans assez de ticks, la
décomposition RV/BV devient instable.
Figure 4 — Distribution de J = 1 − BV/RV

Ce que la figure montre. Histogramme du signal classifier J. Les deux
modes — \(J ≈ 0\) (continu) et \(J ≫ 0\) (sauteur) — justifient
empiriquement la nature ternaire du classifier (Smooth / Transition /
Rough), pas un découpage arbitraire en quantiles.
Marges et formats
Tout est dans docs/charter.yml :
| Type de figure | figsize (pouces) | DPI | Cas d'usage |
|---|---|---|---|
timeline | [10, 4] | 120 | RV/BV intraday, fenêtre 13:30-16:30 UTC |
timeline_wide | [14, 5] | 120 | full-day timeline (figure 1 ci-dessus) |
qq_or_scatter | [6, 6] | 120 | QQ plot, scatter BV/RV |
small_multiple | [12, 4] | 120 | 5 panneaux côte-à-côte — index Dirac |
hero | [14, 6] | 120 | front-door, page-cas |
Le DPI 120 et les marges tight_layout() + padding charter rendent une PNG
qui s'imprime, se copie, se partage WhatsApp — l'export PDF survit.
Quand cette charte évolue
La charte est en V1. Elle n'est pas définitive. Si tu vois une page qui s'en éloigne (un embed régime en violet, un axe temps en heure locale), signale-le — on tranche, on documente, on regénère. Une évolution réelle de la charte passe par une décision explicite ; ce n'est pas un détail cosmétique qu'on glisse au passage.
Le risque assumé est de figer trop tôt la grammaire visuelle, avant d'avoir vu toutes les pages que la wiki produira. Mitigation : la V1 est éditable par décision tracée, jamais par dérive ; la règle d'or « ne pas livrer une wiki sans charte, mais ne pas retarder une wiki pour une charte parfaite » s'applique.
Pour ton cas
Si tu ouvres une page de cette wiki et que :
- la figure ne porte ni bleu, ni ambre, ni rouge \(\to\) c'est volontaire (la figure ne parle pas de régime — RV brute, BV brute, scatter sans classification) ;
- la figure porte du vert / violet / rose \(\to\) c'est une violation V1 (signale-la, on regénère) ;
- l'axe temps est en heure locale NY \(\to\) c'est une violation, point (cite-la, on corrige) ;
- le NY-open
14:30 UTCn'est pas marqué et la fenêtre couvre RTH \(\to\) c'est une violation (ligne verticale tirée requise).
Trois invariants, vérifiables à l'œil en trois secondes. Le critère unique est : « est-ce qu'un humain qui ouvre cette page à 23h, fatigué, sur un écran 13'', comprend en trois secondes où regarder ? »
Références
- Charte canonique :
docs/charter.yml - Sous-domaine, no-Referer :
docs/adr/0004-sous-domaine-room.md§7 - Classifier de régime :
docs/adr/0003-stats-and-classifier.md - Signal J = 1 − BV/RV :
docs/adr/0005-classifier-signal-j-based.md
Voir aussi : door \(\cdot\) methodology \(\cdot\) cases-index