0

我正在使用 jasper ireport 4.0.1 进行开发。我需要实现一个根据导入的2个参数显示的条形图,一个是使用过的,另一个是总值。我希望该条的左侧部分以红色表示,并且长度将根据已使​​用值在总数中的比例进行更改,并且已使用值需要显示在该条的该部分和条的其余部分绿色,总长度减去使用值。我怎么能意识到,任何帮助将不胜感激!

假设总值是 45

如果使用的值为 24,则条形图将显示如下

在此处输入图像描述

如果使用的值为 44,那么条形图将如下所示

在此处输入图像描述

问候,

4

1 回答 1

1

您可以通过定义 2 个参数来实现:

  • 最大值:最大值
  • ratio:应该在蓝色和绿色之间切换时的值。

然后添加一个包含 3 个系列的堆积条形图:

  • Series1:系列表达式:“RED”,类别表达式$F{<field>},值表达式$F{<value>}
  • Series2:系列表达式:“BLUE”,类别表达式$F{<field>},值表达式$F{<value>} < $P{proportion} ? $P{max} - $F{<value>} : 0
  • Series3:系列表达式:“GREEN”,类别表达式$F{<field>},值表达式$F{<value>} >= $P{proportion} ? $P{max} - $F{<value>} : 0

报告输出

于 2013-01-11T10:53:39.133 回答