Power BI : Filtre Top N
La fonction de filtre Top N de Power BI est très appréciée des utilisateurs et largement utilisée. Par contre, cette fonctionnalité permet uniquement de conserver les Top N en question et exclut tous les autres éléments qui se retrouvent à l’extérieur du Top N.
Dans l’exemple ci-dessous, vous pouvez constater qu’en appliquant le filtre top 5 sur les marques ayant fait les plus grosses ventes pour la période, je perds la visibilité sur les 6 autres marques.
Top N et autres
Il est souvent essentiel de conserver les autres éléments dans le visuel mais de les regrouper dans une catégorie « Autres ». Pour y arriver, on doit modifier légèrement le modèle de données et ajouter des mesures DAX qui calculeront le rang de chaque élément et regrouperont ensuite les résultats hors du Top X dans le groupe « Autres ». Le résultat final ressemble à ceci :
Voici les données que j’utiliserai pour cet exemple. Toutes les données sont extraites de la base de données fictive Microsoft Contoso BI Demo Dataset
Table de fait des ventes
Dimension Produits
Vous devez analyser de grandes quantités de données et les présenter dans des rapports et tableaux de bord, avec des indicateurs de performance pertinents ? Développez vos compétences avec nos formations en Power BI en français ou en anglais. |
---|
Et voici la marche à suivre pour créer un Top N avec un regroupement Autres :
- Créer une table constituée d’une liste sans doublons de marques provenant de la table DimProduits en ajoutant une marque nommée « Autres ». Dans cet exemple, j’utiliserai DAX pour créer cette nouvelle table.
- Lier cette nouvelle table à la table DimProduit sur la colonne Marque
- Créer une mesure pour calculer le montant de ventes
- Créer une mesure pour indiquer le nombre d’éléments à inclure dans le top N
- Créer une mesure pour calculer le rang de chaque catégorie en fonction de la somme des ventes
- Créer une mesure pour calculer les ventes par Marque pour les marques incluses dans le Top N et les ventes de la catégorie Autres
À ce stade-ci, on peut commencer à valider les résultats obtenus en créant une table simple qui comprend les Marques de la table « ListeMarque », la mesure Ventes$, la mesure Rang et la mesure Ventes$TopX. Ça devrait ressembler à ceci :
Lorsque toutes les mesures fonctionnent bien, on peut maintenant les utiliser dans des graphiques.
Dans cet exemple, j’utilise un histogramme avec le champ Marque de la table ListeMarques comme Axe et la mesure Ventes$TopX comme valeurs. Ça donne le résultat suivant :
Par défaut, les résultats sont triés par ordre décroissant selon la mesure Ventes$TopX. La catégorie Autres se retrouve donc devant les autres marques. Pour que la présentation se fasse dans un ordre plus « logique » et déplacer la catégorie Autres à la fin, on devra user de créativité!
Dans ce cas-ci, je modifie le visuel utilisé pour un Graphique en courbe et histogramme empilé. Dans la valeur de ligne, j’utilise la mesure Rang. Je peux ainsi modifier l’ordre des bâtons pour qu’ils soient triés selon la mesure Rang. Ne reste plus qu’à formater et filtrer le visuel pour que les valeurs de la mesure « Ventes$TopX » ne soient pas nulles et on obtient le résultat attendu!
Fichier d’accompagnement VIP à télécharger
Pour télécharger le fichier utilisé dans ce tutoriel, devenez membre VIP du CFO masqué.
Formation complémentaire
Afin d’approfondir vos compétences en Power BI, nous vous recommandons notre formation Introduction au langage DAX.
Voici quelques commentaires d’apprenants ayant suivi cette formation :
Bonjour, dès l’étape de liaison des tables j’ai un souci de dépendance circulaire qui m’empêche d’aller plus loin. Pourtant j’ai simple créé la table en reprenant la formule proposée, je ne comprends pas.
Utiliser “DISTINCT” au lieu de “VALUES” permet de résoudre le souci