Die Geo-Visualisierung von positiven und negativen Salden ist insbesondere im Treasury und in Group Controlling ein relevantes Thema. Die Herausforderung liegt dabei darin, die Standardskalierung der Bubbles in der Landkarte vom kleinsten (negativsten) zum größten (positivsten) Wert durch eine absolute Skalierung zu ersetzen und dennoch zu sehen, welche Werte positiv und welche negativ sind.
Vielen Dank für diese interessante Fragestellung an Wolfgang Scheiblauer von der Firma Treamo.
Ausgangssituation
Wir verwenden die folgende sehr simple Datentabelle:
Die Visualisierung dieser Informationen im Map Visual von Power BI führt zu einer Skalierung der Bubbles vom kleinsten (= negativsten) zum größten (= positivsten) Wert. Am Beispiel USA (Wert +100) und Canada (Wert - 500) ist zu sehen, daß die Größenverhältnisse der Bubbles irreführend sind:
Lösungsvariante 1: absolutes Measure mit Differenzierung über die Legende
Die Lösung der Skalisierungsthematik liegt in der Erstellung eines zweiten Measures, das mit der DAX-Formel ABS() den Absolutwert der Balance ermittelt und das im Map Visual als Size verwendet wird:
-
Balance = Sum('Country Balances'[Balance in EUR])
-
Balance (absolute) = ABS([Balance])
Die Herausforderung liegt jetzt in der Differenzierung der positiven und negativen Werte. Dazu ist es naheliegend, die Legend Funktion im Map Visual zu verwenden. Das Feld wird mit der (Calculated) Column Balance Type belegt:
Die Rot-/Grün-Formatierung kann jetzt sehr bequem durch Formatierung der beiden möglichen Ausprägungen dieser Column erreicht werden:
Jetzt kann über die Farbe, aber auch über den Tooltip (siehe Screenshot oben) als auch über die See Records Funktion des Map Visuals genau nachvollzogen werden, welche Balances positiv sind und welche negativ.
Der große Nachteil dieser Lösungsvariante liegt darin, daß das Feld Legend im Map Visual nur mit einer Column und nicht mit einem Measure belegt werden kann. Damit sind Geo-Visualisierungen in dieser Lösungsvariante nur auf Originaldatensatz-Ebene der Datentabelle möglich:
Auswertungen auf aggregierter Ebene sind hier nicht möglich, daher ist diese Lösungsvariante für die meisten Praxiseinsätze leider nicht geeignet.
Lösungsvariante 2: absolutes Measure mit Differenzierung über Rules auf das Original-Measure
Als Measure für die Size wird wiederum das ABS-Measure verwendet. Ergänzend wird ein weiteres Measure definiert, das zur Anzeige dient, ob ein Balance positiv oder negativ ist:
- Balance Type (Measure) = IF(
'Country Balances'[Balance] > 0;
"Positive Balance";
"Negative Balance"
)
Dieses beschreibende Measure wird dem Bereich Tooltips des Map Visuals hinzugefügt, damit wird die Information im Tooltip und der See Records Funktion des Map Visuals angezeigt:
Die Rot-/Grün-Differenzierung wird in dieser Lösungsvariante über Rules bewerkstelligt, die Funktion ist über die Advanced Controls im Settings Bereich Data colors zu finden:
Als Format by wird Rules ausgewählt, als relevantes Feld wird jetzt das Original-Measure Balance verwendet, da dieses die Information über positive und negative Salden trägt:
Diese Lösungsvariante ist auf jeder aggregierten Ebene einsetzbar, dank des ausschließlichen Einsatzes von Measures werden die Informationen dynamisch auf jeder (Filter-)Ebene ermittelt und ist damit universell nutzbar.