我是JFreeChart的新手,我试图在jasperreport中使用它,我看过如何在jasperreport中插入JFreechart对象的question,其中一个响应有效,但不推荐使用的方法:
JFreeChartRenderer jrc = new JFreeChartRenderer( SpiderChart.createChart2());
使用什么新方法?
答案 0 :(得分:2)
JFreeChartRender
的直接替换是DrawChartRendererImpl
new DrawChartRendererImpl(org.jfree.chart.JFreeChart chart, ChartHyperlinkProvider chartHyperlinkProvider);
另一种方法是提供java.awt.image.BufferedImage
,您可以从JFreechart
BufferedImage bufferedImage = chart.createBufferedImage(width, height);
请注意,通常你直接将它包含在你的jrxml中(从IDE你可以将图表组件拖到报告中)
饼图 jrxml
的示例<pieChart>
<chart>
<reportElement x="89" y="100" width="200" height="100" uuid="b96a1b13-4bf0-4983-8168-97b80abdae04"/>
<chartTitle/>
<chartSubtitle/>
<chartLegend/>
</chart>
<pieDataset>
<keyExpression><![CDATA[$F{fieldKey}]]></keyExpression>
<valueExpression><![CDATA[$F{fieldValue}]]></valueExpression>
</pieDataset>
<piePlot>
<plot/>
<itemLabel/>
</piePlot>
</pieChart>
这些是您可以使用的Standard chart types, 如果您使用的是JasperSoft Studio(在iReport中类似),请参阅Creating Charts and Datasets with Jaspersoft Studio