Непосредственное замещение JFreeChartRender
является DrawChartRendererImpl
new DrawChartRendererImpl(org.jfree.chart.JFreeChart chart, ChartHyperlinkProvider chartHyperlinkProvider);
другой метод заключается в создании java.awt.image.BufferedImage
, что вы можете retrive от JFreeChart
BufferedImage bufferedImage = chart.createBufferedImage(width, height);
Заметим, однако, что обычно вы включили его непосредственно в jrxml (из IDE вы можете перетащить компонент диаграммы в отчет)
Exa mple из круговой диаграммы 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 (и аналогично в иРепорт) см Creating Charts and Datasets with Jaspersoft Studio
Я не хочу использовать Jasper диаграмму, я Я использую JFreeChart, но он работает, но метод, используемый для рендеринга диаграмм, устарел, и я не знаю нового синтаксиса – aName
@hasanehas также JasperReports использует JFreeChart в стандартных типах диаграмм, то есть способ использования JFreeChart в отчетах о яшме Теперь. –
Альтернативой является то, что вы передаете его как, например, BufferedImage в параметрах или источнике данных. –