Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixLongitudinalSectionGenerator.java @ 4339:ff83ec9b4c0b
FixWQCurveGenerator: For extreme_wq_curves, add marker to indicate where extrapolation starts.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Wed, 31 Oct 2012 14:09:36 +0100 |
parents | fc6c6f6039df |
children | 512a3af69e18 |
rev | line source |
---|---|
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.exports.fixings; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 import java.awt.BasicStroke; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 import java.awt.Color; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 import org.apache.log4j.Logger; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 import org.jfree.chart.plot.Marker; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 import org.jfree.chart.plot.ValueMarker; |
3286
f062b5a90e26
Add showpointlabel style attribute
Christian Lins <christian.lins@intevation.de>
parents:
3215
diff
changeset
|
9 import org.jfree.data.xy.XYSeries; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 import org.jfree.data.xy.XYSeriesCollection; |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
11 import org.w3c.dom.Document; |
3612
f3fc8d49d741
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3610
diff
changeset
|
12 |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
13 import de.intevation.artifactdatabase.state.ArtifactAndFacet; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
14 import de.intevation.flys.artifacts.model.FacetTypes; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
15 import de.intevation.flys.artifacts.model.fixings.AnalysisPeriod; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
16 import de.intevation.flys.artifacts.model.fixings.QWD; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
17 import de.intevation.flys.exports.ChartGenerator; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
18 import de.intevation.flys.jfree.FLYSAnnotation; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
19 import de.intevation.flys.jfree.StyledAreaSeriesCollection; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
20 import de.intevation.flys.jfree.StyledXYSeries; |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
21 import de.intevation.flys.utils.KMIndex; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 public class FixLongitudinalSectionGenerator |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3286
diff
changeset
|
24 extends FixChartGenerator |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 implements FacetTypes |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 private static Logger logger = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
28 Logger.getLogger(FixLongitudinalSectionGenerator.class); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 public static final String I18N_CHART_TITLE = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
31 "chart.fixings.longitudinalsection.title"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 public static final String I18N_CHART_SUBTITLE = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
34 "chart.fixings.longitudinalsection.subtitle"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 public static final String I18N_XAXIS_LABEL = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
37 "chart.fixings.longitudinalsection.xaxis.label"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 public static final String I18N_YAXIS_LABEL = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
40 "chart.fixings.longitudinalsection.yaxis.label"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 public static final String I18N_CHART_TITLE_DEFAULT = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
43 "Fixierungsanalyse"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 public static final String I18N_XAXIS_LABEL_DEFAULT = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
46 "[km]"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 public static final String I18N_YAXIS_LABEL_DEFAULT = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
49 "delta W [cm]"; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 public static enum YAXIS { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
52 dW(0); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 public int idx; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 private YAXIS(int c) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
55 idx = c; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
58 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
59 @Override |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
60 public void doOut(ArtifactAndFacet aaf, Document doc, boolean visible) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
61 String name = aaf.getFacetName(); |
3579
accb64be866c
Add annotations to fixA longitudinal Sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3406
diff
changeset
|
62 logger.debug("FixLongitudinalSectionGenerator: doOut: " + name); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
63 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 if (name.contains(FIX_SECTOR_AVERAGE_LS_DEVIATION)) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 doSectorAverageDeviationOut(aaf, doc, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
66 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
67 else if (name.contains(FIX_SECTOR_AVERAGE_LS)) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 doSectorAverageOut(aaf, doc, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
69 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
70 else if (name.equals(FIX_REFERENCE_EVENTS_LS)) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 doReferenceEventsOut(aaf, doc, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 else if (name.equals(FIX_ANALYSIS_EVENTS_LS)) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 doAnalysisEventsOut(aaf, doc, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 else if (name.equals(FIX_DEVIATION_LS)) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 doReferenceDeviationOut(aaf, doc, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
78 } |
3579
accb64be866c
Add annotations to fixA longitudinal Sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3406
diff
changeset
|
79 else if (name.equals(LONGITUDINAL_ANNOTATION)) { |
accb64be866c
Add annotations to fixA longitudinal Sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3406
diff
changeset
|
80 doAnnotations( |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
81 (FLYSAnnotation) aaf.getData(context), |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
82 aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
83 doc, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
84 visible); |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
85 } |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
86 else if (FacetTypes.IS.MANUALPOINTS(name)) { |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
87 doPoints (aaf.getData(context), |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
88 aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
89 doc, visible, YAXIS.dW.idx); |
3579
accb64be866c
Add annotations to fixA longitudinal Sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3406
diff
changeset
|
90 } |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
91 else { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
92 logger.warn("Unknown facet name " + name); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
93 return; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
94 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
95 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
96 |
3286
f062b5a90e26
Add showpointlabel style attribute
Christian Lins <christian.lins@intevation.de>
parents:
3215
diff
changeset
|
97 @SuppressWarnings("unchecked") |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
98 protected void doSectorAverageOut( |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
99 ArtifactAndFacet aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
100 Document doc, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
101 boolean visible) |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
102 { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
103 logger.debug("doSectorAverageOut" + aaf.getFacet().getIndex()); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
104 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
105 int index = aaf.getFacet().getIndex(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
106 int sectorNdx = index & 3; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
107 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
108 KMIndex<AnalysisPeriod> kms = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
109 (KMIndex<AnalysisPeriod>)aaf.getData(context); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
110 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
111 if(kms == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
112 return; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
113 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
114 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
115 XYSeries series = new StyledXYSeries(aaf.getFacetDescription(), doc); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
116 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
117 for (KMIndex.Entry<AnalysisPeriod> entry: kms) { |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
118 double km = entry.getKm(); |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
119 AnalysisPeriod ap = entry.getValue(); |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
120 QWD qwd = ap.getQSectorAverages()[sectorNdx]; |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
121 if (qwd == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
122 continue; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
123 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
124 double deltaW = qwd.getDeltaW(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
125 series.add(km, deltaW); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
126 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
127 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
128 addAxisSeries(series, 0, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
129 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
130 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
131 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
132 |
3286
f062b5a90e26
Add showpointlabel style attribute
Christian Lins <christian.lins@intevation.de>
parents:
3215
diff
changeset
|
133 @SuppressWarnings("unchecked") |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
134 protected void doSectorAverageDeviationOut( |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
135 ArtifactAndFacet aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
136 Document doc, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
137 boolean visible) |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
138 { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
139 logger.debug("doSectorAverageOut" + aaf.getFacet().getIndex()); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
140 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
141 int index = aaf.getFacet().getIndex(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
142 int sectorNdx = index & 3; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
143 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
144 KMIndex<AnalysisPeriod> kms = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
145 (KMIndex<AnalysisPeriod>)aaf.getData(context); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
146 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
147 if(kms == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
148 return; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
149 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
150 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
151 StyledAreaSeriesCollection area = new StyledAreaSeriesCollection(doc); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
152 XYSeries upper = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
153 new StyledXYSeries(aaf.getFacetDescription(), false, doc); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
154 XYSeries lower = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
155 new StyledXYSeries(aaf.getFacetDescription() + " ", false, doc); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
156 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
157 for (KMIndex.Entry<AnalysisPeriod> entry: kms) { |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
158 double km = entry.getKm(); |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
159 AnalysisPeriod ap = entry.getValue(); |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
160 QWD qwd = ap.getQSectorAverages()[sectorNdx]; |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
161 double dev = ap.getQSectorStdDev(sectorNdx); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
162 logger.debug("std-dev: " + dev); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
163 if (qwd == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
164 continue; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
165 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
166 double deltaW = qwd.getDeltaW(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
167 double up = deltaW + dev; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
168 double lo = deltaW - dev; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
169 upper.add(km, up); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
170 lower.add(km, lo); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
171 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
172 area.addSeries(upper); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
173 area.addSeries(lower); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
174 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
175 addAreaSeries(area, 0, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
176 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
177 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
178 |
3286
f062b5a90e26
Add showpointlabel style attribute
Christian Lins <christian.lins@intevation.de>
parents:
3215
diff
changeset
|
179 @SuppressWarnings("unchecked") |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
180 protected void doReferenceDeviationOut( |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
181 ArtifactAndFacet aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
182 Document doc, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
183 boolean visible) |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
184 { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
185 logger.debug("doReferenceOut"); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
186 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
187 KMIndex<double[]> kms = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
188 (KMIndex<double[]>)aaf.getData(context); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
189 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
190 if(kms == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
191 return; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
192 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
193 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
194 StyledAreaSeriesCollection area = new StyledAreaSeriesCollection(doc); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
195 XYSeries upper = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
196 new StyledXYSeries(aaf.getFacetDescription(), false, doc); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
197 XYSeries lower = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
198 new StyledXYSeries(aaf.getFacetDescription() + " ", false, doc); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
199 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
200 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
201 for (KMIndex.Entry<double[]> entry: kms) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
202 double km = entry.getKm(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
203 double[] devArray = entry.getValue(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
204 if (devArray == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
205 continue; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
206 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
207 double dev = devArray[0]; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
208 double up = dev; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
209 double lo = -dev; |
3215
750e98fc8b76
FixA: Tweaked the derivate diagram a bit and added chart info.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3171
diff
changeset
|
210 upper.add(km, up, false); |
750e98fc8b76
FixA: Tweaked the derivate diagram a bit and added chart info.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3171
diff
changeset
|
211 lower.add(km, lo, false); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
212 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
213 area.addSeries(upper); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
214 area.addSeries(lower); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
215 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
216 Marker marker = new ValueMarker(0); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
217 marker.setStroke(new BasicStroke(2)); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
218 marker.setPaint(Color.BLACK); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
219 addValueMarker(marker); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
220 addAreaSeries(area, 0, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
221 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
222 |
3286
f062b5a90e26
Add showpointlabel style attribute
Christian Lins <christian.lins@intevation.de>
parents:
3215
diff
changeset
|
223 @SuppressWarnings("unchecked") |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
224 protected void doAnalysisEventsOut( |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
225 ArtifactAndFacet aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
226 Document doc, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
227 boolean visible) |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
228 { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
229 logger.debug("doAnalysisEventsOut"); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
230 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
231 KMIndex<QWD> kms = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
232 (KMIndex<QWD>)aaf.getData(context); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
233 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
234 if(kms == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
235 return; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
236 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
237 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
238 XYSeriesCollection col = new XYSeriesCollection(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
239 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
240 StyledXYSeries series = new StyledXYSeries(aaf.getFacetDescription(), false, doc); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
241 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
242 for (KMIndex.Entry<QWD> entry: kms) { |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
243 double km = entry.getKm(); |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
244 QWD qwd = entry.getValue(); |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
245 |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
246 series.add(km, qwd.getDeltaW()); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
247 } |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
248 col.addSeries(series); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
249 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
250 addAxisDataset(col, 0, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
251 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
252 |
3286
f062b5a90e26
Add showpointlabel style attribute
Christian Lins <christian.lins@intevation.de>
parents:
3215
diff
changeset
|
253 @SuppressWarnings("unchecked") |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
254 protected void doReferenceEventsOut( |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
255 ArtifactAndFacet aaf, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
256 Document doc, |
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
257 boolean visible) |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
258 { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
259 logger.debug("doReferenceEventOut"); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
260 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
261 KMIndex<QWD> kms = |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
262 (KMIndex<QWD>)aaf.getData(context); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
263 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
264 if(kms == null) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
265 return; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
266 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
267 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
268 XYSeriesCollection col = new XYSeriesCollection(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
269 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
270 StyledXYSeries series = new StyledXYSeries(aaf.getFacetDescription(), false, doc); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
271 |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
272 for (KMIndex.Entry<QWD> entry: kms) { |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
273 double km = entry.getKm(); |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
274 QWD qwd = entry.getValue(); |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
275 |
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
276 series.add(km, qwd.getDeltaW()); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
277 } |
3610
66f539df4e8b
Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3579
diff
changeset
|
278 col.addSeries(series); |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
279 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
280 addAxisDataset(col, 0, visible); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
281 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
282 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
283 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
284 @Override |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
285 protected String getDefaultChartTitle() { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
286 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE_DEFAULT); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
287 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
288 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
289 @Override |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
290 protected String getDefaultXAxisLabel() { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
291 return msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL_DEFAULT); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
292 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
293 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
294 @Override |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
295 protected String getDefaultYAxisLabel(int pos) { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
296 return msg(I18N_YAXIS_LABEL, I18N_YAXIS_LABEL_DEFAULT); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
297 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
298 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
299 @Override |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
300 protected ChartGenerator.YAxisWalker getYAxisWalker() { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
301 return new YAxisWalker() { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
302 @Override |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
303 public int length() { |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
304 return YAXIS.values().length; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
305 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
306 |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
307 @Override |
3770
6a08f4dc790b
Manual Points for fixing charts (not working yet)
Christian Lins <christian.lins@intevation.de>
parents:
3612
diff
changeset
|
308 public String getId(int idx) { |
3169
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
309 YAXIS[] yaxes = YAXIS.values(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
310 return yaxes[idx].toString(); |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
311 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
312 }; |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
313 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
314 } |
b6da650b0718
FixA: Added longitudinal section chart.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
315 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |