Espace d'analyse : tableau croisé dynamique et plusieurs graphiques

Voir la vidéoAnalyser des données 00:23

Le graphique et les statistiques

L'onglet d'un tableau a deux modes, sur les boutons Données et Analyse de la barre. Données, c'est le tableau habituel ; Analyse, c'est un tableau de bord où cohabitent autant de graphiques et de tableaux croisés dynamiques que vous voulez sur la même source — chacun sur une carte, avec un titre modifiable, un bouton d'engrenage qui dévoile les sélecteurs et un menu ⋮ (déplacer, dupliquer, retirer).

De la vraie statistique. Outre les barres, la ligne et le nuage de points, le graphique fait une boîte à moustaches : une boîte par catégorie avec les quartiles, la médiane en trait épais et les moustaches à la limite de Tukey (1,5 × IQR) — et non au minimum et au maximum. Sur la moyenne d'une colonne, le sélecteur Erreur ajoute la moustache de dispersion : ± écart type (qui décrit les données), ± erreur type ou ± IC 95 % (qui décrivent la précision de la moyenne elle-même). Les trois n'apparaissent qu'avec la moyenne choisie, car « somme ± écart » ne veut rien dire. La case Axe Y log met l'échelle logarithmique, pour des données couvrant plusieurs ordres de grandeur ; s'il y a une valeur nulle ou négative, elle est ignorée avec un avis, car le logarithme n'y existe pas et écarter le point en silence ferait mentir le graphique. Sur le nuage, Tendance trace la droite de régression avec le R², ajustée dans la base sur toutes les lignes — et non sur les points échantillonnés affichés à l'écran. Sous le dessin figure une ligne de statistique descriptive de la colonne choisie (n, moyenne, écart, IC 95 %, minimum, quartiles, médiane et maximum), qui est une requête à part : la déduire des barres donnerait la moyenne des moyennes, qui ne coïncide avec la vraie moyenne que si tous les groupes ont la même taille.

Tableau croisé et totaux

Tableau croisé dynamique. Choisissez les champs qui vont en Lignes et en Colonnes (on peut en imbriquer plusieurs sur chaque axe ; le glisser-déposer réordonne les niveaux), le champ en Valeur et comment le réduire : Somme, Nombre, Nombre de valeurs distinctes, Moyenne, Minimum ou Maximum. Sans champ en Valeur, ce sont les lignes qui sont comptées. Il est aussi dans la mini-barre latérale du tableau, à côté du Graphique, pour un coup d'œil rapide sans quitter les données.

L'agrégation s'exécute dans la base et revient déjà réduite — aucune ligne brute ne remonte, si bien qu'un Parquet de dizaines de millions de lignes reste exploitable. Comme la requête est du SQL standard, le tableau croisé dynamique fonctionne sur toutes les bases du client SQL (SQLite, DuckDB, PostgreSQL, MySQL, SQL Server et Oracle), et pas seulement sur DuckDB comme le graphique.

Totaux. Les cases Totaux de ligne et Totaux de colonne ajoutent la ligne et la colonne de clôture. Pour la Moyenne, le total est pondéré, et non la moyenne des moyennes — qui serait fausse dès que les groupes n'ont pas la même taille. Un Nombre de valeurs distinctes ne peut pas être totalisé (l'union d'ensembles distincts ne découle pas de la somme des parties) : les cases y sont donc désactivées, avec la raison dans l'infobulle, plutôt que d'afficher un chiffre faux.

Où c'est enregistré, CSV et regrouper

