Mercurial > dive4elements > river
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 : |