NewDataLabS

Tableau - Narzędzia Business Intelligence

  • EMEA Rising Star Tableau Partner of The Year 2018
  • Wydarzenia
    • Webinary Tableau
    • Webinary Power BI
    • Szkolenia
      • Szkolenia New Data Model
      • Szkolenia online
      • Szkolenia zamknięte
  • Wiedza
    • Baza Wiedzy
  • Pobierz
    • Tableau
      • Tableau Desktop – Trial
      • Tableau Server – Trial
      • Tableau Prep – Trial
      • Tableau Reader
    • Snowflake
  • Blog
  • Kontakt
  • Rozwiązania
    • ETL
      • Tableau Prep
      • Airflow
      • Power Query
      • Microsoft Integration Services
      • ELT
      • Fivetran
    • Hurtownie danych
      • Snowflake
      • Google Big QUERY
      • Microsoft SQL Server
      • PostgreSQL
    • Business Intelligence
      • Tableau
        • Co to jest Tableau
        • Jak dobrze wdrożyć Tableau
        • Interaktywny kokpit menedżerski
        • Cennik Tableau
        • Produkty Tableau
          • – Tableau Desktop
          • – Tableau Server
          • – Tableau Prep
          • – Tableau Online
        • Audyt Tableau
        • Tableau Day
      • Power BI
      • Google Data Studio
  • Usługi
    • Warsztaty Proof of Concept
    • ETL - przygotowanie danych
    • Raportowanie i wizualizacja danych
    • Asysta eksploatacyjna
    • Migracja systemu
    • Szkolenia
    • Embedded Analytics
  • O firmie
    • O nas
    • Kariera
  • Klienci
    • Wybrani Klienci
    • Customer stories
      • Snieżka S.A.
      • Werner Kenkel Sp. z o.o.
      • DOZ S.A.
PL / EN

DAX- funkcje logiczne IF i SWITCH

15 grudnia 2021

Wykorzystywanie funkcji logicznych w DAX stanowi niezbędny element w dziedzinie analizy i interpretacji danych. Są bardzo przydatnymi i elastycznymi funkcjami, dzięki którym możemy efektywniej tworzyć skomplikowane raporty. Jednak dzisiaj chciałabym zachęcić do spojrzenia na nie w mniej oczywisty sposób i przedstawić praktyczne ich zastosowanie na przykładzie stworzonego w Power BI kalendarza adwentowego. Dzięki użyciu funkcji IF i SWITCH możliwe jest stworzenie wizualizacji, w której bez ingerencji użytkownika, automatycznie zmieniać się będzie jej wygląd i zawartość.

Czym są funkcje logiczne języka DAX?

Rodzina funkcji logicznych sprawdza jakie wartości lub zestawy wartości występują w wyrażeniu.

Do grupy tej należą m. in. funkcja IF oraz SWITCH. Aby móc się nimi posługiwać, należy przyjrzeć się składni, której zrozumienie jest kluczowe do prawidłowego zastosowania ich w praktyce.

Funkcja IF sprawdza warunek i zwraca jedną wartość, jeśli jest on spełniony, w przeciwnym razie zwraca drugą wartość.

Składnia tej funkcji wygląda następująco:

Natomiast funkcja SWITCH oblicza zawarte w formule wyrażenia i w zależności od wybranej przez użytkownika listy wartości, zwraca jedno z wielu możliwych wyrażeń końcowych.

Składnia tej funkcji wygląda następująco:

Wykorzystanie w praktyce funkcji IF i SWITCH

Wiemy już czym są i jak działają funkcję logiczne IF i SWITCH. Sprawdźmy więc jak z ich pomocą można stworzyć automatycznie zmieniające się elementy dashboardu bez wykonania akcji przez użytkownika.

Ciekawym wykorzystaniem tych funkcji jest stworzenie kalendarza adwentowego, w którym codziennie, aż do Świąt odsłaniać się będzie jedno okienko, pod którym ukryta jest niespodzianka. Jednocześnie przy użyciu odpowiedniego wyrażenia, każdego dnia zmieniać się będzie wyświetlany tekst i z pomocą sympatycznego renifera można będzie się dowiedzieć, jak używając podstawowych funkcji DAX i narzędzia Power BI uzyskać odpowiedź na nietypowe świąteczne pytania.

Tworzymy automatycznie odsłaniające się okienka

Aby stworzyć taki kalendarz w Power BI niezbędne jest przygotowanie odpowiedniego źródła danych. W naszym przypadku jest to tabela zawierająca cztery kolumny: data, numer dnia, treść pytania, treść odpowiedzi. Tak przygotowaną tabelę ładujemy do Power BI.

Odkrywanie obrazka umieszonego pod kartą z numerem

