Samouczek: tworzenie własnych miar w programie Power BI Desktop

Za pomocą miar można utworzyć niektóre z najbardziej zaawansowanych rozwiązań do analizy danych w programie Power BI Desktop. Miary ułatwiają wykonywanie obliczeń na danych podczas interakcji z raportami. Ten samouczek przeprowadzi Cię przez zrozumienie miar i tworzenie własnych podstawowych miar w programie Power BI Desktop.

Wymagania wstępne

  • Ten samouczek jest przeznaczony dla użytkowników usługi Power BI zaznajomionych już z używaniem programu Power BI Desktop do tworzenia bardziej zaawansowanych modeli. Musisz już zapoznać się z używaniem funkcji Pobierz dane i Edytor Power Query do importowania danych, pracy z wieloma powiązanymi tabelami i dodawania pól do kanwy raportu. Jeśli dopiero zaczynasz korzystać z programu Power BI Desktop, zapoznaj się z wprowadzeniem do programu Power BI Desktop.

  • W tym samouczku jest używany plik Contoso Sales Sample for Power BI Desktop , który zawiera dane sprzedaży online fikcyjnej firmy Contoso. Ponieważ te dane są importowane z bazy danych, nie można nawiązać połączenia ze źródłem danych ani wyświetlić ich w Edytor Power Query. Pobierz i wyodrębnij plik na komputerze.

Miary automatyczne

Gdy program Power BI Desktop tworzy miarę, jest ona najczęściej tworzona automatycznie. Aby zobaczyć, jak program Power BI Desktop tworzy miarę, wykonaj następujące kroki:

  1. W programie Power BI Desktop wybierz pozycję Plik>Otwórz, przejdź do pliku Contoso Sales Sample for Power BI Desktop.pbix, a następnie wybierz pozycję Otwórz.

  2. W okienku Pola rozwiń tabelę Sales. Następnie zaznacz pole wyboru obok pola SalesAmount lub przeciągnij pozycję SalesAmount na kanwę raportu.

    Zostanie wyświetlona nowa wizualizacja wykresu kolumnowego przedstawiająca sumę wszystkich wartości w kolumnie SalesAmount tabeli Sales.

    Zrzut ekranu przedstawiający wykres kolumnowy SalesAmount.

    Dowolne pole (kolumna) w okienku Pola z ikoną Ikona Sigma sigma jest numeryczne, a jego wartości można agregować. Zamiast wyświetlać tabelę z wieloma wartościami (2000 000 wierszy dla tabeli SalesAmount), program Power BI Desktop automatycznie tworzy i oblicza miarę w celu agregowania danych, jeśli wykryje typ danych liczbowych. Suma jest domyślną agregacją dla liczbowego typu danych, ale można łatwo zastosować różne agregacje, takie jak średnia lub liczba. Zrozumienie agregacji ma podstawowe znaczenie dla zrozumienia miar, ponieważ każda miara wykonuje pewien typ agregacji.

Aby zmienić agregację wykresu, wykonaj następujące kroki:

  1. Wybierz wizualizację SalesAmount na kanwie raportu.

  2. W obszarze Wartości okienka Wizualizacje wybierz strzałkę w dół po prawej stronie pozycji SalesAmount.

  3. Z wyświetlonego menu wybierz pozycję Średnia.

    Wizualizacja zmienia się na średnią wszystkich wartości sprzedaży w polu SalesAmount .

    Zrzut ekranu przedstawiający wykres średniej SalesAmount.

W zależności od żądanego wyniku można zmienić typ agregacji. Jednak nie wszystkie typy agregacji mają zastosowanie do każdego liczbowego typu danych. Na przykład dla pola SalesAmount przydatne są wartości Sum i Average, a wartości Minimum i Maximum również. Jednak funkcja Count nie ma sensu dla pola SalesAmount , ponieważ chociaż jego wartości są liczbowe, są one naprawdę walutą.

