Поделиться через


Получение возможностей визуального элемента

Возможности визуального элемента — это роли данных, которые могут принимать тип визуализации. Например, на этом изображении показаны визуальные возможности кластеризованной гистограммы на панели визуализации .

снимок экрана, на котором показана кластеризованная гистограмма, выбранная в области визуализации режима редактирования и ее возможности.

Получите возможности визуального элемента, чтобы определить, какие данные отображаются на уровне отчета или визуального элемента. Оба API, используемых для получения возможностей, возвращают IVisualCapabilities.

export interface IVisualCapabilities {
  dataRoles?: IVisualDataRole[];
}

dataRoles определить роли, которые ожидает визуальный элемент, и как эти роли должны быть заполнены. Эти данные необходимы для использования следующих API привязки визуальных данных. Каждый из этих API ожидает целевой dataRolename в качестве входного параметра.

dataRoles представлены интерфейсом IVisualDataRole:

interface IVisualDataRole {
    name: string;
    kind: VisualDataRoleKind;
    kindPreference?: VisualDataRoleKindPreference;
    displayName?: string;
    description?: string;
}
  • имя — уникальный идентификатор для VisualDataRole.
  • тип . Указывает тип роли для визуальных данных.
  • kindPreference . Указывает визуальный параметр на какой роли следует использовать.
  • displayName — отображаемое имя роли.
  • описание — текст подсказки.

Вы можете получить визуальные метаданные как для встроенных, так и для пользовательских визуальных элементов, установленных в отчете.

Как получить визуальные возможности на уровне отчета

Используйте API getVisualCapabilities для поиска визуальных данных, отображаемых на уровне отчета.

getVisualCapabilities(visualType: string): Promise<models.IVisualCapabilities>

Пример

Ниже приведен пример кода для поиска возможностей в линейчатой диаграмме визуального элемента на уровне отчета.

let capabilities = await report.getVisualCapabilities('barChart');

Как получить визуальные возможности на визуальном уровне

Используйте API getCapabilities, чтобы определить, какие данные отображаются на визуальном уровне.

getCapabilities(): Promise<models.IVisualCapabilities>

Пример

Ниже приведен пример кода для поиска возможностей визуального элемента на визуальном уровне.

let capabilities = await visual.getCapabilities();

Например, получение возможностей для clusteredColumnChart возвращает следующее:

{
    "dataRoles": [
        {
            "name": "Category",
            "displayName": "Axis",
            "description": "Fields to place on the horizontal or vertical axis",
            "kind": 0
        },
        {
            "name": "Series",
            "displayName": "Legend",
            "description": "The categorical field to show for color",
            "kind": 0
        },
        {
            "name": "Y",
            "displayName": "Values",
            "description": "The numeric amounts to plot",
            "kind": 1
        },
        {
            "name": "Rows",
            "displayName": "Small multiples",
            "description": "Split your visual into multiple, smaller visuals based on your selected fields",
            "kind": 0
        },
        {
            "name": "Tooltips",
            "displayName": "Tooltips",
            "description": "Add additional data fields that people can see in the tooltip when they hover on part of this visualization.",
            "kind": 1
        }
    ]
}