Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/exports/XYChartGenerator.java @ 652:8fa4c5c9cd1a
Charts are zoomed to a specified view if the attribute document for the chart creation contains an x and/or y range.
flys-artifacts/trunk@2047 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 03 Jun 2011 06:47:51 +0000 |
parents | bab867fb37e8 |
children | 67c7020f4ed3 |
comparison
equal
deleted
inserted
replaced
651:e6cecb661bff | 652:8fa4c5c9cd1a |
---|---|
9 import org.apache.log4j.Logger; | 9 import org.apache.log4j.Logger; |
10 | 10 |
11 import org.jfree.chart.ChartFactory; | 11 import org.jfree.chart.ChartFactory; |
12 import org.jfree.chart.JFreeChart; | 12 import org.jfree.chart.JFreeChart; |
13 import org.jfree.chart.axis.NumberAxis; | 13 import org.jfree.chart.axis.NumberAxis; |
14 import org.jfree.chart.axis.ValueAxis; | |
14 import org.jfree.chart.plot.PlotOrientation; | 15 import org.jfree.chart.plot.PlotOrientation; |
15 import org.jfree.chart.plot.XYPlot; | 16 import org.jfree.chart.plot.XYPlot; |
17 import org.jfree.data.Range; | |
16 | 18 |
17 import de.intevation.flys.exports.ChartExportHelper; | 19 import de.intevation.flys.exports.ChartExportHelper; |
18 | 20 |
19 | 21 |
20 /** | 22 /** |
87 adjustPlot(plot); | 89 adjustPlot(plot); |
88 adjustAxes(plot); | 90 adjustAxes(plot); |
89 | 91 |
90 int[] size = getSize(); | 92 int[] size = getSize(); |
91 | 93 |
94 zoom(plot); | |
95 | |
92 ChartExportHelper.exportImage( | 96 ChartExportHelper.exportImage( |
93 out, | 97 out, |
94 chart, | 98 chart, |
95 "png", | 99 "png", |
96 size[0], size[1]); | 100 size[0], size[1]); |
101 } | |
102 | |
103 | |
104 protected void zoom(XYPlot plot) { | |
105 logger.debug("Zoom to specified ranges."); | |
106 | |
107 Range xrange = getDomainAxisRange(); | |
108 if (xrange != null) { | |
109 ValueAxis xaxis = plot.getDomainAxis(); | |
110 xaxis.setRange(xrange); | |
111 | |
112 logger.debug("Zoom chart to X: " + xrange); | |
113 } | |
114 | |
115 Range yrange = getValueAxisRange(); | |
116 if (yrange != null) { | |
117 ValueAxis yaxis = plot.getRangeAxis(); | |
118 yaxis.setRange(yrange); | |
119 | |
120 logger.debug("Zoom chart to Y: " + yrange); | |
121 } | |
97 } | 122 } |
98 | 123 |
99 | 124 |
100 /** | 125 /** |
101 * Adjusts the axes of a plot. | 126 * Adjusts the axes of a plot. |