JFreeChart is an open-source Java charting engine and UI toolkit. To an already rich repository of charting-related classes, the latest release adds a DialPlot class, a new IntervalXYDataset implementation, and includes many performance improvements.
JFreeChart is an open-source project headed up by the Object Refinery. With a history over six years, a rich API, excellent documentation, and a business-friendly LGPL license, JFreeChart has emerged as one of the main Java charting tools used in open- and close-source projects, such as JBoss's app server, Google's AdWords product, as well as JasperReports.
As with other Java charting libraries, JFreeCharts supports the creation of both server- and client-side charts, and provides APIs to define a large variety of chart from simple bar charts to Gantt diagrams. Charts can be output to image file formats, such as JGP and PNG, as well as to vector-based graphics formats, including SVG, EPS, and PDF. Chart drawing to Swing components is also supported.
JFreeCharts 1.0.3 adds a new DialPlot class, as well as improvements to the RegularTimePeriod class, making it easier to chart time-based data sets. Several performance enhancements are also part of this release.
Charts can provide a visually appealing way to display large datasets, and Java lacks no high-quality charting APIs. What is your favorite Java charting engine?