Wartości obliczane na podstawie miar zmieniają się w odpowiedzi na interakcje z raportem. Jeśli na przykład przeciągniesz pole RegionCountryName z tabeli Geography na istniejący wykres SalesAmount , zmieni się, aby pokazać średnie kwoty sprzedaży dla każdego kraju/regionu.

Zrzut ekranu przedstawiający wykres SaleAmount według kraju/regionu.

Gdy wynik miary zmieni się z powodu interakcji z raportem, wpływ na kontekst miary. Za każdym razem, gdy wchodzisz w interakcje z wizualizacjami raportu, zmieniasz kontekst, w którym miara oblicza i wyświetla wyniki.

Tworzenie i używanie własnych miar

W większości przypadków program Power BI Desktop automatycznie oblicza i zwraca wartości zgodnie z wybranymi typami pól i agregacji. Jednak w niektórych przypadkach możesz utworzyć własne miary, aby wykonywać bardziej złożone, unikatowe obliczenia. Program Power BI Desktop umożliwia tworzenie własnych miar przy użyciu języka formuł Języka DAX (Data Analysis Expressions).

Formuły języka DAX używają wielu tych samych funkcji, operatorów i składni co formuły programu Excel. Jednak funkcje języka DAX są przeznaczone do pracy z danymi relacyjnymi i wykonywania bardziej dynamicznych obliczeń podczas interakcji z raportami. Istnieje ponad 200 funkcji języka DAX, które wykonują wszystko, od prostych agregacji, takich jak suma i średnia, po bardziej złożone funkcje statystyczne i filtrowania. Istnieje wiele zasobów, które pomogą Ci dowiedzieć się więcej na temat języka DAX. Po ukończeniu tego samouczka zobacz Podstawy języka DAX w programie Power BI Desktop.

Podczas tworzenia własnej miary jest ona nazywana miarą modelu i jest dodawana do listy Pola dla wybranej tabeli. Niektóre zalety miar modelu to możliwość nazywania ich dowolną nazwą, co sprawia, że są bardziej rozpoznawalne. Można ich używać jako argumentów w innych wyrażeniach języka DAX i szybko wykonywać złożone obliczenia.

Szybkie miary

Wiele typowych obliczeń jest dostępnych jako szybkie miary, które zapisują formuły języka DAX na podstawie danych wejściowych w oknie. Te szybkie, zaawansowane obliczenia doskonale nadają się również do nauki języka DAX lub rozmieszczania własnych dostosowanych miar.

Utwórz szybką miarę przy użyciu jednej z następujących metod:

  • W tabeli w okienku Pola kliknij prawym przyciskiem myszy lub wybierz pozycję Więcej opcji (...), a następnie wybierz pozycję Nowa szybka miara z listy.

  • W obszarze Obliczenia na karcie Narzędzia główne na wstążce programu Power BI Desktop wybierz pozycję Nowa szybka miara.

Aby uzyskać więcej informacji na temat tworzenia i używania szybkich miar, zobacz Używanie szybkich miar.

Tworzenie miary

Załóżmy, że chcesz przeanalizować sprzedaż netto, odejmując rabaty i zwroty z łącznej kwoty sprzedaży. Dla kontekstu, który istnieje w wizualizacji, potrzebujesz miary, która odejmuje sumę DiscountAmount i ReturnAmount z sumy SalesAmount. Na liście Pola nie ma pola Net Sales, ale masz bloki konstrukcyjne do utworzenia własnej miary w celu obliczenia sprzedaży netto.

