Dimensionality — funkcja wykresu
Funkcja Dimensionality() zwraca liczbę wymiarów bieżącego wiersza. W przypadku tabel przestawnych funkcja zwraca łączną liczbę kolumn wymiaru zawierających dane nieagregowane, czyli niezawierających sum częściowych ani zwiniętych agregacji.
Składnia:
Dimensionality ( )
Typ zwracanych danych: liczba całkowita
Ograniczenia:
Ta funkcja jest dostępna tylko w przypadku wykresów. Dla wszystkich typów wykresów — oprócz tabeli przestawnej — funkcja ta zwróci liczbę wymiarów we wszystkich wierszach oprócz sumy, która będzie wynosić 0.
Sortowanie według wartości Y w wykresach albo sortowanie według kolumn wyrażeń w tabelach jest niedozwolone, gdy w dowolnym z wyrażeń wykresu stosowana jest ta funkcja wykresu. W takiej sytuacji te opcje sortowania są automatycznie wyłączone. Kiedy używasz tej funkcji wykresu w wizualizacji albo tabeli, sortowanie wizualizacji zostanie przywrócone do sortowania danych wejściowych tej funkcji.
Przykład: wyrażenie wykresu używające funkcji Dimensionality
Przegląd
Użyj funkcji Dimensionality w tabeli przestawnej jako wyrażenia wykresu, w którym chcesz zastosować różne formatowania komórek w zależności od liczby wymiarów w wierszu zawierającym dane niezagregowane. W tym przykładzie zastosowano kolor tła do komórek tabeli, które pasują do danego warunku.
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.
Skrypt ładowania zawiera:
-
Zestaw danych załadowany do tabeli o nazwie Example.
-
Następujące pola w tabeli:
-
Country
-
Product
-
Sales
-
Budget
-
Skrypt ładowania
Example:
Load * inline [
Country, Product, Sales, Budget
Sweden, AA, 100000, 50000
Germany, AA, 125000, 175000
Canada, AA, 105000, 98000
Norway, AA, 74850, 68500
Ireland, AA, 49000, 48000
Sweden, BB, 98000, 99000
Germany, BB, 115000, 175000
Norway,BB,71850,68500
Ireland,BB,31000,48000
] (delimiter is ',');
Aby uzyskać więcej informacji o ładowaniu wbudowanym, zobacz temat Używanie wbudowanych ładowań do ładowania danych.
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę przestawną i dodaj te pola jako wymiary wierszy:
-
Country
-
Product
Utwórz następujące miary:
-
=Sum(Sales) w celu obliczenia sumy wartości Sales.
-
=Sum(Budget) w celu obliczenia sumy wartości Budget.
-
=Dimensionality() w celu zwrócenia liczby wymiarów dla bieżącego wiersza.
W panelu Właściwości miary Sum(Sales) wprowadź następujące wyrażenie jako Wyrażenie koloru tła:
=If(Dimensionality()=1 and Sum(Sales)<Sum(Budget),RGB(255,156,156),
If(Dimensionality()=2 and Sum(Sales)<Sum(Budget),RGB(178,29,29)
)
)
Dane wyjściowe wyrażenia koloru tła stosują jasnoczerwone lub ciemnoczerwone tło do komórek tabeli, gdy spełnione są odpowiednie warunki.
Country | |||
---|---|---|---|
Product | |||
Sum(Sales) | Sum(Budget) | Dimensionality() | |
(+) Canada | 105000 | 98000 | 1 |
(-) Germany | 240000 | 350000 | 1 |
AA | 125000 | 175000 | 2 |
BB | 115000 | 175000 | 2 |
(+) Ireland | 80000 | 96000 | 1 |
(+) Norway | 146700 | 137000 | 1 |
(+) Sweden | 198000 | 149000 | 1 |
Po wyświetleniu pierwszego wymiaru wiersza (Country) funkcja Dimensionality zwraca wartość 1. Po rozwinięciu wymiaru wiersza, takiego jak Germany, w celu wyświetlenia drugiego wymiaru wiersza (Product), funkcja zwraca 2.
Wyrażenia koloru tła dla miary Sum(Sales) wykonują obliczenia w oparciu o wymiarowość i sprzedaż, aby wyróżnić różne wyniki. Gdy wymiarowość wynosi 1, każdy kraj (Country), gdzie Sum(Sales) jest mniejsze niż Sum(Budget), pojawia się w kolorze jasnoczerwonym — w tym przykładzie Germany i Ireland. Gdy wymiarowość wynosi 2, każdy kraj (Product), gdzie Sum(Sales) jest mniejsze niż Sum(Budget), pojawia się w kolorze ciemnoczerwonym — w tym przykładzie AA i BB dla Germany.
Przykład — zastosowanie Dimensionality
Przegląd
W tym przykładzie użyto funkcji Dimensionality do zastosowania szczegółów w raporcie i podświetlenia komórek tabeli dla niektórych wymiarów.
Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.
Skrypt ładowania zawiera:
-
Zestaw danych załadowany do tabeli o nazwie Example.
-
Następujące pola w tabeli:
-
Region
-
SalesProduct
-
Year
-
SalesValue
-
Quantity
-
Product
-
Skrypt ładowania
Example:
LOAD * INLINE [
Region, SalesProduct, Year, SalesValue, Quantity, Profit
North, Laptop, 2023, 20000, 15, 4000
North, Mobile, 2023, 15000, 25, 3000
North, Laptop, 2022, 18000, 20, 3500
North, Mobile, 2022, 14000, 22, 2800
South, Laptop, 2023, 22000, 18, 4500
South, Mobile, 2023, 16000, 27, 3200
South, Laptop, 2022, 19000, 19, 3800
South, Mobile, 2022, 15000, 23, 3100
East, Laptop, 2023, 21000, 16, 4200
East, Mobile, 2023, 15500, 24, 3100
East, Laptop, 2022, 18500, 18, 3900
East, Mobile, 2022, 14500, 21, 2950
West, Laptop, 2023, 23000, 17, 4700
West, Mobile, 2023, 16500, 26, 3300
West, Laptop, 2022, 19500, 20, 4000
West, Mobile, 2022, 15500, 24, 3100
North, Tablet, 2023, 12000, 10, 2500
South, Tablet, 2023, 13000, 12, 2700
East, Tablet, 2023, 12500, 11, 2600
West, Tablet, 2023, 13500, 13, 2800
];
Wyniki
Załaduj dane i otwórz arkusz. Utwórz nową tabelę przestawną i dodaj te pola jako wymiary wierszy:
-
Year
-
SalesProduct
-
Region
Utwórz następujące miary:
-
=If(Dimensionality()=1, 'Total', 'Detail') w celu wskazania, czy jest to wiersz Total czy Detail.
-
=If(Dimensionality()=3, 'Region-Level', If(Dimensionality()=2, 'Product-Level', 'Summary-Level')) w celu wskazania wyświetlanego poziomu wymiaru.
-
=Sum(SalesValue) w celu obliczenia sumy sprzedaży.
W panelu Właściwości miary Sum(SalesValue) wprowadź następujące wyrażenie jako Wyrażenie koloru tła:
=If(Dimensionality()=1, LightGray())
Dane wyjściowe wyrażenia koloru tła stosują jasnoszare tło do komórek tabeli, gdy wymiarowość wynosi 1.
Year | |||
---|---|---|---|
SalesProduct | |||
Region | |||
If(Dimensionality()=1, 'Total', 'Detail') | If(Dimensionality()=3, 'Region-Level', If(Dimensionality()=2, 'Product-Level', 'Summary-Level')) | Sum(SalesValue) | |
(+) 2022 | Total | Summary-Level | 134000 |
(-) 2023 | Total | Summary-Level | 200000 |
(-)Laptop | Detail | Product-Level | 86000 |
East | Detail | Region-Level | 21000 |
North | Detail | Region-Level | 20000 |
South | Detail | Region-Level | 22000 |
West | Detail | Region-Level | 23000 |
(-) Mobile | Detail | Product-Level | 63000 |
(-) Tablet | Detail | Product-Level | 51000 |
Można zobaczyć, jak funkcja Dimensionality może być wykorzystana do zwiększenia szczegółowości raportu i wyróżnienia wszystkich wymiarów wierszy najwyższego poziomu.