我有 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/