Ostatnio w społeczności wizualizacji danych viralem stał się alternatywny wykres dla wykresu słupkowego skumulowanego (stacked bar/column chart). Standardowy wykres ma pewne wady, które nie tyle go dyskwalifikują, co nieco utrudniają jego interpretację. Czy nowy sposób, opracowany przez jednego z Wizjonerów Tableau, Kevina Flerlage, faktycznie jest receptą na te bolączki?
Zacznijmy od początku – standardowy stacked bar/column chart
Wykres skumulowany nominalny lub procentowy to jeden z podstawowych wykresów wykorzystywanych w wizualizacji danych, w tym biznesowych. Za jego pomocą pokazujemy strukturę danej wartości wewnątrz danej kategorii – np. strukturę segmentów wewnątrz regionów:

Równie popularne jest pokazywanie w ten sposób struktury procentowej:

Wykres skumulowany kolumnowy z kolei lepiej sprawdza się także przy wizualizacji zmian w czasie:

Jakie są wady takiego podejścia? Przede wszystkim brak wspólnej linii odniesienia dla wszystkich kategorii. Wielkość wymiaru pierwszego koloru, który zaczyna się w punkcie zero, łatwo do siebie porównać. Ale już kolejnych – nie, ponieważ nie zaczynają się w tym samym miejscu. Więc szybkie i dokładne porównanie jest niemożliwe, najczęściej trzeba wspomagać się etykietami. Porównujemy tym samym już nie długość, tylko rozmiar – co jest trudniejsze. Można co prawda rozbić kategorie na oddzielne panele, ale wtedy tracimy total. Nie jest to więc również rozwiązanie idealne:

Alternatywne podejście
Rzadko w wizualizacji danych pojawia coś zupełnie nowego, a jednocześnie prostego. Takie zdecydowanie jest zaproponowane nowe podejście w wizualizacji struktury zamiast wykresu skumulowanego. Polega na rozbiciu kategorii i pokazaniu ich na wspólnej osi, oraz dodaniu totala obejmującego wszystkie kategorie:

Co zyskujemy w tym podejściu? Przede wszystkim wspólny start wszystkich kategorii – bardzo łatwo jest porównywać ze sobą nie tylko kategorie wewnątrz danego wymiaru, ale także między tą samą kategorią w różnych wymiarach – wszystko startuje w zerze. Dodatkowo dzięki szerokim słupkom obejmującym dany wymiar nie tracimy porównania między sobą totali. Wykres ten więc z jednej strony eliminuje wady standardowe wykresu skumulowanego (brak wspólnej osi dla wszystkich kategorii) a z drugiej zachowuje jego zalety (rozbicie na kategorie przy jednoczesnym względzie na total).
Jakie mogą być wady takiego podejścia? Wydaje się, że nie będzie to najlepsze rozwiązanie przy dużej liczbie kategorii – słupki z wartościami szczegółowymi będą bardzo małe w porównaniu z totalem. Stracimy tym samym porównywalność kategorii. Dodatkowo wykres zawierał będzie dużo puste przestrzeni, której nie sposób w żaden sposób zagospodarować:

Inna sprawa, że standardowy stacked również będzie tutaj nie czytelny – więc nie jest to rozwiązanie wszystkich jego bolączek:

Jak to zrobić w Tableau?
Wykres tego typu oczywiście nie jest dostępny wprost w Tableau, jak wiele bardziej zaawansowanych tworów. Istnieje kilka sposób jego stworzenia – opiszę dwa wg mnie najprostsze.
Pierwszy sposób nie wymaga tworzenia żadnych kalkulacji, a jedynie wykorzystanie linii referencyjnych. Dla samych słupków korzystamy z Distribution Band, Per Pane, 0-100% of Total, zaznaczona opcja Fill Below:

Linie na górze słupków tworzymy poprzez Reference Line – Per Pane, Total, z odpowiednią etykietą i formatowaniem linii:

Efekt końcowy:

Drugie podejście wymaga już pola kalkulowanego – w tym przypadku wykorzystania kalkulacji Level Of Details dla obliczenia totalu wewnątrz danej kategorii:

Tak stworzone pole dodajemy do wykresu jako drugą oś (dual axis), usuwając kategorię z koloru oraz powiększając na max szerokość słupka. W rzeczywistości są to oczywiście trzy słupki, ale wizualnie – jeden. Pozostaje jedynie pokazanie etykiet dla środkowego słupka i gotowe:

Czy ten wykres to rewolucja?
Oczywiście ciężko stwierdzić czy to podejście wejdzie na stałe do kanonu wizualizacji danych czy pozostanie viralem, który z czasem wygaśnie i pozostanie ciekawostką. Z jednej strony jest to użyteczne podejście, które eliminuje część ograniczeń klasycznego wykresu skumulowanego. Z drugiej strony przygotowanie tego wykresu nie jest aż tak proste i oczywiste, i nawet w Tableau musimy troszkę pokombinować żeby go odtworzyć. Warto natomiast mieć świadomość takiego rozwiązania i w uzasadnionych przypadkach go stosować. Dobrze jest też widzieć rozwój stosunkowo prostych rozwiązań wizualnych, które mogą wesprzeć warsztat analityka w codziennej pracy.
Mateusz Karmalski Tableau Author