comparison gnv-artifacts/src/main/java/de/intevation/gnv/exports/ChartExportHelper.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 a88e15972c72
children 65f09139e9b3
comparison
equal deleted inserted replaced
616:93978859fa9e 617:3d13fa281a7e
7 import com.lowagie.text.pdf.PdfContentByte; 7 import com.lowagie.text.pdf.PdfContentByte;
8 import com.lowagie.text.pdf.PdfTemplate; 8 import com.lowagie.text.pdf.PdfTemplate;
9 import com.lowagie.text.pdf.PdfWriter; 9 import com.lowagie.text.pdf.PdfWriter;
10 10
11 import java.awt.Transparency; 11 import java.awt.Transparency;
12 import java.awt.Graphics;
12 import java.awt.Graphics2D; 13 import java.awt.Graphics2D;
14 import java.awt.geom.Point2D;
13 import java.awt.geom.Rectangle2D; 15 import java.awt.geom.Rectangle2D;
14 import java.awt.geom.Rectangle2D.Double; 16 import java.awt.geom.Rectangle2D.Double;
17 import java.awt.image.BufferedImage;
15 import java.io.OutputStream; 18 import java.io.OutputStream;
16 import java.io.OutputStreamWriter; 19 import java.io.OutputStreamWriter;
17 import java.io.IOException; 20 import java.io.IOException;
18 import java.io.UnsupportedEncodingException; 21 import java.io.UnsupportedEncodingException;
19 import javax.imageio.ImageIO; 22 import javax.imageio.ImageIO;
23 import org.apache.log4j.Logger; 26 import org.apache.log4j.Logger;
24 27
25 import org.jfree.chart.JFreeChart; 28 import org.jfree.chart.JFreeChart;
26 29
27 import de.intevation.artifactdatabase.XMLUtils; 30 import de.intevation.artifactdatabase.XMLUtils;
31 import de.intevation.gnv.chart.Chart;
28 32
29 33
30 /** 34 /**
31 * @author Ingo Weinzierl <ingo.weinzierl@intevation.de> 35 * @author Ingo Weinzierl <ingo.weinzierl@intevation.de>
32 */ 36 */
53 width, height, Transparency.BITMASK, null 57 width, height, Transparency.BITMASK, null
54 ), 58 ),
55 format, 59 format,
56 out 60 out
57 ); 61 );
62 }
63
64
65 public static void exportHistograms(
66 OutputStream out,
67 Chart[] histograms,
68 String format,
69 int width,
70 int height)
71 throws IOException
72 {
73 log.info("export histograms");
74
75 int size = histograms.length;
76 BufferedImage image = new BufferedImage(
77 width, height*size, BufferedImage.TYPE_INT_RGB);
78 Graphics2D g = image.createGraphics();
79
80 for (int i = 0; i < size; i++) {
81 JFreeChart chart = histograms[i].generateChart();
82 chart.draw(g, new Rectangle2D.Double(0.0D, i*height, width, height));
83 }
84 g.finalize();
85
86 ImageIO.write(image, format, out);
58 } 87 }
59 88
60 89
61 public static void exportSVG( 90 public static void exportSVG(
62 OutputStream out, 91 OutputStream out,

http://dive4elements.wald.intevation.org