comparison flys-artifacts/src/main/java/de/intevation/flys/exports/DischargeCurveGenerator.java @ 454:2c0c22e0935d

Added names for discharge curves (at gauges). flys-artifacts/trunk@1950 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 19 May 2011 09:45:29 +0000
parents 0385bcc4229a
children e006da5679d2
comparison
equal deleted inserted replaced
453:5aef92ea71a6 454:2c0c22e0935d
1 package de.intevation.flys.exports; 1 package de.intevation.flys.exports;
2 2
3 import java.util.ArrayList; 3 import java.util.ArrayList;
4 import java.util.Date;
4 import java.util.List; 5 import java.util.List;
5 import java.util.Map; 6 import java.util.Map;
6 7
7 import org.apache.log4j.Logger; 8 import org.apache.log4j.Logger;
8 9
12 import org.jfree.chart.plot.XYPlot; 13 import org.jfree.chart.plot.XYPlot;
13 import org.jfree.data.xy.DefaultXYDataset; 14 import org.jfree.data.xy.DefaultXYDataset;
14 15
15 import de.intevation.artifacts.Artifact; 16 import de.intevation.artifacts.Artifact;
16 17
18 import de.intevation.flys.model.DischargeTable;
17 import de.intevation.flys.model.Gauge; 19 import de.intevation.flys.model.Gauge;
18 import de.intevation.flys.model.River; 20 import de.intevation.flys.model.River;
21 import de.intevation.flys.model.TimeInterval;
19 22
20 import de.intevation.flys.artifacts.FLYSArtifact; 23 import de.intevation.flys.artifacts.FLYSArtifact;
21 import de.intevation.flys.artifacts.model.DischargeTables; 24 import de.intevation.flys.artifacts.model.DischargeTables;
22 import de.intevation.flys.artifacts.model.GaugesFactory; 25 import de.intevation.flys.artifacts.model.GaugesFactory;
23 26
128 } 131 }
129 132
130 DischargeTables dt = new DischargeTables(river.getName(), gaugeNames); 133 DischargeTables dt = new DischargeTables(river.getName(), gaugeNames);
131 Map<String, double[][]> gaugeValues = dt.getValues(100d); 134 Map<String, double[][]> gaugeValues = dt.getValues(100d);
132 135
133 for (String gauge: gaugeNames) { 136 for (Gauge gauge: filtered) {
134 double[][] values = gaugeValues.get(gauge); 137 String gaugeName = gauge.getName();
135 dataset.addSeries(gauge, values); 138
139 double[][] values = gaugeValues.get(gaugeName);
140 dataset.addSeries(getSeriesName(gauge), values);
136 } 141 }
142 }
143
144
145 protected String getSeriesName(Gauge gauge) {
146 List<DischargeTable> dts = gauge.getDischargeTables();
147
148 for (DischargeTable dt: dts) {
149 if (dt.getKind() == 0) {
150 TimeInterval ti = dt.getTimeInterval();
151
152 Date start = ti.getStartTime();
153 Date end = ti.getStopTime();
154
155 String name = gauge.getName();
156
157 if (end == null) {
158 Object[] args = new Object[] { name, start };
159 return msg(
160 "chart.discharge.curve.curve.valid.from",
161 "",
162 args);
163 }
164 else {
165 Object[] args = new Object[] { name, start, end };
166 return msg(
167 "chart.discharge.curve.curve.valid.range",
168 "",
169 args);
170 }
171 }
172 }
173
174 return gauge.getName();
137 } 175 }
138 } 176 }
139 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 177 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org