Dit is het eerste deel van een serie blogs om praktische en interessante manieren van het gebruik van Level of Detail calculations (LoDs) te demonstreren. Het doel van de serie is om te tonen hoe LoDs gebruikt kunnen worden om uw visualisatie te verbeteren door deze meer interactief en dynamisch te maken, en daardoor ook beter toegankelijk tot de gebruikers.

Om een echt interactieve en dynamische viz te maken zult u vaak willen kunnen filteren en getoonde informatie in de viz kunnen wijzigen. Normaal gesproken kunt u filteren op elk van de dimensies of meetwaarden, zolang de meetwaarden ook daadwerkelijk worden opgehaald (queried) in de viz. Deze blog zal demonstreren hoe u kunt filteren op een meetwaarde die niet wordt opgevraagd en hoe dit filter meer dynamisch kan worden gemaakt middels een LoD.

ezgif.com-video-to-gif (1)

Wanneer u filters gebruikt kunt u filteren op dimensies; Customer NameCategory of Product, en u kunt ook filteren op de meetwaarden; Sum ([Sales]), Average ([Profit]) or Count ([Item])

Wanneer u filtert door middel van een meetwaarde dan kunt u alleen filteren op de data die ook daadwerkelijk is opgevraagd in de query van de viz; het toevoegen van Sum([Sales]) aan de filter shelf met Category in de view toont de range van minimum $32,249 tot maximum $4,380,165

Terwijl het filteren van Sum([Sales]) met Customer Name in de view resulteert in een range van $3 tot $219,891

Filter Image

Als u wilt filteren op het Category Sales sheet dan kunt u een conditional filter gebruiken op Customer Name.
Echter, u kunt voor dit type filters alleen zgn. Boolean type calculaties gebruiken. Bijv. Sum of sales groter/kleiner dan 100,000

Conditional Filter Image

Wat als u een sheet wilt filteren op verschillende waarden van Customer Name sales? Wat als u snel wilt kunnen veranderen tussen deze categorieën? Wat als u deze categorieën wilt opnemen in uw viz? Dit is waar LoDs erg handig voor kunnen zijn.

De truc hier is; u gebruikt een LoD calculatie om de sum([Sales]) geaggregeerd op Customer Name level te berekenen, om vervolgens verschillende sales categories te maken en die als filter te gebruiken:

  • Noem de calculatie LoD Customer Sales
  • Fix de calculatie om te aggregeren op Customer Name level:

{fixed [Customer Name]

  • Calculeer de Sum([Sales])

{fixed [Customer Name] : Sum([Sales])}

Na deze stap moeten we nog een calculatie maken die de ondergrens van de sum of sales aangeeft:

  • Noem de calculatie Customer Sales Categories
  • Maak een if statement om een range of values te categoriseren

IF [LoD Customer Sales] >=100000 then “Customers with Higher Sales

ElSEIF ([LoD Customer Sales]) >=50000 and ([LoD Customer Sales]) < 100000 then“Customers with Medium Sales

ELSE “Customers with Lower Sales

END

Wat u zult opvallen is dat deze calculatie nu is opgenomen in de dimensions shelf, wat betekent dat u deze calculatie op precies dezelfde manier kunt gebruiken als elke andere dimensie. U kunt ermee filteren, partitioneren, groeperen, een hiërarchie maken, wat u maar wilt!

In dit geval kunnen we de calculatie als een filter toevoegen aan de sheet om sales by Category te visualiseren. Dit geeft de mogelijkheid om de viz te filteren op elke category van de customer sales. Om hier verder op voort te bouwen kunt u nu verschillende visualisaties maken en beginnen met analyseren op een interactieve en dynamische manier.

Houdt onze blogs in de gaten voor (onder andere) het vervolg op deze serie. We zullen ook andere manieren van het gebruik van LoDs demonstreren om interactieve en dynamische visualisatie te creëren.


Deze blog is origineel gepost op The Information Lab UK door Phillip Lowe.
If you like to read the original blog in English, click here