Jasper reports 使用报表中的变量创建饼图

Jasper reports 使用报表中的变量创建饼图,jasper-reports,ireport,pie-chart,Jasper Reports,Ireport,Pie Chart,我想用报表jrxml文件中的计算变量创建一个饼图。我成功地用 系列表达:“1.预算销售 类别表达式:新整数(1) 值表达式:$V{ptd\u预算\销售} 就像这样,我为四个小节添加了四个系列 我需要用同样的方法来创建饼图字符。但在饼图中只有一个节值 key expression value expression label expression 只能给一个 我通常从Java数据源传递pie-char值,但现在我只需要从计算变量中获取值。我在Google上搜索了类似的问题,但没有找到答案。请任何

我想用报表jrxml文件中的计算变量创建一个饼图。我成功地用

系列表达:“1.预算销售
类别表达式:新整数(1)
值表达式
$V{ptd\u预算\销售}

就像这样,我为四个小节添加了四个系列

我需要用同样的方法来创建饼图字符。但在饼图中只有一个节值

key expression
value expression
label expression
只能给一个

我通常从Java数据源传递pie-char值,但现在我只需要从计算变量中获取值。我在Google上搜索了类似的问题,但没有找到答案。请任何人帮助我或任何链接


我也读过一些可以从csv文件创建的地方。在这种情况下,如何从报告中创建csv文件?我知道从Java创建,但不从报告中创建…任何建议都非常感谢。

没有必要创建csv。请发布您的报告,这将使具体答案更容易。 您是否使用不同的变量在图表中显示? 变量在什么时候准备好了?
也许在报告中使用组或设置增量类型可能是一个线索…

@Thomas Zimmer感谢您的回复

我使用值表达式的if条件完成了此操作

(java.lang.Integer.parseInt($F{Value}.toString())==1?新的java.lang.Double($V{ptd_labour_othPur_cost}.doubleValue()): (java.lang.Integer.parseInt($F{Value}.toString())==2?$V{ctc\u labour\u othPur\u cost}: (java.lang.Integer.parseInt($F{Value}.toString())==3?新的java.lang.Double($V{ptd_ico_subco_cost}.doubleValue()): (java.lang.Integer.parseInt($F{Value}.toString())==4?$V{ctc\u ico\u subco\u cost}: (java.lang.Integer.parseInt($F{Value}.toString())==5?$V{predict\u profice}:
new java.lang.Double(6))

您是在计算报表中的变量?还是在java中从报表外部?我在计算报表中的变量。