Aby utworzyć miarę, wykonaj następujące kroki:

  1. W okienku Pola kliknij prawym przyciskiem myszy tabelę Sales (Sprzedaż) lub umieść kursor nad tabelą i wybierz pozycję Więcej opcji (...).

  2. Z wyświetlonego menu wybierz pozycję Nowa miara.

    Ta akcja umożliwia zapisanie nowej miary w tabeli Sales(Sprzedaż ), w której można łatwo znaleźć.

    Zrzut ekranu przedstawiający nową miarę z listy w menu.

    Możesz również utworzyć nową miarę, wybierając pozycję Nowa miara w grupie Obliczenia na karcie Narzędzia główne wstążki programu Power BI Desktop.

    Zrzut ekranu przedstawiający nową miarę ze wstążki.

    Napiwek

    Podczas tworzenia miary na wstążce można ją utworzyć w dowolnej tabeli, ale łatwiej jest znaleźć, jeśli utworzysz ją w miejscu, w którym planujesz go używać. W takim przypadku najpierw wybierz tabelę Sales (Sprzedaż ), aby ją uaktywnić, a następnie wybierz pozycję Nowa miara.

    Pasek formuły jest wyświetlany u góry kanwy raportu, gdzie można zmienić nazwę miary i wprowadzić formułę języka DAX.

    Zrzut ekranu przedstawiający pasek formuły.

  3. Domyślnie każda nowa miara nosi nazwę Miara. Jeśli nie zmienisz nazwy, nowe miary mają nazwę Miara 2, Miara 3 itd. Ponieważ chcemy, aby ta miara była bardziej rozpoznawalna, wyróżnij pozycję Miara na pasku formuły, a następnie zmień ją na Net Sales.

  4. Rozpocznij wprowadzanie formuły. Po znaku równości zacznij wpisywać sumę. Podczas wpisywania zostanie wyświetlona lista sugestii listy rozwijanej zawierająca wszystkie funkcje języka DAX, zaczynając od wpisanych liter. W razie potrzeby przewiń w dół, aby wybrać pozycję SUM z listy, a następnie naciśnij klawisz Enter.

    Zrzut ekranu przedstawiający sumę wybraną z listy na pasku formuły.

    Zostanie wyświetlony nawias otwierający wraz z listą rozwijaną sugestii dostępnych kolumn, które można przekazać do funkcji SUM.

    Zrzut ekranu przedstawiający wybieranie kolumn dla formuły SUM.

  5. Wyrażenia zawsze pojawiają się między nawiasami otwierającymi i zamykającymi. W tym przykładzie wyrażenie zawiera jeden argument umożliwiający przekazanie do funkcji SUM: kolumny SalesAmount . Zacznij wpisywać wartość SalesAmount , dopóki sales(SalesAmount) jest jedyną wartością pozostawioną na liście.

    Nazwa kolumny poprzedzona nazwą tabeli jest nazywana w pełni kwalifikowaną nazwą kolumny. W pełni kwalifikowane nazwy kolumn ułatwiają odczytywanie formuł.

    Zrzut ekranu przedstawiający wybieranie pozycji SalesAmount dla formuły SUM.

  6. Wybierz pozycję Sales[SalesAmount] z listy, a następnie wprowadź nawias zamykający.

    Napiwek

    Błędy składniowe są najczęściej spowodowane brakiem lub błędnie zastąpionym nawiasem zamykającym.

  7. Odejmij pozostałe dwie kolumny wewnątrz formuły:

    a. Po nawiasie zamykającym dla pierwszego wyrażenia wpisz spację, operator minus (-), a następnie inną spację.

    b. Wprowadź inną funkcję SUM i zacznij wpisywać wartość DiscountAmount , dopóki nie będzie można wybrać kolumny Sales[DiscountAmount] jako argumentu. Dodaj nawias zamykający.

    c. Wpisz spację, operator minus, spację, inną funkcję SUM z argumentem Sales[ReturnAmount], a następnie nawias zamykający.

    Zrzut ekranu przedstawiający pełną formułę.

  8. Naciśnij klawisz Enter lub wybierz pozycję Zatwierdź (ikona znacznika wyboru) na pasku formuły, aby ukończyć i zweryfikować formułę.

    Zweryfikowana miara Net Sales jest teraz gotowa do użycia w tabeli Sales w okienku Pola .

    Zrzut ekranu przedstawiający miarę Net Sales na liście pól tabeli Sales.

  9. Jeśli zabraknie miejsca na wprowadzenie formuły lub potrzeba jej w osobnych wierszach, wybierz strzałkę w dół po prawej stronie paska formuły, aby zapewnić więcej miejsca.

    Strzałka w dół zamienia się w strzałkę w górę i pojawia się duże pole.

    Zrzut ekranu przedstawiający strzałkę formuły w górę.

  10. Oddzielaj części formuły, naciskając klawisz Alt + Enter dla oddzielnych wierszy lub naciskając klawisz Tab, aby dodać odstępy między tabulatorami.

    Zrzut ekranu przedstawiający rozwiniętą formułę.

