こんにちは !
JasperReportsで添付ファイルのようなレポートを作成する必要があります。
折れ線グラフで試してみました。結果:折れ線グラフでは、軸に2つの数値型フィールドが必要です。
時系列で試してみました。結果:時系列では、軸に1つの数値と1つの日付型フィールドが必要です。
日付を使用する必要があるため、日付を処理できるグラフタイプが必要です。
どうすればこれを解決できますか?私は少なくとも10時間Googleを試しました。今、私はとても必死です。
ありがとう !
こんにちは !
JasperReportsで添付ファイルのようなレポートを作成する必要があります。
折れ線グラフで試してみました。結果:折れ線グラフでは、軸に2つの数値型フィールドが必要です。
時系列で試してみました。結果:時系列では、軸に1つの数値と1つの日付型フィールドが必要です。
日付を使用する必要があるため、日付を処理できるグラフタイプが必要です。
どうすればこれを解決できますか?私は少なくとも10時間Googleを試しました。今、私はとても必死です。
ありがとう !
私は私の問題を解決したと思います。カスタマイザークラスを作成しました:
package com.test;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import net.sf.jasperreports.engine.JRChart;
import net.sf.jasperreports.engine.JRChartCustomizer;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.DateAxis;
import org.jfree.chart.axis.DateTickUnit;
import org.jfree.chart.plot.XYPlot;
public class TrendCustomizer implements JRChartCustomizer {
public void customize(JFreeChart chart, JRChart jasperChart) {
DateAxis xAxis = new DateAxis();
DateAxis yAxis = new DateAxis();
DateTickUnit unit = null;
unit = new DateTickUnit(DateTickUnit.MONTH, 6);
DateFormat chartFormatter = new SimpleDateFormat("yyyy.MM.dd");
xAxis.setDateFormatOverride(chartFormatter);
xAxis.setTickUnit(unit);
yAxis.setDateFormatOverride(chartFormatter);
yAxis.setTickUnit(unit);
((XYPlot)chart.getPlot()).setDomainAxis(xAxis);
((XYPlot)chart.getPlot()).setRangeAxis(yAxis);
}
}