Dynamic Zone Visibility zostały wprowadzone w wersji 2022.3 i o ile nie są rewolucją, to z pewnością znacznym ułatwieniem w projektowaniu dashboardów. Dlaczego nie rewolucją? Ponieważ podobne efekty można było już osiągnąć wcześniej, natomiast wymagało to nieco innego, bardziej skomplikowanego podejścia. Teraz Tableau znacznie ułatwiło dynamiczne kontrolowanie zawartości właśnie dzięki funkcji Dynamic Zone Visibility. Jak to działa? Opiszę poniżej przy wykorzystaniu praktycznych zastosowań tego rozwiązania.
Krótkie wprowadzenie przed praktyką
Zanim przejdziemy do praktyki, krótkie wprowadzenie do samej funkcjonalności. Nową opcję znajdziemy przy projektowaniu dashboardu. Po kliknięciu elementu w zakładce Layout mamy dostępną nową funkcję – Control visibility using value:
Domyślna wartość to None. Dozwolony wybór to parametr lub pole obliczeniowe, które musi spełniać trzy warunki: być typu boolean (prawda/fałsz), mieć jedną wartość (prawda albo fałsz) oraz być wartością globalną, niezależną od wizualizacji, zwracającą stałą wartość (jak kalkulacje LOD). Jeżeli dane pole lub parametr spełni warunki, znajdziemy je w liście rozwijalnej do wyboru i możemy wykorzystać je do kontroli zawartości dashboardu.
Use Case #1 – zamiana wykresów
Przechodząc już do praktyki, zajmiemy się podstawowym zastosowaniem Dynamic Zone Visibility, czyli zamianą wykresów na dashboardzie. Będziemy chcieli kontrolować, który wykres będzie wyświetlany w zależności od wyboru parametru. Na wstępie mamy trzy wykresy na dashboardzie:
Wykresy są ściśnięte i nieczytelne, dlatego wprowadzimy Dynamic Zone Visibility. Zacznijmy od stworzenia parametru Wybierz wykres do wyboru wykresu z trzema opcjami:
Parametr jest typu tekstowego, a kontrola widoczności odbywać się musi za pomocą pól przyjmujących wartości prawda/fałsz. W tym celu tworzymy pole obliczeniowe typu boolean:
W kolejnym kroku dodajemy to pole w Details w naszej wizualizacji. Następnie już na dashboardzie wybieramy nasz wykres Scatter plot, zaznaczamy Control visibility using value i wybieramy nasze nowo stworzone pole obliczeniowe:
Możemy już kontrolować wyświetlanie wykresu za pomocą parametru. Dokładniej mówiąc za pomocą parametru kontrolujemy wartość pola obliczeniowego, które to z kolei decyduje o widoczności elementu na dashboardzie.
Musimy to powtórzyć dla kolejnych wykresów, tworząc kolejne dwa pola obliczeniowe, dodając je w details i następnie na dahsboardzie przypisać je do pola Control visiblity using value. Finalny efekt będzie następujący:
Use Case #2 – wyświetlanie/ukrywanie panela filtrów
Kolejnym zastosowaniem Dynamic Zone Visibility jest pokazywanie/ukrywanie panela z filtrami lub legendą. Dbając o miejsce na dashboardzie często panel ten może być ukrywany, aby nie zabierać miejsca, a wyświetlać się tylko w przypadku potrzeby zmiany. Zacznijmy od stworzenia parametru Filtry? typu boolean, z przypisanym opisem Pokaż/Ukryj do wartości True/False:
Następnie przechodzimy na dashboard, gdzie zaznaczamy nasz panel, następnie wybieramy opcją Control visibility using value i wybieramy parametr Filtry? z listy Parameters:
Gotowe – możemy sterować wyświetlaniem panelu za pomocą parametru. W poprzednim przykładzie robiliśmy to poprzez pole obliczeniowe, tym razem jest to bezpośrednio parametr typu boolean.
Powstaje pytanie – czemu nie zastosować funkcjonalności Add Show/Hide button dla kontenera? Będzie działać tak samo, natomiast parametr może sterować więcej niż jednym elementem na dashboardzie. Podepnijmy tutaj również tytuł – jeden parametr będzie sterował widocznością dwóch elementów. Takiej funkcjonalności Show/Hide buttton nie posiada. W praktyce wygląda to następująco:
Use Case #3 – zoom wykresów
Wróćmy do przykładu z wykresami, przy założeniu że chcemy pokazywać wszystkie wykresy odbiorcy, ale dać mu opcję przybliżenia jednego oraz ukrycia reszty. Tak wygląda nasz bazowy dashboard z trzema wykresami:
Zacznijmy od stworzenia parametru typu tekstowego Zoom wykres podobnego do poprzedniego Wybierz wykres, ale z dodatkową opcją No:
Kolejnym krokiem będzie stworzenie pól obliczeniowych, zwracających wartość True przy wyborze pojedynczego wykresu lub opcji No:
Następnie pozostaje nam tylko dodanie nowych pól obliczeniowych w details poszczególnych wykresów i wybór tych pól w liście po wyborze Control visibility using value. Efekt będzie następujący:
Dynamic Zone Visibility daje nowe możliwości
Funkcjonalność dynamicznej widoczności stref jest dużym ułatwieniem, gdyż zwiększa i tak dużą elastyczność narzędzia jakim jest Tableau. Skomplikowane do tej pory sposoby ukrywania/pokazywania treści stały się teraz dużo bardziej przystępne i łatwiejsze we wprowadzaniu. Pozwalają na dostosowanie jednego dashboardu do potrzeb różnych użytkowników – nawet na podstawie nazwy użytkownika możemy definiować elementy widoczne na wykresie. Podobnie z dniami tygodnia – przy automatycznej aktualizacji dashboardu widoczny może być przykładowo poprzedni lub obecny dzień. Łatwiejszym staje się również przygotowanie różnych wersji kolorystycznych dashboardu (np. jasny/ciemny). Zastosowań jest jak zwykle dużo, a funkcjonalność samego rozwiązania potwierdza łatwość dostosowania się Tableau do potrzeb użytkownika.
Mateusz Karmalski Tableau Author