繁体   English   中英

Jasper报表中饼图中的负值

[英]Negative values in Pie chart in Jasper Reports

我需要在jasper报告中的饼图中显示负值。我能够使用定制程序类来实现此目的。在createCustomizedDataset方法中,我检查值是否为负,然后在生成标签时附加“-”号

PiePlot piePlot = (PiePlot) chart.getPlot();
    PieDataset dataset = piePlot.getDataset(); // line 1
    PieDataset dataset1 = createCustomizedDataset(dataset,piePlot);
    piePlot.setDataset(dataset1);

    StandardPieSectionLabelGenerator labelGen = new StandardPieSectionLabelGenerator(
            "{1}") {

        @SuppressWarnings("rawtypes")
        @Override
        public String generateSectionLabel(PieDataset dataset, Comparable key) {
            String label = super.generateSectionLabel(dataset, key);

            if(dataSetKeys.contains(key.toString())){
                return "-"+label;
            }else{
                return label;
            }
        }

    };

输出如下:

在此处输入图片说明

问题IS:如果有多个负值条目,我将得到一个包含负值的不同类别。在第1行,这些负值的数据集键为“其他”。在这里,我有两个类别,其值为“ -2.02”还有一个带有“ -0.01”的字母 所以不是显示两个切片而是显示一个2.02 + 0.01 = 2.03切片。问题是定制方法中的数据集就是这样。

在此处输入图片说明

我已解决它,因为在聊天编辑向导中最小表达式设置为0。删除该值即可解决该问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM