Power BI 自定义视觉对象是否支持钻取?
如果是这样,您能否提供一个visual.ts
文件片段来说明如何使用它?我一直在搜索有关它的文档,但什么都没有出现 - 我开始认为它还不适用于开发人员,仅适用于 Power BI 提供的官方视觉效果。
Power BI 自定义视觉对象是否支持钻取?
如果是这样,您能否提供一个visual.ts
文件片段来说明如何使用它?我一直在搜索有关它的文档,但什么都没有出现 - 我开始认为它还不适用于开发人员,仅适用于 Power BI 提供的官方视觉效果。
似乎还不支持钻取。
微软在论坛发布问题后的回应:http: //community.powerbi.com/t5/Developer/Use-Drillthrough-in-Custom-Visual/mp/270240#M8199
好消息!从 API v2.2.0 开始
官方开发者博客在2018 年 11 月的帖子中提到了它。
要启用钻取,视觉对象只需要支持上下文菜单(在将上下文菜单添加到条形图中有详细说明)。一旦在发送 的任何内容上触发上下文菜单事件dataPoint.selectionId
,菜单将包含钻取选项。
如果您使用 D3,并将 SVG 存储this.svg
在代码中,则基本代码可能类似于:
this.svg.on('contextmenu', () => {
const mouseEvent: MouseEvent = d3.event as MouseEvent;
const eventTarget: EventTarget = mouseEvent.target;
let dataPoint = d3.select(eventTarget).datum();
this.selectionManager.showContextMenu(dataPoint? dataPoint.selectionId : {}, {
x: mouseEvent.clientX,
y: mouseEvent.clientY
});
mouseEvent.preventDefault();
});
(从自定义视觉官方文档复制 - 如上所述)
请注意 selection.id 如何在selectionManager.showContextMenu()
调用中传递 - 这就是启用钻取的原因。
免责声明:我是 Microsoft 员工,在 Power BI 开发团队之一工作。此答案基于我的个人知识和经验发布,未经 Microsoft 以任何方式认可或批准。