Używanie miary w raporcie

Dodaj nową miarę Net Sales do kanwy raportu i oblicz sprzedaż netto dla innych pól dodanych do raportu.

Aby przyjrzeć się sprzedaży netto według kraju/regionu:

  1. Wybierz miarę Net Sales z tabeli Sales lub przeciągnij ją na kanwę raportu.

  2. Wybierz pole RegionCountryName z tabeli Geography lub przeciągnij je na wykres Net Sales.

    Zrzut ekranu przedstawiający sprzedaż netto według kraju/regionu.

  3. Aby zobaczyć różnicę między sprzedażą netto a łączną sprzedażą według kraju/regionu, wybierz pole SalesAmount lub przeciągnij je na wykres.

    Zrzut ekranu przedstawiający pozycję Sales Amount (Kwota sprzedaży) i Net Sales by Country/Region (Sprzedaż netto według kraju/regionu).

    Wykres używa teraz dwóch miar: SalesAmount, które usługa Power BI zsumowała automatycznie, oraz miarę Net Sales , która została utworzona ręcznie. Każda miara została obliczona w kontekście innego pola RegionCountryName.

Używanie miary z fragmentatorem

Dodaj fragmentator, aby dalej filtrować kwoty sprzedaży netto i sprzedaży według roku kalendarzowego:

  1. Wybierz pusty obszar obok wykresu. W okienku Wizualizacje wybierz wizualizację Tabela .

    Ta akcja powoduje utworzenie pustej wizualizacji tabeli na kanwie raportu.

    Zrzut ekranu przedstawiający wizualizację Nowa pusta tabela.

  2. Przeciągnij pole Year z tabeli Calendar na nową pustą wizualizację tabeli.

    Ponieważ Year jest polem liczbowym, program Power BI Desktop podsumowuje swoje wartości. Ta suma nie działa dobrze jako agregacja; Zajmiemy się tym w następnym kroku.

    Zrzut ekranu przedstawiający agregację roku.

  3. W polu Wartości w okienku Wizualizacje wybierz strzałkę w dół obok pozycji Rok, a następnie wybierz pozycję Nie sumuj z listy. Tabela zawiera teraz poszczególne lata.

    Zrzut ekranu przedstawiający menu z wybraną pozycją Nie sumuj.

  4. Wybierz ikonę Fragmentator w okienku Wizualizacje , aby przekonwertować tabelę na fragmentator. Jeśli wizualizacja wyświetla suwak zamiast listy, wybierz pozycję Lista ze strzałki w dół w suwaku.

    Zrzut ekranu przedstawiający ikonę fragmentatora w okienku Wizualizacje.

  5. Wybierz dowolną wartość we fragmentatorze Year , aby odpowiednio filtrować wykres Net Sales and Sales Amount by RegionCountryName . Miary Net Sales i SalesAmount ponownie obliczają i wyświetlają wyniki w kontekście wybranego pola Year .

    Zrzut ekranu przedstawiający wykres Net Sales and SalesAmount wycinek według roku.

Używanie miary w innej mierze

