ingo@647: package de.intevation.flys.exports; ingo@647: ingo@647: import java.awt.Color; ingo@647: ingo@647: import org.apache.log4j.Logger; ingo@647: ingo@647: import org.jfree.chart.ChartFactory; ingo@647: import org.jfree.chart.JFreeChart; ingo@647: import org.jfree.chart.plot.PlotOrientation; ingo@647: import org.jfree.chart.plot.XYPlot; ingo@647: ingo@647: /** ingo@647: * A ChartInfoGenerator that generates meta information for specific duration ingo@647: * curves. ingo@647: * ingo@647: * @author Ingo Weinzierl ingo@647: */ ingo@647: public class DurationCurveInfoGenerator ingo@647: extends ChartInfoGenerator ingo@647: { ingo@647: private static Logger logger = ingo@647: Logger.getLogger(DurationCurveInfoGenerator.class); ingo@647: ingo@647: ingo@647: public DurationCurveInfoGenerator() { ingo@647: super(new DurationCurveGenerator()); ingo@647: } ingo@647: ingo@647: ingo@647: protected int[] getSize() { ingo@647: DurationCurveGenerator gen = ingo@647: (DurationCurveGenerator) generator; ingo@647: ingo@647: return gen.getSize(); ingo@647: } ingo@647: ingo@647: ingo@647: /** ingo@647: * Creates a chart object. ingo@647: * ingo@647: * @return a chart object. ingo@647: */ ingo@647: protected JFreeChart generateChart() { ingo@647: logger.debug("DischargeCurveInfoGenerator.generateChart"); ingo@647: ingo@647: DurationCurveGenerator gen = ingo@647: (DurationCurveGenerator) generator; ingo@647: ingo@647: JFreeChart chart = ChartFactory.createXYLineChart( ingo@647: gen.getChartTitle(), ingo@647: gen.getXAxisLabel(), ingo@647: gen.getYAxisLabel(), ingo@647: null, ingo@647: PlotOrientation.VERTICAL, ingo@647: true, ingo@647: false, ingo@647: false); ingo@647: ingo@647: chart.setBackgroundPaint(Color.WHITE); ingo@647: chart.getPlot().setBackgroundPaint(Color.WHITE); ingo@647: ingo@647: XYPlot plot = (XYPlot) chart.getPlot(); ingo@647: ingo@647: gen.addDatasets(chart); ingo@647: gen.addSubtitles(chart); ingo@647: gen.adjustPlot(plot); ingo@647: gen.adjustAxes(plot); ingo@647: ingo@647: return chart; ingo@647: } ingo@647: } ingo@647: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :