annotate flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java @ 3234:1aec30e75bcb

Very basic point labels in DeltaWt-diagrams. flys-artifacts/trunk@4865 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Tue, 03 Jul 2012 14:39:56 +0000
parents abc2db630815
children 1cad94fa0817
rev   line source
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.exports.fixings;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
3 import de.intevation.artifactdatabase.state.ArtifactAndFacet;
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
4
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
5 import de.intevation.artifacts.ArtifactNamespaceContext;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
6 import de.intevation.artifacts.CallContext;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
7
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
8 import de.intevation.artifacts.common.utils.XMLUtils;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
9
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
10 import de.intevation.flys.artifacts.FLYSArtifact;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
11
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3168
diff changeset
12 import de.intevation.flys.artifacts.model.DateRange;
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
13 import de.intevation.flys.artifacts.model.FacetTypes;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
14
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
15 import de.intevation.flys.artifacts.model.fixings.QWD;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
16
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
17 import de.intevation.flys.exports.TimeseriesChartGenerator;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
18
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
19 import de.intevation.flys.jfree.CollisionFreeXYTextAnnotation;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
20 import de.intevation.flys.jfree.FLYSAnnotation;
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
21 import de.intevation.flys.jfree.StyledTimeSeries;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
22
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
23 import de.intevation.flys.utils.FLYSUtils;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
24
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
25 import java.awt.BasicStroke;
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 import java.awt.Color;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
28 import java.io.OutputStream;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
29
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
30 import java.util.ArrayList;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
31 import java.util.HashMap;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
32 import java.util.List;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
33 import java.util.Map;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
34 import java.util.Set;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
35
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
36 import javax.xml.xpath.XPathConstants;
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38 import org.apache.log4j.Logger;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
40 import org.jfree.chart.JFreeChart;
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
41
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
42 import org.jfree.chart.annotations.XYTextAnnotation;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
43
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
44 import org.jfree.chart.plot.IntervalMarker;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
45 import org.jfree.chart.plot.ValueMarker;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
46
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 import org.jfree.chart.title.TextTitle;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49 import org.jfree.data.time.Day;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
50 import org.jfree.data.time.Month;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 import org.jfree.data.time.RegularTimePeriod;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
52 import org.jfree.data.time.TimeSeries;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
53 import org.jfree.data.time.TimeSeriesCollection;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
54
3139
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
55 import org.w3c.dom.Document;
5888c4685701 Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3134
diff changeset
56 import org.w3c.dom.Element;
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
57
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
58 /**
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
59 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a>
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
60 */
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
61 public class FixDeltaWtGenerator
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
62 extends TimeseriesChartGenerator
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
63 implements FacetTypes
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
64 {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
65 private static Logger logger =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
66 Logger.getLogger(FixDeltaWtGenerator.class);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68 public static final String XPATH_CHART_CURRENTKM =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
69 "/art:action/art:attributes/art:currentKm";
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
70
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
71 public static final String I18N_CHART_TITLE =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
72 "chart.fix.deltawt.title";
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
73
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
74 public static final String I18N_CHART_SUBTITLE =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
75 "chart.fix.deltawt.subtitle";
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
76
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
77 public static final String I18N_XAXIS_LABEL =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
78 "chart.fix.deltawt.xaxis.label";
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
79
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
80 public static final String I18N_YAXIS_LABEL =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
81 "chart.fix.deltawt.yaxis.label";
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
82
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
83 public static final String I18N_YAXIS_SECOND_LABEL =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
84 "chart.fix.deltawt.yaxis.second.label";
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
85
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
86
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
87 public static enum YAXIS {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
88 dW(0);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
89 protected int idx;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
90 private YAXIS(int c) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
91 idx = c;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
92 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
93 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
94
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
95
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
96 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
97 protected YAxisWalker getYAxisWalker() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
98 return new YAxisWalker() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
99 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
100 public int length() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
101 return YAXIS.values().length;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
102 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
103
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
104 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
105 public String getId(int idx) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
106 YAXIS[] yaxes = YAXIS.values();
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
107 return yaxes[idx].toString();
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
108 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
109 };
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
110 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
111
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
112
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
113 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
114 protected String getDefaultChartTitle() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
115 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
116 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
117
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
118
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
119 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
120 protected String getDefaultChartSubtitle() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
121 String[] args = new String[] {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
122 FLYSUtils.getReferenceGaugeName((FLYSArtifact) master)
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
123 };
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
124
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
125 return msg(I18N_CHART_SUBTITLE, "", args);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
126 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
127
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
128
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
129 /**
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
130 * Empty (suppress subtitle).
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
131 */
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
132 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
133 protected void addSubtitles(JFreeChart chart) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
134 String subtitle = getChartSubtitle();
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
135
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
136 if (subtitle != null && subtitle.length() > 0) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
137 chart.addSubtitle(new TextTitle(subtitle));
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
138 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
139 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
140
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
141
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
142 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
143 protected String getDefaultXAxisLabel() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
144 return msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
145 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
146
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
147 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
148 protected String getDefaultYAxisLabel(int pos) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
149 if (pos == 0) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
150 return msg(I18N_YAXIS_LABEL, I18N_YAXIS_LABEL);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
151 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
152 else if (pos == 1) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
153 return msg(I18N_YAXIS_SECOND_LABEL, I18N_YAXIS_SECOND_LABEL);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
154 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
155 else {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
156 return "NO TITLE FOR Y AXIS: " + pos;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
157 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
158 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
159
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
160
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
161 public void doOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
162 ArtifactAndFacet artifactFacet,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
163 Document theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
164 boolean visible
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
165 ) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
166 String name = artifactFacet.getFacetName();
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
167 logger.debug("FixDeltaWtGenerator.doOut: " + name);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
168 logger.debug("Theme description is: " + artifactFacet.getFacetDescription());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
169
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
170 if (name.contains(FIX_SECTOR_AVERAGE_DWT)) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
171 doSectorAverageOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
172 (FLYSArtifact) artifactFacet.getArtifact(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
173 artifactFacet.getData(context),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
174 artifactFacet.getFacetDescription(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
175 theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
176 visible);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
177 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
178 else if (name.equals(FIX_REFERENCE_EVENTS_DWT)) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
179 doReferenceEventsOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
180 (FLYSArtifact) artifactFacet.getArtifact(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
181 artifactFacet.getData(context),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
182 artifactFacet.getFacetDescription(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
183 theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
184 visible);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
185 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
186 else if (name.equals(FIX_ANALYSIS_EVENTS_DWT)) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
187 doAnalysisEventsOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
188 (FLYSArtifact) artifactFacet.getArtifact(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
189 artifactFacet.getData(context),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
190 artifactFacet.getFacetDescription(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
191 theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
192 visible);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
193 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
194 else if (name.equals(FIX_DEVIATION_DWT)) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
195 doDeviationOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
196 (FLYSArtifact) artifactFacet.getArtifact(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
197 artifactFacet.getData(context),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
198 artifactFacet.getFacetDescription(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
199 theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
200 visible);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
201 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
202 else if (name.equals(FIX_ANALYSIS_PERIODS_DWT)) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
203 doAnalysisPeriodsOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
204 (FLYSArtifact) artifactFacet.getArtifact(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
205 artifactFacet.getData(context),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
206 artifactFacet.getFacetDescription(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
207 theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
208 visible);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
209 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
210 else {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
211 logger.warn("doOut(): unknown facet name: " + name);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
212 return;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
213 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
214 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
215
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
216
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
217 protected void doSectorAverageOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
218 FLYSArtifact artifact,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
219 Object data,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
220 String desc,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
221 Document theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
222 boolean visible)
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
223 {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
224 logger.debug("doSectorAverageOut(): description = " + desc);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
225
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
226 QWD qwd = (QWD) data;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
227 TimeSeriesCollection tsc = new TimeSeriesCollection();
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
228 TimeSeries series = new StyledTimeSeries(desc, theme);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
229
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
230 if (qwd == null) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
231 return;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
232 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
233 RegularTimePeriod rtp = new Day(qwd.getDate());
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
234 double value = qwd.getDeltaW();
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
235 series.add(rtp, value);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
236 tsc.addSeries(series);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
237
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
238 addAxisDataset(tsc, 0, visible);
3168
e10323bf3cbc Look for the attribut "outline" in TimeseriesChartGenerator to render shape
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3139
diff changeset
239 addAttribute(desc, "outline");
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
240 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>();
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
241 annoIdxMap.put (0, new int[]{0,0});
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
242 doQWDTextAnnotations(annoIdxMap, tsc, new QWD[]{qwd}, theme, visible);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
243 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
244
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
245
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
246 protected void doAnalysisEventsOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
247 FLYSArtifact artifact,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
248 Object data,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
249 String desc,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
250 Document theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
251 boolean visible
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
252 ) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
253 logger.debug("doAnalysisEventsOut: desc = " + desc);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
254
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
255 QWD[] qwds = (QWD[]) data;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
256 TimeSeriesCollection tsc = new TimeSeriesCollection();
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
257
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
258 TimeSeries series = new StyledTimeSeries(desc, theme);
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
259 TimeSeries interpol = new StyledTimeSeries(desc + "interpol", theme);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
260
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
261 if (qwds == null) {
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
262 logger.debug("doAnalysisEventsOut: qwds == null");
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
263 return;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
264 }
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
265
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
266 if (qwds.length == 0) {
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
267 logger.debug("doAnalysisEventsOut: qwds.length == 0");
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
268 return;
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
269 }
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
270
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
271 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>();
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
272
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
273 for (int i = 0; i < qwds.length; i++) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
274 if (qwds[i] == null) {
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
275 logger.debug("doAnalysisEventsOut: qwds[" + i + "] == null");
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
276 continue;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
277 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
278 RegularTimePeriod rtp = new Day(qwds[i].getDate());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
279 double value = qwds[i].getDeltaW();
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
280 boolean interpolate = qwds[i].getInterpolated();
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
281 if (interpolate) {
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
282 interpol.add(rtp, value);
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
283 annoIdxMap.put(
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
284 i,
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
285 new int[]{1, i});
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
286 }
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
287 else {
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
288 series.add(rtp, value);
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
289 annoIdxMap.put(
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
290 i,
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
291 new int[]{0, i});
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
292 }
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
293 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
294 tsc.addSeries(series);
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
295 tsc.addSeries(interpol);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
296 addAxisDataset(tsc, 0, visible);
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
297 addAttribute(desc + "interpol", "interpolate");
3168
e10323bf3cbc Look for the attribut "outline" in TimeseriesChartGenerator to render shape
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3139
diff changeset
298 addAttribute(desc, "outline");
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
299
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
300 doQWDTextAnnotations(annoIdxMap, tsc, qwds, theme, visible);
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
301 }
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
302
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
303
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
304 /**
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
305 * @param annoIdxMap map of index in qwds to series/dataitem indices in tsc.
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
306 */
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
307 protected void doQWDTextAnnotations(Map<Integer, int[]> annoIdxMap,
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
308 TimeSeriesCollection tsc, QWD[] qwds, Document theme,
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
309 boolean visible) {
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
310 List<XYTextAnnotation> textAnnos = new ArrayList<XYTextAnnotation>();
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
311 Set<Map.Entry<Integer, int[]>> entries = annoIdxMap.entrySet();
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
312 for(Map.Entry<Integer, int[]> entry : entries) {
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
313 QWD qwd = qwds[entry.getKey()];
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
314 int[] idxs = entry.getValue();
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
315 double x = tsc.getXValue(idxs[0], idxs[1]);
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
316 XYTextAnnotation anno = new CollisionFreeXYTextAnnotation(
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
317 qwd.getQ() + " m\u00B3/s",
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
318 x,
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
319 qwd.getDeltaW());
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
320 textAnnos.add(anno);
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
321 logger.debug("annotation: " + x + "/" + qwd.getDeltaW());
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
322 }
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
323
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
324 FLYSAnnotation flysAnno = new FLYSAnnotation(null, null, null, theme);
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
325 flysAnno.setTextAnnotations(textAnnos);
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
326 addAnnotations(flysAnno, visible);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
327 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
328
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
329
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
330 protected void doReferenceEventsOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
331 FLYSArtifact artifact,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
332 Object data,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
333 String desc,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
334 Document theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
335 boolean visible
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
336 ) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
337 logger.debug("doReferenceEventsOut: desc = " + desc);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
338
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
339 QWD[] qwds = (QWD[]) data;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
340 TimeSeriesCollection tsc = new TimeSeriesCollection();
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
341
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
342 TimeSeries series = new StyledTimeSeries(desc, theme);
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
343 TimeSeries interpol = new StyledTimeSeries(desc + "interpol", theme);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
344
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
345 if (qwds == null) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
346 return;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
347 }
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
348
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
349 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>();
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
350
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
351 for (int i = 0; i < qwds.length; i++) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
352 if (qwds[i] == null) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
353 continue;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
354 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
355 RegularTimePeriod rtp = new Day(qwds[i].getDate());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
356 double value = qwds[i].getDeltaW();
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
357 boolean interpolate = qwds[i].getInterpolated();
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
358 if (interpolate) {
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
359 interpol.addOrUpdate(rtp, value);
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
360 annoIdxMap.put(
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
361 i,
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
362 new int[]{1, i});
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
363 }
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
364 else {
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
365 annoIdxMap.put(
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
366 i,
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
367 new int[]{0, i});
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
368 series.addOrUpdate(rtp, value);
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
369 }
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
370
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
371 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
372 tsc.addSeries(series);
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
373 tsc.addSeries(interpol);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
374
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
375 addAxisDataset(tsc, 0, visible);
3134
5a0aef74c316 Use different stylings for real and interpolated data points.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3131
diff changeset
376 addAttribute(desc + "interpol", "interpolate");
3168
e10323bf3cbc Look for the attribut "outline" in TimeseriesChartGenerator to render shape
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3139
diff changeset
377 addAttribute(desc, "outline");
3212
abc2db630815 Work in generalized annotations for chart generators
Christian Lins <christian.lins@intevation.de>
parents: 3210
diff changeset
378
3234
1aec30e75bcb Very basic point labels in DeltaWt-diagrams.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3212
diff changeset
379 doQWDTextAnnotations(annoIdxMap, tsc, qwds, theme, visible);
3131
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
380 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
381
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
382
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
383 protected void doDeviationOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
384 FLYSArtifact artifact,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
385 Object data,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
386 String desc,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
387 Document theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
388 boolean visible
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
389 ) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
390 logger.debug("doDeviationOut: desc = " + desc);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
391
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
392 if (data == null || !visible) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
393 logger.debug("no standard deviation");
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
394 return;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
395 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
396 double[] value = (double[]) data;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
397 IntervalMarker lower = new IntervalMarker((value[0] * -1), 0);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
398 lower.setAlpha(0.2f);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
399 lower.setPaint(Color.BLACK);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
400 IntervalMarker upper = new IntervalMarker(0, value[0]);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
401 upper.setAlpha(0.2f);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
402 upper.setPaint(Color.BLACK);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
403
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
404 valueMarker.add(lower);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
405 valueMarker.add(upper);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
406 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
407
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
408
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
409 protected void doAnalysisPeriodsOut(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
410 FLYSArtifact artifact,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
411 Object data,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
412 String desc,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
413 Document theme,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
414 boolean visible
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
415 ) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
416 logger.debug("doHistoricalDischargeDifferenceOut: desc = " + desc);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
417
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
418 DateRange[] ranges = (DateRange[]) data;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
419 if (ranges == null || !visible) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
420 return;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
421 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
422 for (int i = 0; i < ranges.length; i++) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
423 logger.debug("creating domain marker");
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
424 RegularTimePeriod start = new Month(ranges[i].getFrom());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
425 RegularTimePeriod end = new Month(ranges[i].getTo());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
426 IntervalMarker marker =
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
427 new IntervalMarker(start.getMiddleMillisecond(),
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
428 end.getMiddleMillisecond());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
429 marker.setAlpha(0.3f);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
430 if ((i % 2) == 0) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
431 marker.setPaint(Color.RED);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
432 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
433 else {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
434 marker.setPaint(Color.BLUE);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
435 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
436 domainMarker.add(marker);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
437 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
438 logger.debug("domainmarkers: " + domainMarker.size());
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
439 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
440
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
441
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
442 @Override
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
443 public void init(Document request, OutputStream out, CallContext context) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
444 super.init(request, out, context);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
445
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
446 logger.debug("currentKm = " + new Double(getCurrentKmFromRequest()));
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
447 context.putContextValue("currentKm", new Double(getCurrentKmFromRequest()));
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
448
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
449 ValueMarker marker = new ValueMarker(0);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
450 marker.setPaint(Color.black);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
451 marker.setStroke(new BasicStroke(2));
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
452 valueMarker.add(marker);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
453 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
454
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
455 public double getCurrentKmFromRequest() {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
456 Element km = (Element)XMLUtils.xpath(
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
457 request,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
458 XPATH_CHART_CURRENTKM,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
459 XPathConstants.NODE,
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
460 ArtifactNamespaceContext.INSTANCE);
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
461
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
462 if (km == null) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
463 return -1d;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
464 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
465
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
466 String uri = ArtifactNamespaceContext.NAMESPACE_URI;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
467
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
468 String currentKm = km.getAttributeNS(uri, "km");
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
469 try {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
470 double d = Double.valueOf(currentKm).doubleValue();
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
471 return d;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
472 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
473 catch(NumberFormatException nfe) {
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
474 return -1d;
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
475 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
476 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
477
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
478
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
479 }
bac0b2721451 FixA: Added delta W(t) chart in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
480 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org