Aby sprawdzić jaki obrazek ukryliśmy pod kartą z numerem dnia, musimy przygotować automatycznie odsłaniające się okienka w zależności od daty. W tym celu należy napisać wyrażenie języka DAX tworzące nową kolumnę:

Otwieranie_okienka = IF(Kalendarz[Data].[Date]<=TODAY(),1,0)

Następnie, aby nasze okienko zmieniało się z koloru np. niebieskiego na transparenty należy napisać kolejne wyrażenie tworzące kolumnę:

Kolor_okienka = SWITCH(Kalendarz[Otwieranie okienka],1,”#FFFFFF00″,”Blue”)

Teraz wystarczy z dostępnych wizualizacji wybrać kartę i umieścić w niej numer dnia. Dodatkowo, w filtrze tej wizualizacji, należy dodać datę i zaznaczyć jaki dzień reprezentuje dane okienko.

Kolejno w zakładce format wybieramy tło i formatujemy kolor tła za pomocą przygotowanej wcześniej formuły. W zakładce styl formatowania wybieramy wartość pola, na którym będzie opierać się formatowanie.

Tak przygotowaną kartę nakładamy na dowolny obraz.

W ten sposób należy utworzyć 24 okienka. Każde okienko w filtrze wizualizacji musi mieć zaznaczony dzień.

Dodatkowo, aby po zmianie koloru okienka nie pozostawała etykietka z numerem dnia, należy napisać kolejne wyrażenie:

Kolor_czcionki = SWITCH(Kalendarz[Otwieranie_okienka],0,”White”,”#FFFFFF00″)

W zakładce format wybieramy etykietę danych i zamiast wybierać kolor z palety, należy kliknąć opcję (fx). Kliknąć styl formatowania i wybrać wartość pola. Następnie wybrać przygotowaną formułę zmieniającą kolor czcionki.

Tak przygotowane pola, po nałożeniu na tekst czy obiekt, w odpowiednim dniu odsłonią zawartość kryjącą się pod obiektem.

Codzienne wyświetlanie innego tekstu w tej samej karcie

Kolejnym zastosowaniem funkcji logicznych jest stworzenia karty, w której bez ingerencji użytkownika, codziennie wyświetlałby się inny tekst. Takie założenie wymaga napisania wyrażenia, które stworzy nową kolumnę:

Zmiana­_tekstu = IF(Kalendarz[Data] = TODAY(),1,0)

Wybieramy wizualizację karta i umieszczamy w niej dane z kolumny [treść pytania] lub [treść odpowiedzi]. Następnie do filtra tej wizualizacji przeciągamy utworzone wyrażenie. Dodatkowo należy określić warunek dla tego filtra, ograniczający listę pytań do tych, które spełniają warunek Zmiana tekstu.

W tak przygotowanej karcie codziennie pokaże się nowy tekst odpowiadający w tabeli źródłowej danej dacie.

DAX- funkcje

Jak można zauważyć funkcje logiczne języka DAX przy odrobinie kreatywności pozwalają na nieszablonowe użycie narzędzia Power BI. IF i SWITCH to naprawdę wszechstronne i elastyczne funkcje, które w połączeniu z innymi funkcjami języka DAX, mogą tworzyć bardziej skomplikowane formuły, w efekcie czego zwiększa się możliwość ich wykorzystania.

Marika Madera,
Tableau Consultant

webinarium tableau Pobierz trial Tableau Desktop >
Pobierz trial Tableau Prep >
Wydarzenia
> Webinarium Tableau
> Tableau MBA Digital Edition

Produkty Tableau
> Tableau Desktop
> Tableau Server
> Tableau Online
> Tableau Prep

Szkolenia Tableau
Usługi
> Warsztaty Tableau na Twoich danych – Proof of Concept
> Przygotowanie danych – ETL
> Audyt przedwdrożeniowy
> Asysta eksploatacyjna Tableau

Rozszerzenia Tableau
> Gotowe wizualizacje danych – Tableau Starting Pack
> Dodatki do Tableau
Pobierz Tableau
> Tableau Desktop - Trial
> Tableau Server - Trial
> Tableau Prep - Trial
> Tableau Reader

Tableau
> Co to jest Tableau?
> Jak dobrze wdrożyć Tableau?
> Interaktywny kokpit menedżerski
> Cennik Tableau
Kontakt

kontakt@newdatalabs.com
kontakt@newdatalabs.com


601797783
781 648 194


Adres
Adres do korespondencji:
al. T. Boy’a – Żeleńskiego 28/20,
51-160 Wrocław
kontakt ndls
pobierz trial tableau
Linkedin Newdatalabs
twitter Newdatalabs
Facebook Newdatalabs
Youtube Newdatalabs
instagram Newdatalabs
Ułatwiamy pracę z danymi

Copyright © 2022