comparison gnv-artifacts/src/main/java/de/intevation/gnv/chart/DefaultHistogram.java @ 617:3d13fa281a7e

Added new ouput mode: histogram. gnv-artifacts/trunk@688 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 15 Feb 2010 11:44:01 +0000
parents
children 65f09139e9b3
comparison
equal deleted inserted replaced
616:93978859fa9e 617:3d13fa281a7e
1 package de.intevation.gnv.chart;
2
3 import java.util.Locale;
4
5 import org.apache.log4j.Logger;
6
7 import org.jfree.chart.ChartTheme;
8 import org.jfree.chart.JFreeChart;
9 import org.jfree.chart.axis.NumberAxis;
10 import org.jfree.chart.plot.XYPlot;
11 import org.jfree.chart.renderer.xy.XYBarRenderer;
12
13 import org.jfree.data.general.Dataset;
14 import org.jfree.data.statistics.HistogramDataset;
15
16
17 /**
18 * @author Ingo Weinzierl (ingo.weinzierl@intevation.de)
19 */
20 public class DefaultHistogram
21 extends AbstractHistogram
22 {
23 // TODO take a better default value
24 public static final int DEFAULT_BINS = 15;
25
26 private static Logger logger = Logger.getLogger(DefaultHistogram.class);
27
28
29 public DefaultHistogram(
30 ChartLabels labels, Object[] data, ChartTheme theme
31 ) {
32 super(labels, data, theme);
33 }
34
35
36 protected void applyDatasets() {
37 XYPlot plot = (XYPlot) chart.getPlot();
38
39 // prepare data and create add them to histogram dataset
40 String name = (String) data[0];
41 double[] values = toDouble((Double[]) data[1]);
42
43 HistogramDataset dataset = new HistogramDataset();
44 dataset.addSeries(name, values, DEFAULT_BINS);
45
46 plot.setDataset(0, dataset);
47 }
48
49
50 protected double[] toDouble(Double[] array) {
51 int length = array.length;
52 double[] values = new double[length];
53
54 for(int i = 0; i < length; i++) {
55 values[i] = array[i].doubleValue();
56 }
57
58 return values;
59 }
60 }
61 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org