Du bon usage du donut chart

Parmi les visuels disponibles dans Power BI comme dans tous les outils de Self Service BI, le camembert (graphique en secteur) et le graphique en anneaux (donut chart) font partie des plus utilisés … pour le plus grand malheur des consultants en Business Intelligence.

Imaginons que je souhaite représenter graphiquement la répartition des ventes d’un certain nombre de produits (produit A à produit F).

En utilisant un camembert ou un donut, je vais rapidement me retrouver à produire ce genre de visuels : le lecteur doit faire l’effort d’extraire les valeurs distinctes d’un seul et même graphique. Les pourcentages les plus faibles sont difficilement identifiables. Bref, le graphique est illisible et, par conséquent, inutilisable.

ONE MORE DONUT

Puisque le donut ne nous permet pas de représenter cette répartition, pourquoi ne pas ajouter quelques mesures à notre modèle de données pour pouvoir au final utiliser … un autre donut ?

Oui, vous avez bien lu, le donut peut être un excellent visuel si on se contente d’afficher le pourcentage de répartition de l’élément sélectionné par rapport au tout.

On ne va plus représenter sur un seul graphique l’ensemble des ventes de chaque produit, mais, en le couplant avec un slicer, nous allons afficher le pourcentage de ventes du produit sélectionné par rapport à la totalité des ventes.

Un peu comme nous l’aurions fait avec une jauge (également si pertinemment appelé « half-donut »).

Sauf que le donut, à la différence de la jauge, ne permet pas nativement de représenter une valeur unique de type pourcentage. Si on tente tout de même de le faire, tous les donuts et camemberts du monde vous afficherons un désolant « 100% ». Ce n’est bien entendu pas le résultat escompté.

UN PEU DE DAX

La première étape pour transformer notre valeur en pourcentage est de faire appel à quelques mesures DAX.

Nous allons définir quatre mesures : PARTOF, RESTOF, PART % et OTHER %

PARTOF représente la valeur numérique attendue. La valeur de cette mesure dépendra du produit (ou de n’importe quel élément de ma dimension) sélectionné.

PARTOF = SUM(Dispatch[Value])

RESTOF représente la somme des valeurs pour tous les autres produits (on n’échappe pas à un petit CALCULATE suivi d’un ALL afin de garantir que la somme totale soit identique quel que soit le produit sélectionné).

RESTOF = CALCULATE(SUM(Dispatch[Value]);ALL(Dispatch[Item])) - [PARTOF]

PART% et OTHER % ne sont que la retranscription en pourcentage de nos deux valeurs.

PART % = [PARTOF] / CALCULATE(SUM(Dispatch[Value]);ALL(Dispatch[Item]))

OTHER % = 1 - [PART %]

Vous l’avez compris, ce sont ces deux dernières mesures que nous allons faire figurer sur le donut chart.

RELOOKING EXTRÊME

Vous pourriez utiliser directement les étiquettes de données et la légende du donut chart mais cela ne serait pas très « clean ». L’utilisateur final ne doit voir que la valeur de PART % et le nom de la mesure associée.

Pour cela nous allons :

  • Supprimer les étiquettes de données et la légende du donut
  • Modifier les couleurs des données. En particulier, la couleur de REST % doit presque se confondre avec la couleur d’arrière plan. Seule la couleur de PART % doit attirer l’œil.

Après ces réglages, cela commence à prendre forme.

ON COMPLETE AVEC UNE CARTE

Enfin pour afficher la valeur et le nom de la mesure (renommée pour l’utilisateur final), nous pouvons utiliser une carte qui aura les mêmes dimensions que le donut. Les deux visuels seront centrés et les tailles de données et d’étiquettes seront ajustées afin que la carte s’affiche parfaitement au centre du donut.

Au final, en quelques mesures DAX (on peut masquer les mesures intermédiaires une fois le rapport finalisé), nous pouvons intégrer à nos tableaux de bords des « jauges à 360 degrés » représentant un indicateur en pourcentage, qu’il s’agisse de répartition de ventes, d’un taux de service ou encore d’un taux de couverture réseau.

Quel que soit l’indicateur à produire, le résultat final ne nécessite que quelques mesures calculées et aucune connaissance approfondie du langage DAX.

Je vous invite à regarder la vidéo de démonstration que j’ai réalisée.
N’hésitez pas à partager ici ou sur ma chaîne Youtube vos commentaires et vos réalisations basées sur ce tutoriel.

A bientôt

Power BI Desktop. Novembre 2016

Les mois passent et les Monthly Releases de Microsoft Power BI Desktop se suivent avec la régularité d’une horloge suisse.

Et comme chaque mois, la team Power BI nous dévoile le menu en détail : https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-november-feature-summary/

Quoi de neuf ce mois-ci ?
Lire la suite

Power BI Desktop. Octobre 2016

Voici le traditionnel cadeau de fin de mois de l’équipe Microsoft Power BI : la mise à jour du Power BI Desktop et son lot de nouveautés.

Tout est détaillé ici : https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-october-feature-summary/

Un rapide coup d’oeil sur cette longue liste permet de détecter quelques pépites Lire la suite

Power BI Desktop. Septembre 2016

C’est maintenant une tradition pour les consultants décisionnels : pas un mois ne passe sans sa mise à jour des trois composants de la brique Power BI de Microsoft : le service cloud, l’application mobile et le Power BI Desktop.

Ce mois-ci, l’équipe de développement de Power BI a attendu le tout dernier jour du mois pour nous offrir son update.

Lire la suite