W biznesie często zdarza się potrzeba budowania rankingu. Przykładowo wartościową informacją jest top najlepiej sprzedających się produktów. Albo w przypadku zarządzania zespołami sprzedażowymi – rankingów sprzedawców/handlowców. Ranking oczywiście podaje kolejność, ale pomija wartość – warto mieć tego świadomość, bo poszczególne miejsca może różnić 1%, a może i 101%. Dlatego dla pełnego kontekstu należy również o tym pamiętać. Tableau oferuje kilka sposobów kalkulacji rankingu, jak i również jego wizualizacji. Sprawdź w jaki sposób zbudować rankingi w Tableau.
Kalkulujemy pozycję w rankingu
Tableau oferuje pięć rodzajów kalkulacji rankingu. Różnią się one w zasadzie podejściem do takich samych wartości. Te funkcje to RANK, RANK_DENSE, RANK_MODIFIED i RANK_UNIQUE. Ostatnia funkcja RANK_PERCENTILE jest tutaj wyjątkiem i kalkulowana jest nieco inaczej – o tym w dalszej części wpisu.
Zacznijmy od podstawowej funkcji RANK. Pierwszym argumentem jest miara, według której chcemy układać ranking. Musi ona również posiadać agregację (czyli przykładowo suma albo średnia). Drugim opcjonalnym argumentem funkcji jest sposób kalkulacji rankingu – rosnąco lub malejąco. Domyślnie jest to według malejącej wartości, czyli descending:
Aby lepiej zrozumieć sposób kalkulacji rankingu, posłużę się listą miast w Szwecji uszeregowaną na podstawie liczby składanych zamówień (z bazy Sample Superstore dostępnej w Tableau):
Początek listy jest dość jasny, następnie mamy kilka miast z taką samą liczbą zamówień. Po dodaniu pola z rankingiem, uzyskujemy następujący rezultat:
Jak widać w tabeli ranking przyznaje miejsca według zadanej miary (Count of City). Warto zwrócić uwagę na pozycje z taką samą wartością – dostają one taką samą pozycję w rankingu. Przykładowo – Karlstad i Huddinge mają pozycję nr 5, a następne miasto już 7. Nie ma tym samym pozycji nr 6.
Istotne jest również, że funkcje RANK to funkcje tablicowe. W przypadku powyżej ranking jest kalkulowany along Table (down), czyli w tabeli w dół. Należy o tym pamiętać przy modyfikacjach tabel i wizualizacjach, aby ranking był odpowiednio kalkulowany.
Rankingi w Tableau- RANK DENSE, MODIFIED, UNIQUE I PERCENTILE
Jak już wspomniałem wcześniej, podstawową różnicą pomiędzy funkcjami jest podejście do pozycji z takimi samymi wartościami:
Najlepiej widać to na naszym przykładzie. Mamy 14 miast, w zależności od sposobu kalkulacji, miasta z taką samą wartością mogą mieć różną pozycję:
Nieco inaczej wygląda sytuacja jeśli chodzi o RANK_PERCENTILE, który też jest najmniej intuicyjne. Funkcja zwraca percentyl rankingu dla danej pozycji. Generalnie w ogólnym rozumieniu rankingu ten rodzaj funkcji nie jest przydatny.
Wizualizacja rankingu
Najlepiej ranking w pojedynczym punkcie w czasie wizualizować w tabeli. Dlaczego? Ponieważ i tak wiemy jaki jest skok (czy też różnica między poziomami), więc dodawanie informacji w postaci wykresu typu bar chart niewiele wnosi:
Można również umieścić ranking jako dodatkowy element informacji w etykiecie na bar charcie z główną miarą (wartość w nawiasie):
Albo jako element nagłówka wiersza w postaci dyskretnej:
W przypadku różnego rodzaju score cardów, czy KPI cards możemy wykorzystać highlight table – sprawdzi się najlepiej. Ranking w tym ujęciu możemy traktować bardziej jako wartość dyskretną niż ciągłą, stąd highlight table sprawdzi się idealnie. Poniżej przykład kalkulacji rankingu dla sub-kategorii produktów dla czterech miar:
Na podstawie takiej tabeli można już próbować wyłapać pewne zależności. Przykładowo pozycja „Tables” jest w drugiej części tabeli jeśli chodzi o sprzedaż, a na szarym końcu jeśli chodzi o ilość (quantity) i zysk (profit). Kategoria ta notuje również największy upust (discount). Powstaje od razu pytanie, czy kategoria najmniej zyskowna posiadająca największy upust nie powinna być optymalizowana w jakiś sposób.
Dodajemy wymiar czasu
Nieco więcej informacji może dostarczyć zmiana rankingu w czasie. Kontekst jest bardzo ważny przy przedstawianiu danych, dlatego istotne jest zrozumienie dynamik w ujęciu czasowym. Wykorzystujemy do tego zwykły wykres liniowy, umieszczając wymiar czasowy w columns, a pole rank w rows:
W tym miejscu warto przypomnieć, że funkcje RANK to funkcje tablicowe. Jeżeli dodajemy kolejny wymiar (czas), musimy również odpowiednio ustawić tę funkcję, aby ranking liczył się poprawnie. Należy również uważać na filtrowanie, mając na uwadze order of Operations w Tableau.
Wykres rankingu możemy wzbogacić dokładając drugi wykres typu circle na dual axis. Dzięki temu uwydatniamy etykiety. Uzyskujemy wykres zwany Bump chart:
Bump Chart
Przy bump chartach należy zwrócić szczególną uwagę na czytelność wykresu. Przy większej liczbie kategorii wykres staje się nieczytelny i tym samym nieprzydatny dla użytkownika. Przykładowo zmieniając wykres powyżej z trzech miast na dziesięć, tracimy na przejrzystości. Przy czym jego użyteczność wzrasta jeśli użyjemy akcji typu highlight – wtedy możemy prześledzić zmiany danej pozycji w czasie:
Szczególnym przypadkiem bump chartu może być slope chart – wtedy gdy mamy dwa punkty w czasie. Wtedy wykres staje się bardziej przejrzysty, natomiast przekazuje mniej informacji.
Kiedy szczególnie przydają się rankingi w Tableau?
W skrócie – wszędzie tam gdzie istotna jest kolejność. Załóżmy, że jako szefowie sprzedaży chcemy wprowadzić element rywalizacji (bądź grywalizacji) dla naszych handlowców. Co tydzień albo miesiąc – TOP3 dostaje ekstra bonus. Wtedy ranking jest idealny, a bump chart doda kontekst w postaci historii. Rankingami żyje sport – tabele ligowe, strzelców, rankingi tenisistów (WTA), rankingi FIFA czy federacji bokserskich. Należy oczywiście pamiętać, że najczęściej ranking jest jednym z elementów przekazu. Samo w sobie nie pokazuje wartości istotnego KPI. Wracając do przykładu rankingu sprzedawców – na bump chart będziemy widzieć kto jest numer jeden, dwa i kolejne, ale nie widać różnic pomiędzy miejscami. Podobnie w rankingach sportowych – różnica pomiędzy pierwszym a drugim miejscem może być minimalna, a może być ogromna. Dlatego wizualizując rankingi w Tableau należy również pamiętać o dopełnieniu obrazu wartościami danych wskaźników. W zasadzie powinno być odwrotnie – ranking może być dodatkowym dopełnieniem obrazu realizacji KPI.
Mateusz Karmalski,
Tableau Author