不推荐使用JFreeChartRenderer类型,我应该使用哪种方法?

时间:2016-08-30 10:15:51

标签: jasper-reports jfreechart deprecated

我是JFreeChart的新手,我试图在jasperreport中使用它,我看过如何在jasperreport中插入JFreechart对象的question,其中一个响应有效,但不推荐使用的方法:

JFreeChartRenderer jrc = new JFreeChartRenderer( SpiderChart.createChart2());

使用什么新方法?

1 个答案:

答案 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