diff flys-artifacts/src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java @ 2242:7e8e1d5384c0

Further refactoring of XYChartGenerator / ChartGenerator with the result, that timerange charts are now able to display lines. flys-artifacts/trunk@3890 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 03 Feb 2012 09:39:22 +0000
parents 23c7c51df772
children 6aeb71517136
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java	Fri Feb 03 09:35:46 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/TimeseriesChartGenerator.java	Fri Feb 03 09:39:22 2012 +0000
@@ -11,11 +11,11 @@
 
 import org.jfree.chart.ChartFactory;
 import org.jfree.chart.JFreeChart;
-import org.jfree.chart.axis.NumberAxis;
 import org.jfree.chart.plot.XYPlot;
 
 import org.jfree.data.Range;
 import org.jfree.data.time.TimeSeriesCollection;
+import org.jfree.data.general.Series;
 import org.jfree.data.xy.XYDataset;
 
 
@@ -60,11 +60,49 @@
 
 
         @Override
+        public XYDataset[] getDatasets() {
+            return (XYDataset[])
+                datasets.toArray(new XYDataset[datasets.size()]);
+        }
+
+
+        @Override
         public boolean isEmpty() {
             return datasets.isEmpty();
         }
 
 
+        @Override
+        public void setRange(Range range) {
+            this.range = range;
+        }
+
+
+        @Override
+        public Range getRange() {
+            return range;
+        }
+
+
+        @Override
+        public void setPlotAxisIndex(int plotAxisIndex) {
+            this.plotAxisIndex = plotAxisIndex;
+        }
+
+
+        @Override
+        public int getPlotAxisIndex() {
+            return plotAxisIndex;
+        }
+
+
+        @Override
+        public boolean isArea(XYDataset dataset) {
+            logger.warn("This AxisDataset doesn't support Areas yet!");
+            return false;
+        }
+
+
         protected void mergeRanges(TimeSeriesCollection dataset) {
             logger.debug("Range after merging: " + range);
 
@@ -84,6 +122,8 @@
 
     protected Map<Integer, Range> xRanges;
 
+    protected Map<Integer, Range> yRanges;
+
 
 
     /**
@@ -93,6 +133,7 @@
         super();
 
         xRanges = new HashMap<Integer, Range>();
+        yRanges = new HashMap<Integer, Range>();
     }
 
 
@@ -124,6 +165,24 @@
     }
 
 
+    @Override
+    protected Series getSeriesOf(XYDataset dataset, int idx) {
+        return ((TimeSeriesCollection) dataset).getSeries(idx);
+    }
+
+
+    @Override
+    protected void setXRange(int axis, Range range) {
+        xRanges.put(Integer.valueOf(axis), range);
+    }
+
+
+    @Override
+    protected void setYRange(int axis, Range range) {
+        yRanges.put(Integer.valueOf(axis), range);
+    }
+
+
     /**
      * This method creates new instances of TimeseriesAxisDataset.
      *
@@ -153,10 +212,5 @@
             xRanges.put(index, range);
         }
     }
-
-
-    protected void addDatasets(XYPlot plot) {
-        logger.warn("TODO: IMPLEMENT ME!");
-    }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org