Où l'analyse est enregistrée. Dans un JSON à côté du fichier de données (ventes.parquet → ventes.parquet.analysis.json) : un format ouvert, qui part dans Git avec la donnée et voyage avec elle vers un collègue. Le bouton Fichier de l'analyse ouvre ce JSON dans un onglet, et vider l'analyse supprime le fichier. Un dossier entier ouvert comme tableau n'a pas de chemin propre : cette analyse n'est donc pas enregistrée — le bouton le dit. Chaque carte a aussi Ajouter à la note du jour : le graphique part en bloc mermaid — que la note dessine et qui reste modifiable — quand il a cette forme (barres, ligne, histogramme et camembert ; nuage de points et boîte partent en image), et le tableau croisé dynamique en tableau Markdown, qui reste dans la note du texte à copier et à modifier. Dans le résultat d'une requête SQL, le même tableau de bord s'ouvre par le bouton Espace d'analyse du pied de page et agrège au même endroit que le graphique de ce résultat (la copie locale ou la base de données) ; il n'y est pas enregistré, car un résultat n'a pas de fichier à côté — ce qui compte va dans la note avec Ajouter à la note du jour.

Rapport et copie. Le bouton Copier de chaque graphique propose Copier en Mermaid, Copier les données (tableau Markdown) — les valeurs affichées par le graphique, déjà agrégées, avec les nombres alignés à droite — et Copier l'image ; ce que Mermaid ne transporte pas (barre d'erreur, axe logarithmique) est signalé sur le moment. Dans la barre de l'Espace d'analyse, Copier le rapport rassemble toute l'analyse en Markdown — une ligne avec la source, le filtre en vigueur et la date, puis un titre par carte avec le graphique en Mermaid ou le tableau — et Rapport dans la note du jour l'y envoie directement. Le Camembert montre les parties d'un tout : il n'accepte que Somme et Nombre, dessine les plus grandes catégories et regroupe les autres dans « Autres », en indiquant combien ont été regroupées.

