Версия: 2.0
Прокрутка и выход за границы
По умолчанию Deneb старается вписать простые спецификации в контейнер визуала. Однако во многих случаях отображаемая диаграмма выходит за его границы. Это может произойти при явном задании высоты или ширины области отображения, использовании фасетов или повторяющихся представлений либо фиксированного размера шага шкалы.
На холсте отчёта
Рассмотрим пример с размером шага. Здесь на оси y слишком много значений, поэтому визуал выходит за границы по вертикали:

Настройка оформления полос прокрутки
Карточка Scrollbars в меню Rendered visual панели форматирования Power BI предоставляет несколько настроек:

- Scrollbar color — цвет полосы прокрутки.
- Scrollbar opacity (%) — непрозрачность полосы прокрутки.
- Scrollbar radius (px) — радиус скругления ползунка. Допустимые значения: от
0до8. - Scrollbar width (px) — ширина полосы прокрутки. Минимум —
8пикселей: меньшая ширина неудобна для взаимодействия с ползунком. Значение по умолчанию —10, максимум —16.
Все четыре настройки относятся к полосам, отображаемым поверх содержимого визуала. Место рядом с диаграммой под них не резервируется, поэтому у вписанного визуала не появляются дополнительные зазоры по краям.
В редакторе визуала
В области предварительного просмотра редактора спецификация отображается относительно маркера области отображения — пунктирной рамки. Так можно быстро оценить, насколько визуал выходит за границы, и при необходимости внести изменения:

При необходимости у области предварительного просмотра появляются собственные полосы прокрутки. Они используют те же настройки оформления, что заданы для холста отчёта. Эти настройки также применяются, когда масштаб увеличен и результат больше доступной области редактора. Поэтому оформление прокрутки в редакторе соответствует тому, что увидят пользователи.
Проверка и настройка прокрутки холста отчёта в редакторе
Чтобы увидеть, как будет работать прокрутка визуала на холсте отчёта, включите Show scrollbars on overflow в карточке Preview area меню свойств Advanced area:

Когда настройка включена, Deneb применяет полосы прокрутки к маркеру области отображения:

Эти полосы также используют настройки оформления из карточки Scrollbars, поэтому их можно проверить непосредственно в редакторе.
Отслеживание прокрутки с denebContainer
Deneb добавляет в представление Vega сигнал denebContainer. Он предоставляет сведения о контейнере визуала, доступные в выражениях:

Это объект с шестью свойствами:
height— высота контейнера визуала.width— ширина контейнера визуала.scrollHeight— полная высота содержимого контейнера с учётом прокрутки.scrollWidth— полная ширина содержимого контейнера с учётом прокрутки.scrollTop— текущая позиция вертикальной прокрутки.scrollLeft— текущая позиция горизонтальной прокрутки.
Если визуал выходит за границы области предварительного просмотра и прокрутка становится доступна, Deneb обновляет
scrollTopиscrollLeftпри прокрутке видимой области и повторно выполняет представление. Эти значения можно использовать в примитивах и выражениях, чтобы они обновлялись вместе с прокруткой.По умолчанию интервал ограничения частоты обработки событий прокрутки составляет 5 мс. Его можно изменить в свойстве Rendered visual > Container scroll events > Throttle time:

Минимум — 0 мс, максимум — 1000 мс. Настройка позволяет подобрать подходящую частоту обновления с учётом производительности.
Для разработки с этой возможностью в расширенном редакторе рекомендуется включить Show scrollbars on overflow. Иначе событие прокрутки не возникает.