W analizie danych aspekt czasowy jest jednym z podstawowych ujęć kluczowych wskaźników efektywności. Śledzenie zmian w czasie dostarcza informacji nie tylko o bieżącej kondycji naszego biznesu, ale także o bardziej długookresowych trendach i tendencjach. Ocena zmian naszych wskaźników w odniesieniu do poprzednich okresów czasu (w zależności od charakteru danej wartości może to być zarówno dzień jak i miesiąc czy rok) pozwala jasno określić kondycję naszego biznesu. Dlatego też aspekt czasowy jest wszechobecny w dashboardach i narzędziach analitycznych takich jak Tableau. Zobacz na co zwrócić uwagę przy wizualizacji time-series.
Czego potrzebujemy do analizy i wizualizacji time-series?
Aby móc mówić o analizie przebiegów czasowych (time-series), konieczne są dwa elementy – wymiar czasowy oraz mierzony wskaźnik (miara). Wymiar czasowy obejmować może zarówno czas mierzony w godzinach i minutach, jak i w dniach, tygodniach, miesiącach, kwartałach czy latach. Wszystko zależy od charakteru naszych danych i mierzonych wskaźników. W niektórych przypadkach potrzebujemy znać wartość niemal na żywo (przykładowo monitorując pracę układów przemysłowych), w innych potrzebujemy ujęcia długookresowego (przykładowo w sprawozdaniach finansowych). Obojętnie od tego jaki czasokres jest odpowiedni musi być on jasno zdefiniowany oraz obecny w naszych danych jako odpowiedni wymiar czasowy. W Tableau jest to specjalny typ danych (a konkretnie wymiar – dimension) oznaczony ikonką kalendarza:
Wymiar czasowy jest specyficzny ponieważ może być zarówno wartością dyskretną (np. nazwy miesięcy) jak i ciągłą (np. numery miesięcy). Na danych czasowych możemy również wykonywać obliczenia matematyczne (jak różnicę między datami, dodawanie wartości do dat).
Wykres liniowy jako podstawowy wykres przebiegów czasowych
Podstawowym wykresem wykorzystywanym w wizualizacji przebiegów czasowych jest wykres liniowy. Jest to powszechnie występujący wykres, który znajdzie zastosowanie w każdym dashboardzie biznesowym zawierającym dane czasowe. Jest prosty w odczycie i bardzo uniwersalny, co zwiększa jego użyteczność. Na tym wykresie punkty danych są połączone ze sobą co wskazuje na ciągłość danych w czasie.
Wykresy liniowe mają wiele różnych odmian, pozwalających dostosować ich wygląd i funkcjonalność pod konkretne zastosowanie. Przykładowo – mając kilka serii danych, możemy poszczególne przebiegi wyróżnić kolorem albo stworzyć wykres panelowy złożony z kilku przebiegów:
Wykres liniowy ma również jedną bardzo użyteczną cechę – oś wartości nie musi zaczynać się w zerze (jak w przypadku bar chartu). Zależy to od charakteru naszego wskaźnika – najprościej widać to na przykładzie wykresu temperatury ciała człowieka. Zmienia się ona w zakresie 36-40 stopni, więc wizualizacja od 0 nie ma sensu bo taka wartość nie zostanie osiągnięta, a zmiany na takim wykresie byłyby ledwo widoczne:
Jeśli nie wykres liniowy, to co?
Wykres liniowy jest z reguły najlepszą opcją w przypadku szeregów czasowych, ale oczywiście nie jedyną. Alternatyw jest kilka i zależą one od specyfiki naszych danych ale też od preferencji użytkowników czy standardów ustalonych w organizacji. Często wykorzystywany jest area chart, czyli wykres warstwowy. Jest to wykres bardzo zbliżony do wykresu liniowego, tylko obszar pod linią jest pokolorowany. Wyróżniona w ten sposób powierzchnia wskazuje na dane agregowane przykładowo w postaci sumy. Czyli przykładowo tym sposobem możemy wizualizować sumę przychodów, ale cenę (czyli sumę przychodów/sumę wolumenów) lepiej pokazać na wykresie liniowym:
Wykresy typu area znajdują również zastosowanie w wizualizacji danych skumulowanych – nominalnie lub procentowo:
Podobne zastosowanie ma wykres słupkowy. Również lepiej nada się do wizualizacji danych zagregowanych. Nie ma tutaj za to połączenia punktów w czasie, więc na pierwszy rzut oka nie wiemy że mamy do czynienia z danymi czasowymi:
Co istotne, oba typy wykres powinny się zaczynać w zerze. Czyli nie mamy możliwości ucinania osi jak w przypadku wykresu liniowego.
Oprócz wykresu area i column możemy spotkać się z wykresami punktowymi. Jest to podobny wykres do liniowego, z tym że mamy same znaczniki danych bez linii je łączących – czyli bez wskazania ciągłości danych. Wykres może być użyteczny jeśli nie mamy regularnych danych tylko wyrywkowe punkty:
Jeżeli zależy nam z kolei na dużej szczegółowości danych możemy sięgnąć po tabele, które poprzez dodanie koloru możemy zmienić w heatmapy:
Wizualizacja time-series. Więcej danych – więcej możliwości
W sytuacji kiedy chcemy pokazać więcej serii danych na wykresie przebiegu czasowego mamy kilka możliwości. Po pierwsze, przebiegi możemy wyróżnić kolorem lub rozmiarem. Jeżeli jest ich dużo, możemy sięgnąć po małe wielokrotności (small multiples) – siatkę kilku lub nawet kilkunastu małych wykresów:
Z kolei jeśli chcemy pokazać dwie różne miary na jednej osi czasu, możemy sięgnąć po dual-axis. Na przykładzie poniżej widzimy sprzedaż jako wykres kolumnowy (dane agregowane za pomocą sumy) oraz zysk procentowy jako linię (dane obliczane jako wskaźnik):
Jak wybrać odpowiedni wykres?
W większości przypadków mając dane czasowe najlepszy będzie wykres liniowy. Jeżeli mamy dane agregowane za pomocą sumy, możemy sięgnąć po wykres warstwowy lub kolumnowy. Tak samo w sytuacji gdy chcemy pokazać strukturę przy wykorzystaniu wykresów skumulowanych. Przy większej ilości serii danych warto pomyśleć o rozdzieleniu przebiegów aby uniknąć powstania tzw. wykresu spaghetti. Tak jak zawsze w wizualizacji danych musimy pamiętać o użytkowniku końcowym – wizualizacje powinny być jasne, czytelne i użyteczne.
Mateusz Karmalski Tableau Author