Dans tous les tableaux. Le graphique, le tableau croisé dynamique et l'Espace d'analyse existent aussi dans la feuille Excel, dans le texte délimité (même non enregistré), dans les Tâches (la vue Analyse, conservée dans le tableau), dans les Bases (le bouton Analyse, enregistré à côté du .lnq sans modifier la Base) et dans le Tableau personnalisé (bouton Analyse ; la colonne de mot de passe reste à l'écart). Dans ces écrans, les données vivent en mémoire : au premier filtre ou à la première analyse, elles sont copiées dans DuckDB, et le filtre de la grille utilise alors la même règle que l'analyse — le graphique décrit exactement les lignes que montre la grille. La feuille additionne la valeur enregistrée (une cellule qui affiche « 3 750,50 € » compte 3750,5) et filtre sur le texte affiché, c'est-à-dire ce qu'on tape. Quand l'écran n'a chargé qu'une partie du fichier (feuille au-delà de la limite, lecture tolérante coupée), l'analyse refuse d'agréger et dit pourquoi : la somme d'une partie serait un nombre faux.

Qualité des données. Le bouton Qualité du tableau ouvre, à côté de la grille, une carte par colonne avec ce qu'elle contient réellement : la barre des lignes avec valeur, vides (texte vide ou seulement des espaces) et nulles — comptées à part, car vide n'est pas nul —, le nombre de valeurs distinctes et combien n'apparaissent qu'une fois ; dans les colonnes numériques, moyenne, écart-type, quartiles, zéros, négatifs et valeurs aberrantes (hors de la limite de Tukey, la même que celle de la boîte à moustaches), avec un mini-histogramme ; dans les colonnes de texte, la longueur et les motifs de forme. Les valeurs les plus fréquentes sont cliquables : le clic devient une sélection (voir plus bas), et une autre valeur de la même colonne la remplace. Les alertes signalent une colonne sans valeur, constante, une clé possible, la moitié ou plus sans valeur, beaucoup de zéros, une distribution très asymétrique et un nombre enregistré comme texte. Le profil porte sur l'ensemble complet avec le filtre en vigueur — jamais sur un échantillon —, calculé dans DuckDB, jusqu'à 60 colonnes. Le résumé se copie en tableau Markdown ou va dans la note du jour ; et dans l'Espace d'analyse, le bouton Qualité ajoute le même profil sous forme de carte, qui entre dans le rapport sous forme de tableau (une ligne par colonne). Une analyse avec une carte de qualité ne s'ouvre qu'à partir de cette version de LightNote.

Sélections et « afficher en ». Cliquer sur une barre ou une part du graphique, sur une classe de l'histogramme, double-cliquer sur une cellule du tableau croisé dynamique ou cliquer sur une valeur fréquente du panneau Qualité filtre le tableau sur cet élément — et le filtre devient une sélection, une étiquette au-dessus de la grille (uf = « SP », valor ≥ 10 et < 20) avec un X pour la retirer. Les sélections se combinent toujours par ET, hors du groupe du panneau Filtre : avec un groupe combiné par OU, la sélection restreint le périmètre au lieu de l'élargir ; modifier le panneau de filtre ne les retire pas, et une autre sélection sur la même colonne remplace la précédente. La sélection compare la valeur enregistrée — la catégorie que le graphique a regroupée — ; une classe d'histogramme va de son début au début de la suivante, et la dernière n'a pas de plafond. Une catégorie regroupée par motif (un motif n'est pas une valeur du tableau) et la part Autres ne filtrent pas, et le graphique et le tableau croisé expliquent pourquoi. L'Espace d'analyse, le profil et la légende du rapport suivent les sélections. Dans le tableau croisé dynamique, Afficher en réécrit les valeurs déjà agrégées : % du total général, % du total de la ligne, % du total de la colonne, total cumulé et différence avec la ligne précédente. Pourcentage et cumul ne valent qu'avec Somme ou Nombre — additionner des moyennes ou des minimums ne donne le total de rien —, et la base du calcul apparaît au-dessus de la matrice et dans le rapport.

Pour un CSV, un seul geste — et une sortie quand le séparateur trompe. Ouvrir comme table ouvre via DuckDB, avec SQL libre, graphique, tableau croisé dynamique et espace d'analyse. Parfois le séparateur n'est pas reconnu (des lignes au nombre de colonnes différent en sont la cause habituelle) et la table arrive avec une seule colonne, la ligne entière dedans. Dans ce cas, un bandeau apparaît au-dessus de la table : il indique combien de colonnes le fichier semble avoir et propose la lecture tolérante, qui lit ligne à ligne sans exiger des colonnes égales — c'est la lecture qu'utilisent la recherche et l'IA — et qui filtre, trie et a graphique, tableau croisé dynamique et Espace d'analyse — seul le SQL libre manque. Pour un texte non encore enregistré, ou avec un délimiteur choisi à la main, utilisez Affichage → Afficher comme fichier délimité….

Le CSV exporté s’ouvre directement dans Excel. Exporter en CSV dans les Tâches, dans le classeur et dans la Table personnalisée écrit avec le séparateur de liste de votre langue — point-virgule là où la virgule est le séparateur décimal — et avec la marque UTF-8 dont Excel a besoin pour lire les accents : le fichier s’ouvre en colonnes, sans assistant d’importation. Copier comme → CSV garde la virgule, ce qu’on colle dans un script ou un message ; l’export du résultat SQL laisse choisir le séparateur.

Grouper par motif. Dans une colonne de dates ou de codes, les valeurs distinctes sont presque aussi nombreuses que les lignes, et grouper par elles ne dit rien. Le masque de motif remplace chaque lettre par A et chaque chiffre par N, en laissant le reste : 2027/10/10 devient NNNN/NN/NN. Des millions de lignes se réduisent alors à deux ou trois formes — et ce qui leur échappe, c'est exactement la donnée sale (la date arrivée en 10-10-2027, le code sans son préfixe). Dans le graphique, c'est la case Motif à côté de l'axe X ; dans le tableau croisé dynamique, un clic droit sur la pastille d'un champ (c'est par champ, pour croiser la forme d'un code avec une dimension normale) ; et dans le panneau Qualité, les motifs les plus fréquents apparaissent sous les valeurs les plus fréquentes de chaque colonne. Le calcul s'exécute dans la base. Sur SQLite et l'ODBC générique, l'option est désactivée avec la raison : la fonction de texte utilisée par le masque n'existe pas.

Index

Édition

Outils

Automatisation (IA / scripts)

Référence