Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java @ 4241:49cb65d5932d
Improved the historical discharge calculation.
The calculation now creates new HistoricalWQKms (new subclass of WQKms). Those WQKms are used
to create new facets from (new) type 'HistoricalDischargeCurveFacet'. The chart generator is
improved to support those facets.
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 24 Oct 2012 14:34:35 +0200 |
parents | 572384206fe0 |
children | e8a4d2fd25cc |
rev | line source |
---|---|
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.exports; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
2 |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
3 import de.intevation.artifactdatabase.state.ArtifactAndFacet; |
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
4 import de.intevation.flys.artifacts.model.FacetTypes; |
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
5 import de.intevation.flys.artifacts.model.WW; |
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
6 import de.intevation.flys.artifacts.model.WW.ApplyFunctionIterator; |
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
7 import de.intevation.flys.artifacts.model.WWAxisTypes; |
3409
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
8 import de.intevation.flys.jfree.FLYSAnnotation; |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
9 import de.intevation.flys.jfree.StyledXYSeries; |
3409
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
10 import de.intevation.flys.utils.Formatter; |
2245
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
11 |
3409
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
12 import java.awt.geom.Point2D; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
13 |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
14 import org.apache.log4j.Logger; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
15 import org.jfree.chart.axis.NumberAxis; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
16 import org.jfree.chart.axis.NumberTickUnit; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
17 import org.jfree.chart.axis.TickUnits; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
18 import org.jfree.chart.axis.ValueAxis; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
19 import org.jfree.data.xy.XYSeries; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
20 import org.w3c.dom.Document; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
21 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
22 /** |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
23 * An OutGenerator that generates reference curves. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
24 */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
25 public class ReferenceCurveGenerator |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
26 extends XYChartGenerator |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
27 implements FacetTypes |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
28 { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
29 public static enum YAXIS { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
30 W(0); |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
31 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
32 public int idx; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
33 private YAXIS(int c) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
34 idx = c; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
35 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
36 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
37 |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
38 /** House logger. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
39 private static Logger logger = |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
40 Logger.getLogger(ReferenceCurveGenerator.class); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
41 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
42 public static final String I18N_CHART_TITLE = |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
43 "chart.reference.curve.title"; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
44 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
45 public static final String I18N_CHART_SUBTITLE = |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
46 "chart.reference.curve.subtitle"; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
47 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
48 public static final String I18N_X_AXIS_IN_CM = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
49 "chart.reference.curve.x.axis.in.cm"; |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
50 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
51 public static final String I18N_X_AXIS_IN_M = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
52 "chart.reference.curve.x.axis.in.m"; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
53 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
54 public static final String I18N_Y_AXIS_IN_CM = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
55 "chart.reference.curve.y.axis.in.cm"; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
56 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
57 public static final String I18N_Y_AXIS_IN_M = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
58 "chart.reference.curve.y.axis.in.m"; |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
59 |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
60 public static final String I18N_CHART_TITLE_DEFAULT = |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
61 "Bezugslinie"; |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
62 |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
63 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
64 public ReferenceCurveGenerator() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
65 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
66 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
67 /** |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
68 * Create Axis for given index. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
69 * @return axis with according internationalized label. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
70 */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
71 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
72 protected NumberAxis createYAxis(int index) { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
73 NumberAxis axis = super.createYAxis(index); |
2323
6bbb8295fd64
Fixed problems with incluing zeros in reference curves.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2303
diff
changeset
|
74 axis.setAutoRangeIncludesZero(false); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
75 return axis; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
76 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
77 |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
78 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
79 /** Get default chart title. */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
80 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
81 protected String getDefaultChartTitle() { |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
82 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE_DEFAULT); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
83 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
84 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
85 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
86 protected String getDefaultChartSubtitle() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
87 Object[] args = new Object[] { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
88 getRiverName(), |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
89 }; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
90 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
91 return msg(I18N_CHART_SUBTITLE, "", args); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
92 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
93 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
94 |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
95 /** True if axis is in cm (because at gauge). */ |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
96 protected boolean getInCm(int index) { |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
97 Object obj = context.getContextValue("reference.curve.axis.scale"); |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
98 return obj instanceof WWAxisTypes && ((WWAxisTypes)obj).getInCm(index); |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
99 } |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
100 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
101 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
102 /** Get Label for X-axis (W). */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
103 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
104 protected String getDefaultXAxisLabel() { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
105 return msg(getInCm(0) ? I18N_X_AXIS_IN_CM : I18N_X_AXIS_IN_M); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
106 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
107 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
108 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
109 /** |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
110 * Get Label for primary and other Y Axes. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
111 * @param index Axis-Index (0-based). |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
112 */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
113 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
114 protected String getDefaultYAxisLabel(int index) { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
115 return msg(getInCm(1) ? I18N_Y_AXIS_IN_CM : I18N_Y_AXIS_IN_M); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
116 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
117 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
118 protected String facetName() { |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
119 return REFERENCE_CURVE; |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
120 } |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
121 |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
122 |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
123 /** |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
124 * Called for each facet/them in the out mapped to this generator. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
125 * @param artifactFacet artifact and facet for this theme. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
126 * @param theme styling info. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
127 * @param visible Whether or not the theme is visible. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
128 */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
129 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
130 public void doOut( |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
131 ArtifactAndFacet artifactFacet, |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
132 Document theme, |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
133 boolean visible |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
134 ) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
135 String name = artifactFacet.getFacetName(); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
136 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
137 logger.debug("ReferenceCurveGenerator.doOut: " + name); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
138 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
139 if (name == null || name.length() == 0) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
140 logger.error("No facet given. Cannot create dataset."); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
141 return; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
142 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
143 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
144 if (name.equals(facetName())) { |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
145 doReferenceOut(artifactFacet.getData(context), theme, visible); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
146 } |
2299
094b4abde10e
fix flys/issue474 (manual points in reference curves).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2278
diff
changeset
|
147 else if (FacetTypes.IS.MANUALPOINTS(name)) { |
2325
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
148 doPoints( |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
149 artifactFacet.getData(context), |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
150 artifactFacet, |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
151 theme, |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
152 visible, |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
153 YAXIS.W.idx); |
2299
094b4abde10e
fix flys/issue474 (manual points in reference curves).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2278
diff
changeset
|
154 } |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
155 else if (name.equals(RELATIVE_POINT)) { |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
156 doPointOut( |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
157 (Point2D) artifactFacet.getData(context), |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
158 artifactFacet, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
159 theme, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
160 visible); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
161 } |
2769
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
162 else if (name.equals(MAINVALUES_W)) { |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
163 doAnnotations( |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
164 ((FLYSAnnotation) artifactFacet.getData(context)).flipStickyAxis(), |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
165 artifactFacet, |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
166 theme, |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
167 visible); |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2769
diff
changeset
|
168 |
2769
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
169 } |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
170 else { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
171 logger.warn("Unknown facet name: " + name); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
172 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
173 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
174 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
175 protected boolean doNormalize() { |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
176 return false; |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
177 } |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
178 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
179 |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
180 /** Register DataSeries with (maybe transformed) points. */ |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
181 public void doReferenceOut( |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
182 Object data, |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
183 Document theme, |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
184 boolean visible |
2245
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
185 ) { |
2256
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
186 WW ww = (WW)data; |
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
187 |
2278
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
188 Object obj = context.getContextValue("reference.curve.axis.scale"); |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
189 |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
190 WWAxisTypes wwat = obj instanceof WWAxisTypes |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
191 ? (WWAxisTypes)obj |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
192 : new WWAxisTypes(ww); |
2256
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
193 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
194 ApplyFunctionIterator iter = wwat.transform(ww, doNormalize()); |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
195 |
2253
707b47d8c554
Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2251
diff
changeset
|
196 XYSeries series = new StyledXYSeries( |
2256
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
197 ww.getName(), false, theme); |
2245
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
198 |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
199 double [] values = new double[2]; |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
200 |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
201 while (iter.hasNext()) { |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
202 iter.next(values); |
2253
707b47d8c554
Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2251
diff
changeset
|
203 series.add(values[0], values[1], false); |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
204 } |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
205 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
206 addAxisSeries(series, YAXIS.W.idx, visible); |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
207 } |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
208 |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
209 // TODO resolve duplicate in DurationCurveGenerator |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
210 protected void doPointOut( |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
211 Point2D point, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
212 ArtifactAndFacet aandf, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
213 Document theme, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
214 boolean visible |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
215 ){ |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
216 logger.debug("ReferenceCurveGenerator.doPointOut"); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
217 |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
218 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
219 |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
220 series.add(point.getX(), point.getY()); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
221 |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
222 addAxisSeries(series, YAXIS.W.idx, visible); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
223 } |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
224 |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
225 |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
226 /** Set the tick units for given axis. */ |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
227 protected void setAxisTickUnit(double tick, ValueAxis axis) { |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
228 TickUnits units = new TickUnits(); |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
229 units.add(new NumberTickUnit(tick, Formatter.getWaterlevelW(context))); |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
230 axis.setStandardTickUnits(units); |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
231 axis.setAutoTickUnitSelection(true); |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
232 } |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
233 |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
234 @Override |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
235 protected void localizeDomainAxis(ValueAxis domainAxis) { |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
236 super.localizeDomainAxis(domainAxis); |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
237 if (getInCm(0)) { |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
238 setAxisTickUnit(100d, domainAxis); |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
239 } |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
240 else { |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
241 setAxisTickUnit(1d, domainAxis); |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
242 } |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
243 } |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
244 |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
245 |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
246 @Override |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
247 protected void localizeRangeAxis(ValueAxis rangeAxis) { |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
248 super.localizeRangeAxis(rangeAxis); |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
249 setAxisTickUnit(1d, rangeAxis); |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
250 } |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
251 |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
252 /** Get Walker to iterate over all axes. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
253 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
254 protected YAxisWalker getYAxisWalker() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
255 return new YAxisWalker() { |
2246
99ef93ce18bd
Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2245
diff
changeset
|
256 /** Get number of items. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
257 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
258 public int length() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
259 return YAXIS.values().length; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
260 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
261 |
2246
99ef93ce18bd
Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2245
diff
changeset
|
262 /** Get identifier for this index. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
263 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
264 public String getId(int idx) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
265 YAXIS[] yaxes = YAXIS.values(); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
266 return yaxes[idx].toString(); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
267 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
268 }; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
269 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
270 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
271 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |