comparison gnv-artifacts/src/main/java/de/intevation/gnv/utils/VectorDataProcessor.java @ 1081:846b2b70b2e0

Implemented histogram creation for vectorial timeseries. gnv-artifacts/trunk@1183 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 09 Jun 2010 09:51:05 +0000
parents 9bb1979aabbe
children f953c9a559d8
comparison
equal deleted inserted replaced
1080:01e26528bb39 1081:846b2b70b2e0
1 package de.intevation.gnv.utils; 1 package de.intevation.gnv.utils;
2
3 import de.intevation.artifacts.CallContext;
4
5 import de.intevation.gnv.chart.Chart;
6 import de.intevation.gnv.chart.ChartLabels;
7 import de.intevation.gnv.chart.DefaultHistogram;
2 8
3 import de.intevation.gnv.geobackend.base.DefaultResult; 9 import de.intevation.gnv.geobackend.base.DefaultResult;
4 import de.intevation.gnv.geobackend.base.DefaultResultDescriptor; 10 import de.intevation.gnv.geobackend.base.DefaultResultDescriptor;
5 import de.intevation.gnv.geobackend.base.Result; 11 import de.intevation.gnv.geobackend.base.Result;
6 import de.intevation.gnv.geobackend.base.ResultDescriptor; 12 import de.intevation.gnv.geobackend.base.ResultDescriptor;
7 13
14 import de.intevation.gnv.histogram.HistogramHelper;
15
16 import de.intevation.gnv.state.describedata.KeyValueDescibeData;
17
8 import java.util.ArrayList; 18 import java.util.ArrayList;
9 import java.util.Collection; 19 import java.util.Collection;
10 import java.util.HashMap; 20 import java.util.HashMap;
11 import java.util.Iterator; 21 import java.util.Iterator;
12 import java.util.List; 22 import java.util.List;
23 import java.util.Locale;
13 import java.util.Map; 24 import java.util.Map;
14 25
15 import org.apache.log4j.Logger; 26 import org.apache.log4j.Logger;
27
28 import org.jfree.chart.ChartTheme;
29
16 30
17 /** 31 /**
18 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> 32 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
19 */ 33 */
20 public final class VectorDataProcessor { 34 public final class VectorDataProcessor {
99 113
100 logger.debug("Outgoing ResultDescriptor has " + desc.getColumnCount() + 114 logger.debug("Outgoing ResultDescriptor has " + desc.getColumnCount() +
101 " columns"); 115 " columns");
102 return desc; 116 return desc;
103 } 117 }
118
119
120 public static Chart[] getHistograms(
121 String uuid,
122 CallContext callContext,
123 Collection<KeyValueDescibeData> results,
124 ChartTheme theme,
125 Map requestParameter
126 ) {
127 Locale locale = (Locale) requestParameter.get("locale");
128
129 Object[][] data = HistogramHelper.prepareVectorialHistogramData(results);
130 int size = data.length;
131
132 Chart[] histograms = new Chart[size];
133
134 for (int i = 0; i < size; i++) {
135 ChartLabels labels = HistogramHelper.createHistogramLabels(
136 uuid, callContext, locale, data[i]);
137
138 histograms[i] = new DefaultHistogram(
139 labels, data[i], theme, requestParameter);
140 }
141
142 return histograms;
143 }
104 } 144 }
105 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : 145 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org