JFreeChart & Image

Suma picture Suma · Mar 11, 2011 · Viewed 21.3k times · Source

Is it possible to cast an image/BufferedImage to JFreeChart?

Answer

Anuj Balan picture Anuj Balan · Aug 10, 2011

Casting an image to JFree is not possbile. To create an image from JFreechart you can do the following:

BufferedImage objBufferedImage=objJFreechart.createBufferedImage(600,800);
ByteArrayOutputStream bas = new ByteArrayOutputStream();
        try {
            ImageIO.write(objBufferedImage, "png", bas);
        } catch (IOException e) {
            e.printStackTrace();
        }

byte[] byteArray=bas.toByteArray();

This creates the byte[] .

Now you need to create the image from byte[]. The following does this.

InputStream in = new ByteArrayInputStream(obj);
BufferedImage image = ImageIO.read(in);
File outputfile = new File("image.png");
ImageIO.write(image, "png", outputfile);

The image gets created at the place where your project is created(local drive).