Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionGenerator.java @ 923:7ca4a287cd0e
#135 Modified the way to store datasets for different chart axes.
flys-artifacts/trunk@2275 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 01 Jul 2011 11:16:11 +0000 |
parents | f959faaa7c4a |
children | f7761914f745 |
comparison
equal
deleted
inserted
replaced
922:95356252c309 | 923:7ca4a287cd0e |
---|---|
2 | 2 |
3 import java.awt.Color; | 3 import java.awt.Color; |
4 | 4 |
5 import org.apache.log4j.Logger; | 5 import org.apache.log4j.Logger; |
6 | 6 |
7 import org.jfree.chart.JFreeChart; | |
8 import org.jfree.chart.plot.XYPlot; | 7 import org.jfree.chart.plot.XYPlot; |
9 import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer; | 8 import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer; |
10 import org.jfree.data.xy.XYSeries; | 9 import org.jfree.data.xy.XYSeries; |
11 import org.jfree.data.xy.XYSeriesCollection; | |
12 | 10 |
13 import org.w3c.dom.Document; | 11 import org.w3c.dom.Document; |
14 | 12 |
15 import de.intevation.artifacts.Artifact; | 13 import de.intevation.artifacts.Artifact; |
16 | 14 |
31 { | 29 { |
32 private static Logger logger = | 30 private static Logger logger = |
33 Logger.getLogger(DischargeLongitudinalSectionGenerator.class); | 31 Logger.getLogger(DischargeLongitudinalSectionGenerator.class); |
34 | 32 |
35 | 33 |
36 /** The storage for the corrected W series to be drawn in this chart.*/ | |
37 protected XYSeriesCollection cw; | |
38 | |
39 | 34 |
40 public DischargeLongitudinalSectionGenerator() { | 35 public DischargeLongitudinalSectionGenerator() { |
41 super(); | 36 super(); |
42 | |
43 this.cw = new XYSeriesCollection(); | |
44 } | |
45 | |
46 | |
47 @Override | |
48 public void addDatasets(JFreeChart chart) { | |
49 super.addDatasets(chart); | |
50 | |
51 XYPlot plot = (XYPlot) chart.getPlot(); | |
52 | |
53 plot.setDataset(2, cw); | |
54 } | 37 } |
55 | 38 |
56 | 39 |
57 @Override | 40 @Override |
58 protected void adjustPlot(XYPlot plot) { | 41 protected void adjustPlot(XYPlot plot) { |
59 super.adjustPlot(plot); | 42 super.adjustPlot(plot); |
60 | 43 |
61 // TODO REMOVE THIS CODE, IF WE HAVE INTRODUCED THEMES! | 44 //// TODO REMOVE THIS CODE, IF WE HAVE INTRODUCED THEMES! |
62 XYLineAndShapeRenderer rw = (XYLineAndShapeRenderer) | 45 //XYLineAndShapeRenderer rw = (XYLineAndShapeRenderer) |
63 plot.getRendererForDataset(w); | 46 // plot.getRendererForDataset(w); |
64 | 47 |
65 XYLineAndShapeRenderer rcw = null; | 48 //XYLineAndShapeRenderer rcw = null; |
66 try { | 49 //try { |
67 rcw = (XYLineAndShapeRenderer) rw.clone(); | 50 // rcw = (XYLineAndShapeRenderer) rw.clone(); |
68 } | 51 //} |
69 catch (Exception e) { | 52 //catch (Exception e) { |
70 logger.error(e, e); | 53 // logger.error(e, e); |
71 } | 54 //} |
72 | 55 |
73 int cwNum = cw.getSeriesCount(); | 56 //int cwNum = cw.getSeriesCount(); |
74 | 57 |
75 for (int i = 0; i < cwNum; i++) { | 58 //for (int i = 0; i < cwNum; i++) { |
76 rcw.setSeriesPaint(i, Color.RED); | 59 // rcw.setSeriesPaint(i, Color.RED); |
77 } | 60 //} |
78 | 61 |
79 plot.setRenderer(2, rcw); | 62 //plot.setRenderer(2, rcw); |
80 } | 63 } |
81 | |
82 | |
83 protected void adjustAxes(XYPlot plot) { | |
84 super.adjustAxes(plot); | |
85 | |
86 plot.mapDatasetToRangeAxis(2, 0); | |
87 } | |
88 | |
89 | 64 |
90 | 65 |
91 @Override | 66 @Override |
92 public void doOut(Artifact artifact, Facet facet, Document attr) { | 67 public void doOut(Artifact artifact, Facet facet, Document attr) { |
93 logger.debug("DischargeLongitudinalSectionGenerator.doOut"); | 68 logger.debug("DischargeLongitudinalSectionGenerator.doOut"); |
133 if (size > 0) { | 108 if (size > 0) { |
134 XYSeries series = new XYSeries(getSeriesNameForCorrected(wqckms, "W")); | 109 XYSeries series = new XYSeries(getSeriesNameForCorrected(wqckms, "W")); |
135 for (int i = 0; i < size; i++) { | 110 for (int i = 0; i < size; i++) { |
136 series.add(wqckms.getKms(i), wqckms.getC(i)); | 111 series.add(wqckms.getKms(i), wqckms.getC(i)); |
137 } | 112 } |
138 cw.addSeries(series); | 113 |
114 addFirstAxisSeries(series); | |
139 } | 115 } |
140 | 116 |
141 if (wqckms.guessWaterIncreasing()) { | 117 if (wqckms.guessWaterIncreasing()) { |
142 setInverted(true); | 118 setInverted(true); |
143 } | 119 } |