javascript - 使用 Data Cube 进行向下钻取的交互式 BIRT 饼图

标签 javascript charts report birt

我有 3 个级别类别,其中划分了许多项目。

就像第 1 级一样,我有一个饼图。如果我单击该图表的任何切片,它应该转到该特定切片类别的第 2 级,然后再次转到第三级。 一切都应该发生在同一个饼图上。

例如..我有一个饼图,显示了两类动物的数量..即哺乳动物和鸟类。如果我点击哺乳动物,它应该更改饼图以显示草食性和肉食性类别中的哺乳动物数量。

在我的真实场景中,我创建了一个数据集,其中包含通过查询的所有数据。 然后我制作了一个具有 3 个维度和一个测量计数的数据立方体。

我在饼图上显示了第一个级别,但我无法移动到下一个级别。我是 BIRT 新手。 我不需要使用指向其他报告的超链接从一份报告跳转到另一份报告。一切都发生在同一个报告中。

我正在使用: 启动 BIRT Designer Professional 版本:4.4.0

最佳答案

这可以通过使用钻取超链接来实现。钻取不一定跳转到另一个报表:绝对可以钻取到同一个报表,并设置控制维度级别的报表参数。

一个直接的解决方案是基于同一个数据立方体设计三个图表(每个级别一个),并利用报表参数仅保留当前级别的图表。这允许优化每个级别的图 TableView :更改标题、图例、图表类型、字体大小等。

有几种方法可以从报告参数禁用/启用图表,最有效的方法是通过 beforeFactory 中的脚本将其删除,如下所示。访问this topic

var design=reportContext.getDesignHandle();

if (params["level"].value!="1"){
    design.findElement("chartLevel1").drop();
}
if (params["level"].value!="2"){
    design.findElement("chartLevel2").drop();
}
if (params["level"].value!="3"){
    design.findElement("chartLevel3").drop();
}

关于javascript - 使用 Data Cube 进行向下钻取的交互式 BIRT 饼图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29534457/

相关文章:

jquery - Google 可视化 - 自定义工具提示点

ios - 轴线和轴标签之间的空间 ios MPChart

php - Google Adwords API 报告实用程序 - PHP - XML 无效?

maven - 倾城报告 : no data generated for JUnit framework

javascript - 推送旧文本,同时淡入新文本

javascript - 无法使用 recaptcha 更改 css 类值

php - 基于 Javascript 的绘图/图表工具包与基于 PHP 的工具包

java - Jasper 报告中缺少图像

javascript - JavaScript 中的函数式编程是否可以具有任何类型的多态性?

javascript - 要选中/取消选中按键盘上的输入或空格键的复选框?