Er zijn in Power BI diverse manieren om je visualisaties beter te maken. Denk hierbij aan het beïnvloeden van de x- en y-as, het wijzigen van de standaard kleuren, de titels en vele andere opmaakopties. Een optie waar het op dit moment nog te kort schiet zijn de datalabels. Dit zijn de getallen die worden getoond bij onder andere een lijn- of staafgrafiek.
Hoewel het mogelijk is om de datalabels naar eigen inzicht op te maken heb je geen invloed op de locaties waar de labels worden getoond. Om te laten zien welke problemen dit oplevert en welke oplossingen er zijn is er een voorbeeld uitgewerkt.
Neem de volgende grafiek waarbij de aantallen per dag getoond worden in de vorm van een lijngrafiek:
Om de gebruiker van meer informatie te voorzien kun je er eenvoudig voor kiezen om de datalabels in te schakelen. Dit leidt echter tot een aantal willekeurige labels die de grafiek er niet overzichtelijker op maakt. Wel is zichtbaar dat Power BI automatisch de eerste, laatste, hoogste en laagste waarde toont.
De situatie die hier wenselijk is, is dat enkel de eerste en de laatste waarde worden getoond. Op die manier toon je aan de gebruiker de trend maar geef je ook direct inzicht in de werkelijke getallen. Dit ziet er dan als volgt uit:
Dit effect kun je eenvoudig bereiken met twee DAX-formules. Het gaat hier om de volgende twee DAX-formules:
Start aantal =VAR EersteDatum =
CALCULATE ( MIN ( Kalender[datum] ); ALLSELECTED ( Kalender[datum] ) )
RETURN
CALCULATE (
SUM ( Aantal[Aantal] );
FILTER ( Kalender; Kalender[datum] = EersteDatum )
)
Eind aantal =
VAR LaatsteDatum =
CALCULATE ( MAX ( Kalender[datum] ); ALLSELECTED ( Kalender[datum] ) )
RETURN
CALCULATE (
SUM ( Aantal[Aantal] );
FILTER ( Kalender; Kalender[datum] = LaatsteDatum )
)
Het resultaat van deze twee formules kun je eenvoudig opnemen in dezelfde lijngrafiek. Het resultaat is een lijngrafiek met de originele lijn en twee extra “lijnen” dit slechts bestaat uit één punt. Door te spelen met de opmaak kun je de legenda uitschakelen, de punten een afwijkende kleur geven en enkel de labels tonen behorende bij de nieuwe kolommen (met de optie Customize series).
Deze techniek kun je ook eenvoudig gebruiken om de hoogste en laagste waarde eruit te laten springen:
Voor bovenstaand resultaat zijn de volgende twee aanvullende formules gebruikt:
Hoogste aantal =VAR HoogsteWaarde =
CALCULATE ( MAX ( Aantal[Aantal] ); ALLSELECTED ( Aantal ) )
RETURN
CALCULATE (
SUM ( Aantal[Aantal] );
FILTER ( Aantal; [Aantal (som)] = HoogsteWaarde )
)
Laagste aantal =
VAR LaagsteWaarde =
CALCULATE ( MIN ( Aantal[Aantal] ); ALLSELECTED ( Aantal ) )
RETURN
CALCULATE (
SUM ( Aantal[Aantal] );
FILTER ( Aantal; [Aantal (som)] = LaagsteWaarde )
)
Dennis de Kock is BI consultant bij ProAnalytics. Dagelijks helpt hij organisaties bij het implementeren van Business Intelligence oplossingen. Daarnaast houdt hij zich bezig met zijn persoonlijke ontwikkeling en data visualisatie.
2 reacties