Das Video Tutorial "IBCS Multi-Tier Column" von Injae Park ist sehr beeindruckend und hat mich dazu veranlasst, ein daraus abgeleitetes und etwas vereinfachtes Tutorial für die verbesserte Gestaltung des Säulendiagramms in Zusammenhang mit IST- und PLAN-Daten (ohne Forecast) bereitzustellen. In diesem Teil 1 wird gezeigt, wie mit einigen Kniffen aus dem Column Chart in Power BI einiges mehr an Informationsqualität herausgeholt werden kann als nur mit der Default Konfiguration. Im Teil 2 wird dann die Visualisierung von IST-/PLAN-Abweichungen thematisiert.
IBCS ist ein Creative-Commons Projekt zur Schaffung von Standards zur konzeptionellen und visuellen Gestaltung von Berichten und Diagrammen. Die hier vorgestellten Schritte zur Verbesserung der visuellen Darstellung von IST- und PLAN-Daten orientieren sich an den IBCS Standards, jedoch ohne den Anspruch auf Vollständigkeit zu stellen.
Vorher-Nachher
Die Darstellung von IST- und PLAN-Säulen kann mit einigen Kniffen deutlich verbessert und damit die Aussagekraft massiv erhöht werden.
Schritt für Schritt Anleitung
Die Umsetzung wird im folgenden Schritt für Schritt erläutert.
Schritt 1: Ausgangsituation
Die Default Konfiguration von IST- und PLAN Säulen im gruppierten Säulendiagramm ist nicht besonders aussagekräftig für den Informationsempfänger:
Hier die beiden Measures für das Diagramm:
ACTUAL =
CALCULATE(
SUM('Fact Sales'[Value]);
'Fact Sales'[Scenario] = "ACT"
)
BUDGET =
CALCULATE(
SUM('Fact Sales'[Value]);
'Fact Sales'[Scenario] = "BUD"
)
Schritt 2: BUDGET-Säulen
Im ersten Schritt werden die BUDGET-Säulen weiß gefärbt und umrahmt und damit dezenter formatiert, die ACTUAL-Säulen werden schwarz formatiert und damit optisch dominierend:
Schritt 3: Überlappung der Säulen
Im nächsten Schritt werden die Säulen überlappt und damit die Dominanz der ACTUAL-Säulen weiter verstärkt:
Schritt 4: Default Data Labels testen
Die Default Data Labels sind leider nicht zielführend, die Beschriftungen können nicht ohne Qualitätsverluste im Diagramm mit der automatischen Anordnung platziert werden:
Daher werden die Data Labels erst mal wieder ausgeschalten.
Schritt 5: "MAX Value" Column als Träger für die Labels hinzufügen
Als Träger für die Beschriftung wird ein "MAX Value" Measure angelegt und als Säule dem Diagramm hinzugefügt, für die optimale Platzierung der im nächsten Schritt hinzuzufügenden Labels sollte diese Column mittig zwischen ACTUAL und BUDGET angeordnet werden:
Für die Data Labels wird darüber hinaus auch ein "MIN Value" Measure definiert:
MAX Value =
MAX(
[ACTUAL];
[BUDGET]
)
MIN Value =
MIN(
[ACTUAL];
[BUDGET]
)
Schritt 6: "MAX Value" Column ausblenden und "MAX Value" Labels anzeigen
Im nächsten Schritt wird die Farbe der "MAX Value" Column auf 100 % Transparenz formatiert und die Data Labels lediglich für die "MAX Value" Column aktiviert (und nicht für "ACTUAL" und "BUDGET"):
Schritt 7: "MIN Value" Labels als zweite Datenreihe anzeigen
Mit der Detail Funktion können die Werte des "MIN Value" Measures als zweite Datenreihe unterhalb der "MAX Value" Labels platziert werden:
Dazu muß das "MIN Value" Measure im Bereich Detail als Datenqelle definiert werden:
Schritt 8: Skalierung steuern
Beim Wechsel in das Jahr 2023 wird jetzt sichtbar, daß die untere Data Label Reihe teilweise an die Säulen stößt:
Daher wird die Skalierung der Y-Achse jetzt aktiv durch das Measure "SCALE Column Chart" gesteuert:
Hier die Measure Definition (mehr dazu hier) ...
SCALE Column Chart =
VAR var_ACT =
MAXX(
ALL('Dim Dates'[Month w/Year]);
[ACTUAL]
)
VAR var_BUD =
MAXX(
ALL('Dim Dates'[Month w/Year]);
[BUDGET]
)
RETURN
MAX(var_ACT; var_BUD) * 1,2
... und die Aktivierung im Säulendiagramm:
Schritt 9: Bedingte Formatierung für die Data Labels
Jetzt werden die beiden Datenreihen bedingt formatiert, damit intutiv zu erkennen ist, welches Label zur ACTUAL Säule gehört und welches zur BUDGET Säule:
Umgesetzt wird dies mit den beiden Measures "ACTUAL format MAX" und "ACTUAL format MIN":
ACTUAL format MAX =
IF(
[MAX Value] = [ACTUAL];
1;
0
)
ACTUAL format MIN =
IF(
[MIN Value] = [ACTUAL];
1;
0
)
Das "ACTUAL format MAX" wird auf die Schriftfarbe des Data Labels mit folgender Rule angewendet:
Das "ACTUAL format MIN" wird analog auf die Schriftfarbe des Detail Data Label angewendet.
Schritt 10: Achsenbeschriftung entfernen
Die Achsenbeschriftung ist jetzt nicht mehr relevant und wird daher deaktiviert:
Schritt 11: Legende als Subtitel
Bleibt noch die Legende - diese wird deaktiviert und stattdessen der Subtitel aktiviert und folgender Text hinterlegt:
Die beiden Kreise können beispielsweise von dieser Quelle einkopiert werden:
Quellen
Video Tutorial "IBCS Multi-Tier Column" von Injae Park