配置数据字段

创建可视化效果时,视觉对象将根据分配的数据字段呈现。 本文介绍如何使用 Power BI 报表创作 API 与数据字段交互,并将其分配给数据角色。 若要确定视觉对象具有哪些数据角色,请使用 getCapabilities 方法。

添加数据字段

若要向视觉对象数据角色添加数据字段,请调用视觉对象的 addDataField 方法。

addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>

此方法具有以下变量:

  • dataRole - 应向其分配数据字段的数据角色的名称。 dataRole 参数等效于数据角色 name 属性。 若要检索可用的数据角色和名称,请使用 getCapabilities 方法。
  • dataField - 要添加到数据角色的数据字段。 数据字段是一个目标对象,可以是包含聚合、度量值、层次结构或具有聚合的列。 有关目标的详细信息,请参阅 使用目标选择要对执行哪些数据字段。
  • index (可选) - 应在其中添加数据字段的索引。 默认行为是最后添加字段。

例如:

const dataField = {
  $schema: "http://powerbi.com/product/schema#column",
  table: "Store",
  column: "Name"
};

await visual.addDataField('Category', dataField);

获取数据字段

若要获取数据角色中定义的数据字段的列表,请调用视觉对象的 getDataFields 方法。

getDataFields(dataRole: string): Promise<models.IBaseTarget>

此方法具有 dataRole 变量,该变量是从中检索数据字段的数据角色的名称。

例如:

let dataField = await visual.getDataFields('Category');

删除数据字段

若要删除应用于数据角色的数据字段,请调用视觉对象的 removeDataField 方法。

removeDataField(dataRole: string, index: number): Promise<models.IError>

此方法具有以下参数:

  • dataRole - 与数据字段关联的目标数据角色的名称。
  • index - 要删除的数据字段的索引。

例如:

await visual.removeDataField('Category', 2);

若要获取数据字段的索引,可以在 getDataFields 结果数组中使用目标索引。