Функция "Показать элементы без данных" в Power BI
ПРИМЕНИМО К: служба Power BI Power BI Desktop
Power BI позволяет визуализировать данные из различных источников. При создании визуального элемента Power BI отображает только соответствующие данные, чтобы правильно управлять представлением и отображением данных. Power BI определяет релевантные данные на основе конфигурации визуального элемента и базовой модели данных. В этой статье описывается, как Power BI ведет себя при определении релевантных данных. Мы также включили примеры, показывающие, как делаются определения.
Определение соответствующих данных
Чтобы проиллюстрировать, как Power BI определяет соответствующие данные для отображения, в качестве простого примера мы рассмотрим таблицу. Используя модель, представленную в разделе Пример модели данных в конце этой статьи, рассмотрите таблицу, созданную со следующими параметрами:
1. Группы из одной таблицы:Product[Color] - Product[Size]
Product[Color] | Product[Size] |
---|---|
Синий | Большой |
Синий | Средний |
Синий | Малый |
Красный | Большой |
В этом примере Power BI отображает сочетания групп [Color-Size], представленные в таблице [Product].
Теперь давайте рассмотрим другое сочетание:
2. Группы из разных, но непосредственно связанных таблиц и меры:ProductStyle[Finish] - Product[Color] - Sum(Sales[Quantity])
ProductStyle[Finish] | Product[Color] | Sum(Sales[Quantity]) |
---|---|---|
Gloss | Синий | 10 |
Matte | Синий | 15 |
В этом примере Power BI отображает только существующие сочетания. Сочетания, которые не существуют в модели, например (None+Blue) или (Matte+Red), отображаться не будут. Условие, которое определяет, существующие сочетания, является непустым значением для Sum(Sales[Quantity]).
Теперь давайте рассмотрим другой пример:
3. Группы из разных, но связанных таблиц без меры:ProductStyle[Finish] - Product[Color]
ProductStyle[Finish] | Product[Color] |
---|---|
Gloss | Синий |
Gloss | Красный |
Matte | Синий |
Так как нет явной меры и две таблицы связаны напрямую, Power BI пытается внедрить меру, чтобы ограничить результирующее сочетание. В этом случае Power BI внедряет меру CALCULATE(COUNTROWS('Product'))
, которая не должна быть пустой, так как product является общим для обеих таблиц.
В этом случае Power BI отображает сочетания, которые имеют записи в таблице Product, исключая сочетания (None+Blue) и (Matte+Red) .
4. Группы из разных и несвязанных таблиц
Пример модели не включает такое сочетание, но при наличии групп из разных и несвязанных таблиц Power BI не сможет связать два столбца. Результат представлял бы перекрестное соединение всех значений каждого столбца. В этой ситуации Power BI выдает ошибку типа неограниченного соединения , так как такие перекрестные соединения являются дорогостоящими для вычислений в базе данных и не предоставляют пользователю много информации.
Отображение элементов без данных
В предыдущем разделе описывается, как Power BI определяет, какие данные являются релевантными для отображения. Однако в некоторых случаях может потребоваться отобразить элементы без данных.
Функция Показать элементы без данных позволяет включать строки и столбцы с данными, которые не содержат данные меры (значения с пустой мерой).
Чтобы включить функцию Показывать элементы без данных , выполните следующие действия.
- Выберите визуальный элемент.
- В разделе Значения щелкните поле правой кнопкой мыши и выберите Показать элементы без данных в открывшемся меню, как показано на следующем изображении:
Функция Показать элементы без данных не работает в следующих случаях:
- В визуальный элемент мера не включена, и сгруппированные столбцы принадлежат к одной таблице.
- Группы не связаны. Power BI не выполняет запросы для визуальных элементов, которые включают несвязанные группы.
- Мера не связана ни с одной из групп. В этом случае мера не будет пустой только для некоторых сочетаний групп.
- Существует определяемый пользователем фильтр мер, исключающий пустые меры. Например: SalesAmount > 0
Внимание!
Включение параметра отображения элементов без данных может негативно повлиять на производительность и привести к замедлению отрисовки визуальных элементов или истечению времени ожидания экспорта данных.
Использование функции "Показать элементы без данных"
Наиболее интересными вариантами использования отображения элементов без данных являются меры. Рассмотрим ситуацию, когда группы относятся к одной таблице или могут быть связаны с помощью пути в модели. Например, ProductStyle напрямую связан с Product и косвенно связан с Sales. ProductStyle и ProductCategory могут быть связаны с помощью таблицы Product .
Давайте рассмотрим несколько интересных случаев и сравним, когда отображение элементов без данных выключено, а затем включено.
1. Группирование столбцов из одной таблицы:Product[Color] - Product[Size] - Sum(Sales[Quantity])
Как она отображается при отключении функции Показать элементы без данных :
Product[Color] | Product[Size] | Sum(Sales[Quantity]) |
---|---|---|
Синий | Средний | 15 |
Синий | Малый | 10 |
Как она отображается, когда включена функция Показать элементы без данных :
Product[Color] | Product[Size] | Sum(Sales[Quantity]) |
---|---|---|
Синий | Большой | |
Синий | Средний | 15 |
Синий | Малый | 10 |
Красный | Большой |
Обратите внимание на то, как отображаются два новых сочетания с включенной функцией: синий — большой и красный — большой. Для обеих этих записей нет соответствующего элемента Quantity в таблице Sales. Тем не менее они отображаются в таблице Product.
2. Группирование столбцов из связанных таблиц:ProductStyle[Finish] - Product[Color] - Sum(Sales[Quantity])
Как она отображается при отключении функции Показать элементы без данных :
ProductStyle[Finish] | Product[Color] | Sum(Sales[Quantity]) |
---|---|---|
Gloss | Синий | 10 |
Matte | Синий | 15 |
Как она отображается, когда включена функция Показать элементы без данных :
ProductStyle[Finish] | Product[Color] | Sum(Sales[Quantity]) |
---|---|---|
Gloss | Синий | 10 |
Gloss | Красный | |
Matte | Синий | 15 |
None |
Обратите внимание, что пустое и глянцево-красное и пустое отображаются в виде сочетаний. Вот почему они появились:
- Power BI сначала рассматривает ProductStyle[Finish] и выбирает все отображаемые значения, что приводит к глянцам, матовым, нет.
- Используя каждое из этих значений, Power BI выбирает все соответствующие записи Product[Color] .
- Так как None не соответствует записям Product[Color] , отображается пустое значение.
Важно отметить, что механизм выбора значений для столбцов учитывает их порядок. Его можно представить как операцию Левое внешнее соединение между таблицами. При изменении порядка столбцов результаты также изменяются.
Теперь рассмотрим пример изменения порядка и его влияния на результаты. Этот пример совпадает со вторым элементом в этом разделе с измененным порядком.
Product[Color] — ProductStyle[Finish] — Sum(Sales[Quantity])
Вот как он отображается при отображении элементов без данных в:
Product[Color] | ProductStyle[Finish] | Sum(Sales[Quantity]) |
---|---|---|
Синий | Gloss | 10 |
Синий | Matte | 15 |
Красный | Gloss |
Обратите внимание на то, что в таблице не отображается ProductStyle[Finish]=None. В этом случае Power BI сначала выбирает все значения Color в таблице Product . Затем для каждого цвета Power BI выбирает соответствующие значения Finish , содержащие данные. Так как значение None не отображается в сочетаниях Color, оно не выбрано.
Поведение визуальных элементов в Power BI
Если функция Показать элементы без данных включена для одного поля в визуальном элементе, она автоматически включается для всех остальных полей в том же визуальном контейнере или иерархии. Визуальным контейнером или иерархией могут быть Ось, Условные обозначения, Категория, Строки или Столбцы.
Например, в визуальном элементе матрицы с четырьмя полями в контейнере Строки , если в одном поле включен параметр Показывать элементы без данных , то для всех элементов матрицы он включен. На приведенном ниже рисунке функция Показать элементы без данных включена для первого поля в контейнере Строки, то есть поля SupplierID (Код поставщика). В других полях в контейнере "Строки " она также включена автоматически.
В отличие от этого для поля Continent (Континент) в контейнере Столбцы функция Показать элементы без данных не включена автоматически.
Такое поведение визуального элемента часто наблюдается при преобразовании визуального элемента в другой тип, например при преобразовании матричного визуального элемента в визуальный элемент таблицы. При таких преобразованиях функция Показать элементы без данных автоматически включается для любого поля, перемещаемого в контейнер с полем, для которого эта функция уже включена. В предыдущем примере, если в Параметре SupplierID включена функция Показать элементы без данных , а визуальный элемент преобразуется в таблицу, поле "Континент " из контейнера "Столбцы " перемещается (вместе с полями в контейнере "Строки ") в единственный контейнер, используемый в визуальном элементе таблицы , контейнер "Значения ". В результате для всех полей в контейнере Значения включено отображение элементов без данных .
Экспорт данных
При использовании функции "Экспорт сводных данных " поведение функции Показать элементы без данных такое же, как если бы экспорт был преобразован в визуальный элемент таблицы. Таким образом, при экспорте визуального элемента, например матрицы диаграммы, экспортированные данные могут выглядеть иначе, чем отображаемый визуальный элемент. Это происходит потому, что преобразование в визуальный элемент таблицы в рамках процесса экспорта позволяет отображать элементы без данных для всех экспортируемых полей.
Пример модели данных
В этом разделе показан пример модели данных, используемый в этой статье.
Модель.
Данные:
Product[ProductId] | Product[ProductName] | Product[Color] | Product[Size] | Product[CategoryId] | Product[StyleId] |
---|---|---|---|---|---|
1 | Prod1 | Синий | Малый | 1 | 1 |
2 | Prod2 | Синий | Средний | 2 | 2 |
3 | Prod3 | Красный | Большой | 1 | 1 |
4 | Prod4 | Синий | Большой | 2 | 2 |
ProductCategory[CategoryId] | ProductCategory[CategoryName] |
---|---|
1 | Номер телефона |
2 | Камера |
3 | TV |
ProductStyle[StyleId] | ProductStyle[Finish] | ProductStyle[Polished] |
---|---|---|
1 | Gloss | Да |
2 | Matte | Нет |
3 | Нет | Нет |
Sales[SaleId] | Sales[ProductId] | Sales[Date] | Sales[Quantity] |
---|---|---|---|
1 | 1 | 1/1/2012 0:00 | 10 |
2 | 2 | 1/1/2013 0:00 | 15 |
Дальнейшие действия
В этой статье описано, как включить функцию Показать элементы без данных в Power BI. Рекомендуем также ознакомиться со следующими материалами: