Package org.jfree.chart
Class ChartUtils
java.lang.Object
org.jfree.chart.ChartUtils
A collection of utility methods for JFreeChart. Includes methods for
converting charts to image formats (PNG and JPEG) plus creating simple HTML
image maps.
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
applyCurrentTheme
(JFreeChart chart) Applies the current theme to the specified chart.static byte[]
encodeAsPNG
(BufferedImage image) Encodes aBufferedImage
to PNG format.static byte[]
encodeAsPNG
(BufferedImage image, boolean encodeAlpha, int compression) Encodes aBufferedImage
to PNG format.static String
getImageMap
(String name, ChartRenderingInfo info) Creates an HTML image map.static String
getImageMap
(String name, ChartRenderingInfo info, ToolTipTagFragmentGenerator toolTipTagFragmentGenerator, URLTagFragmentGenerator urlTagFragmentGenerator) Creates an HTML image map.static void
saveChartAsJPEG
(File file, float quality, JFreeChart chart, int width, int height) Saves a chart to a file in JPEG format.static void
saveChartAsJPEG
(File file, float quality, JFreeChart chart, int width, int height, ChartRenderingInfo info) Saves a chart to a file in JPEG format.static void
saveChartAsJPEG
(File file, JFreeChart chart, int width, int height) Saves a chart to a file in JPEG format.static void
saveChartAsJPEG
(File file, JFreeChart chart, int width, int height, ChartRenderingInfo info) Saves a chart to a file in JPEG format.static void
saveChartAsPNG
(File file, JFreeChart chart, int width, int height) Saves a chart to the specified file in PNG format.static void
saveChartAsPNG
(File file, JFreeChart chart, int width, int height, ChartRenderingInfo info) Saves a chart to a file in PNG format.static void
saveChartAsPNG
(File file, JFreeChart chart, int width, int height, ChartRenderingInfo info, boolean encodeAlpha, int compression) Saves a chart to a file in PNG format.static void
writeBufferedImageAsJPEG
(OutputStream out, float quality, BufferedImage image) Writes aBufferedImage
to an output stream in JPEG format.static void
writeBufferedImageAsJPEG
(OutputStream out, BufferedImage image) Writes aBufferedImage
to an output stream in JPEG format.static void
writeBufferedImageAsPNG
(OutputStream out, BufferedImage image) Writes aBufferedImage
to an output stream in PNG format.static void
writeBufferedImageAsPNG
(OutputStream out, BufferedImage image, boolean encodeAlpha, int compression) Writes aBufferedImage
to an output stream in PNG format.static void
writeChartAsJPEG
(OutputStream out, float quality, JFreeChart chart, int width, int height) Writes a chart to an output stream in JPEG format.static void
writeChartAsJPEG
(OutputStream out, float quality, JFreeChart chart, int width, int height, ChartRenderingInfo info) Writes a chart to an output stream in JPEG format.static void
writeChartAsJPEG
(OutputStream out, JFreeChart chart, int width, int height) Writes a chart to an output stream in JPEG format.static void
writeChartAsJPEG
(OutputStream out, JFreeChart chart, int width, int height, ChartRenderingInfo info) Writes a chart to an output stream in JPEG format.static void
writeChartAsPNG
(OutputStream out, JFreeChart chart, int width, int height) Writes a chart to an output stream in PNG format.static void
writeChartAsPNG
(OutputStream out, JFreeChart chart, int width, int height, boolean encodeAlpha, int compression) Writes a chart to an output stream in PNG format.static void
writeChartAsPNG
(OutputStream out, JFreeChart chart, int width, int height, ChartRenderingInfo info) Writes a chart to an output stream in PNG format.static void
writeChartAsPNG
(OutputStream out, JFreeChart chart, int width, int height, ChartRenderingInfo info, boolean encodeAlpha, int compression) Writes a chart to an output stream in PNG format.static void
writeImageMap
(PrintWriter writer, String name, ChartRenderingInfo info, boolean useOverLibForToolTips) Writes an image map to an output stream.static void
writeImageMap
(PrintWriter writer, String name, ChartRenderingInfo info, ToolTipTagFragmentGenerator toolTipTagFragmentGenerator, URLTagFragmentGenerator urlTagFragmentGenerator) Writes an image map to the specified writer.static void
writeScaledChartAsPNG
(OutputStream out, JFreeChart chart, int width, int height, int widthScaleFactor, int heightScaleFactor) Writes a scaled version of a chart to an output stream in PNG format.
-
Constructor Details
-
ChartUtils
public ChartUtils()
-
-
Method Details
-
applyCurrentTheme
Applies the current theme to the specified chart. This method is provided for convenience, the theme itself is stored in theChartFactory
class.- Parameters:
chart
- the chart (null
not permitted).
-
writeChartAsPNG
public static void writeChartAsPNG(OutputStream out, JFreeChart chart, int width, int height) throws IOException Writes a chart to an output stream in PNG format.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsPNG
public static void writeChartAsPNG(OutputStream out, JFreeChart chart, int width, int height, boolean encodeAlpha, int compression) throws IOException Writes a chart to an output stream in PNG format.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.encodeAlpha
- encode alpha?compression
- the compression level (0-9).- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsPNG
public static void writeChartAsPNG(OutputStream out, JFreeChart chart, int width, int height, ChartRenderingInfo info) throws IOException Writes a chart to an output stream in PNG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsPNG
public static void writeChartAsPNG(OutputStream out, JFreeChart chart, int width, int height, ChartRenderingInfo info, boolean encodeAlpha, int compression) throws IOException Writes a chart to an output stream in PNG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- carries back chart rendering info (null
permitted).encodeAlpha
- encode alpha?compression
- the PNG compression level (0-9).- Throws:
IOException
- if there are any I/O errors.
-
writeScaledChartAsPNG
public static void writeScaledChartAsPNG(OutputStream out, JFreeChart chart, int width, int height, int widthScaleFactor, int heightScaleFactor) throws IOException Writes a scaled version of a chart to an output stream in PNG format.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the unscaled chart width.height
- the unscaled chart height.widthScaleFactor
- the horizontal scale factor.heightScaleFactor
- the vertical scale factor.- Throws:
IOException
- if there are any I/O problems.
-
saveChartAsPNG
public static void saveChartAsPNG(File file, JFreeChart chart, int width, int height) throws IOException Saves a chart to the specified file in PNG format.- Parameters:
file
- the file name (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.- Throws:
IOException
- if there are any I/O errors.
-
saveChartAsPNG
public static void saveChartAsPNG(File file, JFreeChart chart, int width, int height, ChartRenderingInfo info) throws IOException Saves a chart to a file in PNG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
file
- the file (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).- Throws:
IOException
- if there are any I/O errors.
-
saveChartAsPNG
public static void saveChartAsPNG(File file, JFreeChart chart, int width, int height, ChartRenderingInfo info, boolean encodeAlpha, int compression) throws IOException Saves a chart to a file in PNG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
file
- the file (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).encodeAlpha
- encode alpha?compression
- the PNG compression level (0-9).- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsJPEG
public static void writeChartAsJPEG(OutputStream out, JFreeChart chart, int width, int height) throws IOException Writes a chart to an output stream in JPEG format. Please note that JPEG is a poor format for chart images, use PNG if possible.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsJPEG
public static void writeChartAsJPEG(OutputStream out, float quality, JFreeChart chart, int width, int height) throws IOException Writes a chart to an output stream in JPEG format. Please note that JPEG is a poor format for chart images, use PNG if possible.- Parameters:
out
- the output stream (null
not permitted).quality
- the quality setting.chart
- the chart (null
not permitted).width
- the image width.height
- the image height.- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsJPEG
public static void writeChartAsJPEG(OutputStream out, JFreeChart chart, int width, int height, ChartRenderingInfo info) throws IOException Writes a chart to an output stream in JPEG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
out
- the output stream (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).- Throws:
IOException
- if there are any I/O errors.
-
writeChartAsJPEG
public static void writeChartAsJPEG(OutputStream out, float quality, JFreeChart chart, int width, int height, ChartRenderingInfo info) throws IOException Writes a chart to an output stream in JPEG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
out
- the output stream (null
not permitted).quality
- the output quality (0.0f to 1.0f).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).- Throws:
IOException
- if there are any I/O errors.
-
saveChartAsJPEG
public static void saveChartAsJPEG(File file, JFreeChart chart, int width, int height) throws IOException Saves a chart to a file in JPEG format.- Parameters:
file
- the file (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.- Throws:
IOException
- if there are any I/O errors.
-
saveChartAsJPEG
public static void saveChartAsJPEG(File file, float quality, JFreeChart chart, int width, int height) throws IOException Saves a chart to a file in JPEG format.- Parameters:
file
- the file (null
not permitted).quality
- the JPEG quality setting.chart
- the chart (null
not permitted).width
- the image width.height
- the image height.- Throws:
IOException
- if there are any I/O errors.
-
saveChartAsJPEG
public static void saveChartAsJPEG(File file, JFreeChart chart, int width, int height, ChartRenderingInfo info) throws IOException Saves a chart to a file in JPEG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
file
- the file name (null
not permitted).chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).- Throws:
IOException
- if there are any I/O errors.
-
saveChartAsJPEG
public static void saveChartAsJPEG(File file, float quality, JFreeChart chart, int width, int height, ChartRenderingInfo info) throws IOException Saves a chart to a file in JPEG format. This method allows you to pass in aChartRenderingInfo
object, to collect information about the chart dimensions/entities. You will need this info if you want to create an HTML image map.- Parameters:
file
- the file name (null
not permitted).quality
- the quality setting.chart
- the chart (null
not permitted).width
- the image width.height
- the image height.info
- the chart rendering info (null
permitted).- Throws:
IOException
- if there are any I/O errors.
-
writeBufferedImageAsJPEG
public static void writeBufferedImageAsJPEG(OutputStream out, BufferedImage image) throws IOException Writes aBufferedImage
to an output stream in JPEG format.- Parameters:
out
- the output stream (null
not permitted).image
- the image (null
not permitted).- Throws:
IOException
- if there are any I/O errors.
-
writeBufferedImageAsJPEG
public static void writeBufferedImageAsJPEG(OutputStream out, float quality, BufferedImage image) throws IOException Writes aBufferedImage
to an output stream in JPEG format.- Parameters:
out
- the output stream (null
not permitted).quality
- the image quality (0.0f to 1.0f).image
- the image (null
not permitted).- Throws:
IOException
- if there are any I/O errors.
-
writeBufferedImageAsPNG
public static void writeBufferedImageAsPNG(OutputStream out, BufferedImage image) throws IOException Writes aBufferedImage
to an output stream in PNG format.- Parameters:
out
- the output stream (null
not permitted).image
- the image (null
not permitted).- Throws:
IOException
- if there are any I/O errors.
-
writeBufferedImageAsPNG
public static void writeBufferedImageAsPNG(OutputStream out, BufferedImage image, boolean encodeAlpha, int compression) throws IOException Writes aBufferedImage
to an output stream in PNG format.- Parameters:
out
- the output stream (null
not permitted).image
- the image (null
not permitted).encodeAlpha
- encode alpha?compression
- the compression level (0-9).- Throws:
IOException
- if there are any I/O errors.
-
encodeAsPNG
Encodes aBufferedImage
to PNG format.- Parameters:
image
- the image (null
not permitted).- Returns:
- A byte array in PNG format.
- Throws:
IOException
- if there is an I/O problem.
-
encodeAsPNG
public static byte[] encodeAsPNG(BufferedImage image, boolean encodeAlpha, int compression) throws IOException Encodes aBufferedImage
to PNG format.- Parameters:
image
- the image (null
not permitted).encodeAlpha
- encode alpha?compression
- the PNG compression level (0-9).- Returns:
- The byte array in PNG format.
- Throws:
IOException
- if there is an I/O problem.
-
writeImageMap
public static void writeImageMap(PrintWriter writer, String name, ChartRenderingInfo info, boolean useOverLibForToolTips) throws IOException Writes an image map to an output stream.- Parameters:
writer
- the writer (null
not permitted).name
- the map name (null
not permitted).info
- the chart rendering info (null
not permitted).useOverLibForToolTips
- whether to use OverLIB for tooltips (http://www.bosrup.com/web/overlib/).- Throws:
IOException
- if there are any I/O errors.
-
writeImageMap
public static void writeImageMap(PrintWriter writer, String name, ChartRenderingInfo info, ToolTipTagFragmentGenerator toolTipTagFragmentGenerator, URLTagFragmentGenerator urlTagFragmentGenerator) throws IOException Writes an image map to the specified writer.- Parameters:
writer
- the writer (null
not permitted).name
- the map name (null
not permitted).info
- the chart rendering info (null
not permitted).toolTipTagFragmentGenerator
- a generator for the HTML fragment that will contain the tooltip text (null
not permitted ifinfo
contains tooltip information).urlTagFragmentGenerator
- a generator for the HTML fragment that will contain the URL reference (null
not permitted ifinfo
contains URLs).- Throws:
IOException
- if there are any I/O errors.
-
getImageMap
Creates an HTML image map. This method maps toImageMapUtils.getImageMap(String, ChartRenderingInfo, ToolTipTagFragmentGenerator, URLTagFragmentGenerator)
, using default generators.- Parameters:
name
- the map name (null
not permitted).info
- the chart rendering info (null
not permitted).- Returns:
- The map tag.
-
getImageMap
public static String getImageMap(String name, ChartRenderingInfo info, ToolTipTagFragmentGenerator toolTipTagFragmentGenerator, URLTagFragmentGenerator urlTagFragmentGenerator) Creates an HTML image map. This method maps directly toImageMapUtils.getImageMap(String, ChartRenderingInfo, ToolTipTagFragmentGenerator, URLTagFragmentGenerator)
.- Parameters:
name
- the map name (null
not permitted).info
- the chart rendering info (null
not permitted).toolTipTagFragmentGenerator
- a generator for the HTML fragment that will contain the tooltip text (null
not permitted ifinfo
contains tooltip information).urlTagFragmentGenerator
- a generator for the HTML fragment that will contain the URL reference (null
not permitted ifinfo
contains URLs).- Returns:
- The map tag.
-