Załóżmy, że chcesz dowiedzieć się, które produkty mają najwyższą kwotę sprzedaży netto na sprzedaną jednostkę. Potrzebna będzie miara dzieląca sprzedaż netto przez ilość sprzedanych jednostek. Utwórz nową miarę dzielącą wynik miary Net Sales na sumę Sales[SalesQuantity].

  1. W okienku Pola utwórz nową miarę o nazwie Net Sales per Unit w tabeli Sales .

  2. Na pasku formuły rozpocznij wpisywanie ciągu Net Sales. Lista sugestii zawiera informacje, które można dodać. Wybierz pozycję [Net Sales].

    Zrzut ekranu przedstawiający używanie usługi Net Sales na pasku formuły.

  3. Możesz również odwoływać się do miar, wpisując nawias otwierający ([). Lista sugestii zawiera tylko miary, które mają zostać dodane do formuły.

    Zrzut ekranu przedstawiający otwarte nawiasy pokazujące miary do dodania do formuły.

  4. Wprowadź spację, operator dzielenia (/), inną spację, funkcję SUM, a następnie wpisz Quantity. Lista sugestii zawiera wszystkie kolumny z wartością Quantity w nazwie. Wybierz pozycję Sales[SalesQuantity], wpisz nawias zamykający, a następnie naciśnij klawisz ENTER lub wybierz pozycję Zatwierdź (ikona znacznika wyboru), aby zweryfikować formułę.

    Wynikowa formuła powinna wyglądać następująco:

    Net Sales per Unit = [Net Sales] / SUM(Sales[SalesQuantity])

  5. Wybierz miarę Net Sales per Unit (Sprzedaż netto na jednostkę ) z tabeli Sales (Sprzedaż ) lub przeciągnij ją na pusty obszar na kanwie raportu.

    Wykres przedstawia kwotę sprzedaży netto na jednostkę we wszystkich sprzedanych produktach. Ten wykres nie jest informacyjny; Zajmiemy się nim w następnym kroku.

    Zrzut ekranu przedstawiający kwotę sprzedaży netto na jednostkę dla wszystkich sprzedanych produktów.

  6. Aby uzyskać inny wygląd, zmień typ wizualizacji wykresu na Mapa drzewa.

    Zrzut ekranu przedstawiający wykres zmieniony na mapę drzewa.

  7. Wybierz pole Kategoria produktu lub przeciągnij je na mapę drzewa lub pole Grupa w okienku Wizualizacje. Teraz masz dobre informacje!

    Zrzut ekranu przedstawiający mapę drzewa według kategorii produktów.

  8. Spróbuj usunąć pole ProductCategory i przeciągnąć pole ProductName na wykres.

    Zrzut ekranu przedstawiający mapę drzewa według nazwy produktu.

    Ok, teraz po prostu gramy, ale musisz przyznać, że to fajne! Eksperymentuj z innymi sposobami filtrowania i formatowania wizualizacji.

Zdobyta wiedzę

Miary umożliwiają uzyskiwanie szczegółowych informacji z danych. Wiesz już, jak tworzyć miary przy użyciu paska formuły, nazywać je dowolnie, co ma największe znaczenie, oraz znajdować i wybierać odpowiednie elementy formuły przy użyciu list sugestii języka DAX. Wprowadzono również kontekst, w którym wyniki obliczeń w miarach zmieniają się zgodnie z innymi polami lub innymi wyrażeniami w formule.

  • Aby dowiedzieć się więcej na temat szybkich miar programu Power BI Desktop, które zapewniają wiele typowych obliczeń miar, zobacz Używanie szybkich miar do typowych obliczeń.

  • Jeśli chcesz dokładniej zapoznać się z formułami języka DAX i utworzyć bardziej zaawansowane miary, zobacz Learn DAX basics in Power BI Desktop (Poznaj podstawy języka DAX w programie Power BI Desktop). Ten artykuł koncentruje się na podstawowych pojęciach w języku DAX, takich jak składnia, funkcje i dokładniejsze zrozumienie kontekstu.

  • Pamiętaj, aby dodać odwołanie do języka DAX (Data Analysis Expressions) do ulubionych. W tym miejscu znajdziesz szczegółowe informacje na temat składni, operatorów języka DAX i ponad 200 funkcji języka DAX.

Inne interesujące artykuły: