Версия: 1.5
Набор данных
Данные, добавленные в область Values визуала, автоматически связываются с внутренним набором данных dataset в представлении Vega или Vega-Lite. Он обновляется при добавлении и удалении столбцов и мер, а также при изменении числа строк — например, из-за изменения контекста фильтрации.
Связь данных визуала со спецификацией
Хотя данные передаются из Power BI, спецификация должна содержать ссылку на именованный набор dataset. Иначе при разборе спецификации значения не попадут в кодирование. Всегда проверяйте наличие следующего фрагмента:
{
...
"data": { "name": "dataset" }
...
}
{
...
"data": [
{ "name": "dataset" }
]
...
}
Все встроенные шаблоны визуала используют этот подход. Если сомневаетесь, создайте спецификацию из шаблона [empty] и используйте её как основу.
Детализация и контекст строки
Внутри визуал обрабатывает набор данных примерно так же, как стандартная таблица Power BI: число строк соответствует комбинациям уникальных значений всех добавленных столбцов и мер.
Допустим, в визуал добавлены следующие данные:

Если вы привыкли работать с JSON, при разборе спецификации в неё подставляется представление, похожее на следующее:
{
"dataset": [
{ "City": "Auckland", "Mean Temperature": 14.62 },
{ "City": "Christchurch", "Mean Temperature": 9.49 },
{ "City": "Dunedin", "Mean Temperature": 6.83 },
{ "City": "Hamilton", "Mean Temperature": 13.27 },
{ "City": "Lower Hutt", "Mean Temperature": 12.12 },
{ "City": "North Shore", "Mean Temperature": 14.62 },
{ "City": "Tauranga", "Mean Temperature": 12.99 },
{ "City": "Waitakere", "Mean Temperature": 14.62 },
{ "City": "Wellington", "Mean Temperature": 12.12 }
]
}
Дополнительные поля
При просмотре набора данных на панели Data или данных примитива через подсказку вы увидите дополнительные поля, которых нет в модели данных.
Deneb создаёт эти дополнительные поля при обработке данных, чтобы помогать в интерактивных сценариях, особенно при перекрёстной фильтрации и перекрёстном выделении. Значение этих полей и способы работы с ними описаны в соответствующих разделах документации.
Обращение к столбцам и мерам
Когда в спецификации нужно обратиться к столбцу или мере, используйте отображаемое имя из области Values, а не имя из модели данных.
Если вы переименовали или удалили столбец либо меру, обновите спецификацию соответствующим образом.
Специальные символы в именах столбцов и мер
При именовании столбцов и мер в модели данных можно использовать самые разные символы. Однако у Vega, Vega-Lite и JSON есть особенности привязки полей и выражений для некоторых символов, прежде всего ., [, ], \ и ".
При передаче в набор данных визуала Deneb заменяет каждое вхождение этих символов подчёркиванием (_). Благодаря этому вам как автору не нужно помнить правила их экранирования из документации, указанной выше.
Для примера возьмём такую меру:

При обращении к ней через канал field нужно заменить . подчёркиванием:
{
...
"x": {
"field": "$ Sales_Current",
"type": "quantitative"
}
...
}
Если вы передаёте столбцы или меры со специальными символами и не хотите такой замены, переименуйте их в области Values, чтобы специальные символы не попадали в набор данных.
Изменение сопоставления полей спецификации
Меры и столбцы, привязанные к каналам кодирования или выражениям, могут использоваться во многих местах спецификации. Если вы хотите заменить поле или переименовали его в области данных Values, искать и заменять все ссылки вручную может быть неудобно.
Чтобы упростить эту задачу, нажмите команду Edit Specification Field Mapping или Ctrl + Alt + F. Откроется диалог со списком всех полей набора данных, обнаруженных в кодированиях и выражениях:

Как и при создании спецификации из шаблона, вы можете добавлять и удалять поля в области Values. Они станут доступны для выбора и замены.
Диалог также появляется автоматически, если удалить из Values поле, которое сейчас используется в кодировании или выражении. Так можно легко подставить другой столбец или меру из модели данных.
Добавление других наборов данных
В спецификации Vega можно добавить другие объекты data в массив. Спецификации Vega-Lite также могут содержать наборы данных отдельных слоёв или несколько именованных наборов. Но учитывайте следующее:
- Сертифицированные визуалы AppSource не могут получать данные или ресурсы из внешних источников.
- Поэтому загрузка внешних файлов в визуале не разрешена.
- Можно попробовать это в автономной версии, но загрузка данных с удалённых адресов подчиняется ограничениям CORS из-за правил безопасности всех пользовательских визуалов Power BI. Подробнее об этих ограничениях рассказано в справочнике HTML Content, в разделе «Custom visuals — high-level».
- Поэтому рекомендуется считать именованный источник
"dataset"единственным источником всех данных модели для вашей спецификации.
Особенности преобразования данных
Vega и Vega-Lite поддерживают преобразования, которые изменяют исходные данные. Это может быть необходимо для определённых типов визуализации, но меняет контекст строки. Некоторые возможности после этого могут стать недоступны, особенно связанные с интерактивностью. Подробности приведены в разделе «Интерактивность».
Ограничение числа строк
Чтобы в большинстве случаев сохранялась приемлемая производительность, по умолчанию визуал ограничивает число строк значением 10 000.
При желании это ограничение можно снять. Однако число возвращённых строк будет зависеть от доступных ресурсов и полностью определяться Power BI.
Чтобы снять ограничение, найдите меню Data Limit Options на панели форматирования Power BI:

При включении Override Row Limit Deneb просит Power BI загрузить в набор дополнительные строки порциями по 10 000, например:

При использовании этой настройки нужно учитывать несколько особенностей. Поэтому Show Data Loading Notes включена по умолчанию: она кратко объясняет авторам и разработчикам ограничения этой возможности.
Хотя эти сведения видны на снимке экрана, основные моменты перечислены и здесь:
- Power BI повторно загружает данные визуала, когда:
- Вы добавляете или удаляете столбцы или меры из области Values.
- Меняется контекст фильтрации визуала.
- Изменяются значения на панели свойств.
- Большинство операций в редакторе визуала не вызывает повторную загрузку. Если не выполнять перечисленные действия, Power BI должен лишь изредка прерывать работу для обновления набора данных.
- Однако редактирование спецификации с большим количеством данных обычно отрицательно влияет на производительность. О возможных проблемах и способах их уменьшить см. «Производительность».
Когда вы освоитесь с этой возможностью или будете готовы опубликовать отчёт и не захотите показывать заметки пользователям, выключите Show Data Loading Notes, чтобы упростить экран:
