794 lines
34 KiB
Text
794 lines
34 KiB
Text
*******************************
|
|
* JFREECHART: Version 1.0.8 *
|
|
*******************************
|
|
|
|
23 November 2007
|
|
|
|
(C)opyright 2000-2007, by Object Refinery Limited and Contributors.
|
|
|
|
-----------------
|
|
1. INTRODUCTION
|
|
-----------------
|
|
JFreeChart is a free chart library for the Java(tm) platform. It runs
|
|
on the Java 2 Platform (JDK 1.3 or later) and uses the Java 2D API for
|
|
drawing.
|
|
|
|
JFreeChart is licensed under the terms of the GNU Lesser General
|
|
Public Licence (LGPL). A copy of the licence is included in the
|
|
distribution.
|
|
|
|
Please note that JFreeChart is distributed WITHOUT ANY WARRANTY;
|
|
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
PARTICULAR PURPOSE. Please refer to the licence for details.
|
|
|
|
-------------------
|
|
2. LATEST VERSION
|
|
-------------------
|
|
The latest version of this class library can be obtained from:
|
|
|
|
http://www.jfree.org/jfreechart/
|
|
|
|
If you have an comments, suggestions or bugs to report, please post a
|
|
message in the JFreeChart forum.
|
|
|
|
-----------------
|
|
3. DOCUMENTATION
|
|
-----------------
|
|
You can download installation instructions
|
|
(jfreechart-1.0.8-install.pdf) from the JFreeChart home
|
|
page or the project page on SourceForge.
|
|
|
|
Further documentation for JFreeChart (the JFreeChart Developer Guide) is
|
|
available to purchase from by Object Refinery Limited, a company owned and
|
|
operated by David Gilbert (the original author of JFreeChart). For more
|
|
information, please see:
|
|
|
|
http://www.object-refinery.com/jfreechart/guide.html
|
|
|
|
Sales of the JFreeChart Developer Guide are an important source of funding for
|
|
the project. Please help us to continue developing free software.
|
|
|
|
API documentation files in HTML format are available on-line. If you wish
|
|
to keep a local copy of the API files, you can regenerate them directly
|
|
from the source code. You can do this using the 'javadoc' or 'gjdoc'
|
|
utilities directly, or with the Ant script (build.xml) included in the
|
|
distribution.
|
|
|
|
-----------------
|
|
4. DEPENDENCIES
|
|
-----------------
|
|
JFreeChart has the following dependencies:
|
|
|
|
(a) JDK 1.3.1 or higher - JFreeChart requires the Java2D and Collections
|
|
APIs, so it definitely won't work with JDK 1.1 (with a small amount of effort
|
|
you can get it to compile and run with JDK 1.2). If you are using JFreeChart
|
|
to create applets, this means that you cannot rely on the JVM integrated with
|
|
Microsoft's Internet Explorer - your users will need to have the Java 2
|
|
plug-in installed. Most other browsers (e.g. Firefox, Mozilla, Netscape,
|
|
Konqueror) support JRE 1.4, 1.5 or 1.6.
|
|
|
|
(b) JCommon - version 1.0.0 or later. The runtime jar file (version 1.0.12)
|
|
is included in the JFreeChart distribution. You can obtain the complete
|
|
source code for JCommon from:
|
|
|
|
http://www.jfree.org/jcommon/
|
|
|
|
JCommon is licensed under the terms of the GNU Lesser General Public Licence.
|
|
|
|
(c) GNU JAXP (JDK 1.3 only) - a free implementation of the standard XML
|
|
processing APIs for Java.
|
|
|
|
http://www.gnu.org/software/classpathx/jaxp/
|
|
|
|
Classes in the org.jfree.data.xml package require this library, or
|
|
another JAXP v1.1 compliant parser. The gnujaxp.jar file (from the
|
|
gnujaxp-1.0beta1.zip distribution) is included with JFreeChart. GNU
|
|
JAXP is licensed under the terms of the GNU General Public License
|
|
with an additional library exception.
|
|
|
|
THIS LIBRARY IS ONLY REQUIRED BY JFREECHART IF YOU ARE USING JDK 1.3.
|
|
|
|
(d) servlet.jar - classes in the org.jfree.chart.servlet
|
|
package require this file. The JFreeChart distribution includes the
|
|
servlet.jar file distributed with Tomcat 4.1.31. Applicable license
|
|
terms are published at:
|
|
|
|
http://java.sun.com/products/servlet/LICENSE
|
|
|
|
(e) JUnit - a unit testing framework (the junit.jar runtime file is
|
|
included in the distribution). JUnit is licensed under the terms
|
|
of the IBM Common Public License. You can find out more about JUnit
|
|
and/or download the latest version from:
|
|
|
|
http://www.junit.org
|
|
|
|
The JUnit tests included with JFreeChart have been created using JUnit
|
|
4.3.1.
|
|
|
|
-----------
|
|
5. SUPPORT
|
|
-----------
|
|
Support questions can be posted in the free support forum at
|
|
|
|
http://www.jfree.org/phpBB2/viewforum.php?f=3
|
|
|
|
We read all questions posted in the forum, and respond to as many as we can
|
|
in the time available. Unfortunately, there are too many questions to answer
|
|
them all.
|
|
|
|
If you need commercial support for JFreeChart, this is offered by
|
|
Object Refinery Limited:
|
|
|
|
http://www.object-refinery.com/jfreechart/support.html
|
|
|
|
--------------------
|
|
6. ANT BUILD SCRIPT
|
|
--------------------
|
|
An Ant build script (build.xml) is included in the distribution. This
|
|
is the same script that is used to create the JFreeChart distribution.
|
|
|
|
For more information about Ant:
|
|
|
|
http://ant.apache.org/
|
|
|
|
Please note that you will need to obtain the servlet.jar file (see the
|
|
DEPENDENCIES section above) before running the Ant script.
|
|
|
|
------------------------
|
|
7. THE DEMO APPLICATION
|
|
------------------------
|
|
A demo application that shows a selection of the charts that can be
|
|
generated is included in the JFreeChart distribution. To run the
|
|
demo (using JDK 1.3.1 or later), use the following command:
|
|
|
|
java -jar jfreechart-1.0.8-demo.jar
|
|
|
|
The complete source code for the demo application is available for
|
|
download when you purchase the JFreeChart Developer Guide.
|
|
|
|
The demo application uses iText, a library for creating PDF documents.
|
|
iText is licensed under the terms of the GNU Lesser General Public Licence
|
|
and is available to download from:
|
|
|
|
http://www.lowagie.com/iText/
|
|
|
|
---------------
|
|
8. LIMITATIONS
|
|
---------------
|
|
JFreeChart has some known limitations that will hopefully be addressed in
|
|
the future:
|
|
|
|
- with the XYPlot class, when the bounds of the range axis are calculated
|
|
automatically, all of the data is used, not just the subset that is
|
|
visible on the chart;
|
|
- some renderers do not respect the series visibility flags yet;
|
|
- the chart property editors (accessible by right-clicking on the chart
|
|
panel) are horribly out of date and probably shouldn't be used;
|
|
- item labels (if displayed) are not taken into account for the
|
|
automatically calculated axis range. As a workaround, you can increase
|
|
the axis margins;
|
|
- tick labels on a DateAxis that uses a SegmentedTimeline can be
|
|
problematic;
|
|
- there is no support for writing charts to JPEG format on JDK 1.3. JPEG
|
|
is not a good format for charts in any case, and it is usually better to
|
|
use PNG format.
|
|
|
|
If there are other items that you think should be listed here,
|
|
please post a bug report.
|
|
|
|
-----------------
|
|
9. GNU CLASSPATH
|
|
-----------------
|
|
GNU Classpath is a project to create a free, clean-room implementation of the
|
|
standard Java(tm) class libraries:
|
|
|
|
http://www.gnu.org/software/classpath/
|
|
|
|
JFreeChart should work quite well with free runtimes based on
|
|
GNU Classpath 0.92 or later. We are grateful to all the GNU Classpath
|
|
developers that have made this possible.
|
|
|
|
---------------
|
|
10. WHAT's NEW
|
|
---------------
|
|
A list of changes in recent versions:
|
|
|
|
1.0.8 : (23-Nov-2007)
|
|
- primarily a bug fix release. See the NEWS and ChangeLog files for a
|
|
more detailed description of the changes in this release.
|
|
|
|
1.0.7 : (14-Nov-2007)
|
|
- See the NEWS and ChangeLog files for a more detailed description of
|
|
the changes in this release.
|
|
|
|
1.0.6 : (15-Jun-2007)
|
|
- the VectorRenderer and associated dataset classes have been promoted
|
|
to the standard API from the 'experimental' source tree. See the
|
|
NEWS and ChangeLog files for a more detailed description of the
|
|
changes in this release.
|
|
|
|
1.0.5 : (23-Mar-2007)
|
|
- this release contains a new DeviationRenderer, enhancements to a
|
|
number of existing classes and numerous bug fixes, see the NEWS
|
|
and ChangeLog files for details.
|
|
|
|
1.0.4 : (9-Feb-2007)
|
|
- this release contains both new features and bug fixes, see the NEWS
|
|
and ChangeLog files for details.
|
|
|
|
1.0.3 : (17-Nov-2006)
|
|
- this release contains a new DialPlot class (in 'experimental') that
|
|
will hopefully replace the MeterPlot class, once the API has been
|
|
polished a little, plus many other new features and bug fixes. See
|
|
the NEWS and ChangeLog files for details.
|
|
|
|
1.0.2 : (25-Aug-2006)
|
|
- this release contains both new features and bug fixes, see the NEWS
|
|
and ChangeLog files for details.
|
|
|
|
1.0.1 : (27-Jan-2006)
|
|
- primarily a bug fix release, see the NEWS and ChangeLog files for
|
|
details.
|
|
|
|
1.0.0 : (2-Dec-2005)
|
|
- the first stable release of the JFreeChart class library, all future
|
|
releases in the 1.0.x series will aim to maintain backward
|
|
compatibility with this release;
|
|
- see the ChangeLog file for a detailed list of changes.
|
|
|
|
1.0.0-rc3 : (28-Nov-2005)
|
|
- the third "release candidate" for version 1.0.0, this release
|
|
fixes some issues with the 1.0.0-rc2 release (mainly concerning
|
|
packaging of resource bundles for localisation).
|
|
- if no significant problems are reported in the next few days,
|
|
the 1.0.0 "final" release will be posted on 2-Dec-2005.
|
|
|
|
1.0.0-rc2 : (25-Nov-2005)
|
|
- the second "release candidate" for version 1.0.0. If no problems
|
|
are reported, 1.0.0 "final" will be released on 2-Dec-2005.
|
|
- see the ChangeLog file for a detailed list of changes in this
|
|
release.
|
|
|
|
1.0.0-rc1 : (2-Jun-2005)
|
|
- this is a "release candidate" for version 1.0.0. If no
|
|
significant API problems are reported, this release will be
|
|
re-released as version 1.0.0.
|
|
- see CHANGELOG.txt for further details.
|
|
|
|
1.0.0-pre2 : (10-Mar-2005)
|
|
- see CHANGELOG.txt for further details.
|
|
|
|
1.0.0-pre1 : (29-Nov-2004)
|
|
- see CHANGELOG.txt for further details.
|
|
|
|
0.9.21 : (9-Sep-2004)
|
|
- added new axes: PeriodAxis and ModuloAxis.
|
|
- split org.jfree.data and org.jfree.chart.renderer into
|
|
subpackages for 'category' and 'xy' charts.
|
|
- Sun PNG encoder is now used, if available.
|
|
- a new demo application makes it easier to preview the
|
|
chart types that JFreeChart can create.
|
|
- added a new series visibility flag to the AbstractRenderer
|
|
class.
|
|
- added support for GradientPaint in interval markers.
|
|
- see CHANGELOG.txt for further details.
|
|
|
|
0.9.20 : (7-Jun-2004)
|
|
- primarily bug fixes, see CHANGELOG.txt for further details.
|
|
|
|
0.9.19 : (28-May-2004)
|
|
- added methods to XYDataset that return double primitives;
|
|
- removed distinction between "primary" and "secondary" datasets,
|
|
renderers and axes;
|
|
- added fixed legend item options to CategoryPlot and XYPlot;
|
|
- legend changes by Barek Naveh;
|
|
- removed Log4j dependency;
|
|
- many, many bug fixes;
|
|
- see CHANGELOG.txt for further details.
|
|
|
|
0.9.18 : (15-Apr-2004)
|
|
- new legend anchor options;
|
|
- fixed broken JPEG export;
|
|
- fixed title size problems;
|
|
- various other bug fixes;
|
|
|
|
0.9.17 : (26-Mar-2004)
|
|
- pie chart enhancements for labelling, shading and multiple pie
|
|
charts (2D or 3D) on a single plot;
|
|
- new PolarPlot class added;
|
|
- XYSeries can now be sorted or unsorted;
|
|
- createBufferedImage() method can now scale charts;
|
|
- domain and range markers now support intervals;
|
|
- item labels are now supported by some XYItemRenderers;
|
|
- tooltip and item label generators now use MessageFormat class;
|
|
- added new XYBarDataset class;
|
|
- added transparency support to PNG export;
|
|
- numerous other small enhancements and bug fixes, see the
|
|
CHANGELOG.txt file for more details;
|
|
|
|
0.9.16 : (09-Jan-2004)
|
|
- this release contains bug fixes and some minor feature
|
|
enhancements (title and category label wrapping, legend shape
|
|
scaling, enhanced performance for the DefaultTableXYDataset class);
|
|
- added Spanish localisation files;
|
|
|
|
0.9.15 : (28-Nov-2003)
|
|
- the focus of this release is bug fixes - quite a number of issues
|
|
have been resolved, please check the bug database for details;
|
|
- added a new Wafer Map chart type;
|
|
- added a cyclic axis;
|
|
- added localisation files for _ru;
|
|
|
|
0.9.14 : (17-Nov-2003)
|
|
- implemented zooming for the FastScatterPlot class;
|
|
- added item label support for stacked bar charts, and new fall back
|
|
options for item labels that don't fit within bars;
|
|
- modified the CategoryAxis class to allow additional options for the
|
|
alignment and rotation of category labels;
|
|
- addition of the AxisState class, used in the drawing of axes to
|
|
eliminate a bug when multiple threads draw the same axis
|
|
simultaneously;
|
|
- provided additional attributes in the DateTickUnit class to improve
|
|
labelling on a segmented DateAxis;
|
|
- added support for GradientPaint in bar charts;
|
|
- updated the PNGEncoder;
|
|
- fixes for tick label positioning on axes;
|
|
- various Javadoc updates;
|
|
- numerous bug fixes;
|
|
|
|
0.9.13 : (26-Sep-2003)
|
|
- various enhancements to the stacked area XY charts;
|
|
- added a completion indicator for the Gantt chart;
|
|
- range and domain markers can now be placed in the foreground or the
|
|
background;
|
|
- more fixes for cloning and serialization;
|
|
- fixed mouse event bug for combined charts;
|
|
- fixed bugs in the PngEncoder class;
|
|
- incorporated .properties files that were missing from the 0.9.12
|
|
distribution;
|
|
|
|
0.9.12 : (11-Sep-2003)
|
|
- extended box-and-whisker plots to work with the CategoryPlot class
|
|
as well as the XYPlot class (based on work by David Browning);
|
|
- added a new LayeredBarRenderer (by Arnaud Lelievre);
|
|
- added support for stacked area charts with the XYPlot class (thanks
|
|
to Richard Atkinson);
|
|
- improved HTML image map support (thanks to Richard Atkinson);
|
|
- added localized resources for the chart property editors (thanks to
|
|
Arnaud Lelievre). Current translations include French and Portugese
|
|
(thanks to Eduardo Ramalho);
|
|
- added facility for setting all rendering hints;
|
|
- improved support for cloning and serialization;
|
|
- fixed a bug in the XYSeries class that prevented the TableXYDataset
|
|
from functioning correctly;
|
|
- improved date axis labelling with segmented time lines;
|
|
- fixed several bugs in the secondary dataset/axis/renderer code;
|
|
- fixed bugs in the JDBCCategoryDataset class;
|
|
- numerous other bug fixes;
|
|
|
|
0.9.11 : (8-Aug-2003)
|
|
- added support for box-and-whisker plots, thanks to David Browning;
|
|
- lots of bug fixes;
|
|
|
|
API changes in this release are minimal and have been implemented using
|
|
deprecation, so code written against 0.9.10 should recompile.
|
|
|
|
0.9.10 : (25-Jul-2003)
|
|
- added support for multiple secondary axes, datasets and
|
|
renderers;
|
|
- minor feature enhancements and bug fixes;
|
|
|
|
0.9.9 : (10-Jul-2003) PLEASE NOTE THAT MAJOR CHANGES HAVE BEEN MADE IN THIS
|
|
RELEASE AND ONE OR TWO FEATURES MAY BE BROKEN. PLEASE REPORT BUGS SO THEY CAN
|
|
BE FIXED FOR THE NEXT RELEASE.
|
|
|
|
- merged the HorizontalCategoryPlot and VerticalCategoryPlot classes,
|
|
into the CategoryPlot class;
|
|
- merged the horizontal and vertical axis classes;
|
|
- merged the horizontal and vertical renderer classes;
|
|
- CategoryPlot and XYPlot now support both horizontal and vertical
|
|
orientation via the setOrientation(...) method;
|
|
- merged horizontal and vertical methods in the ChartFactory class;
|
|
- created new combined plot classes: CombinedDomainCategoryPlot,
|
|
CombinedRangeCategoryPlot, CombinedDomainXYPlot and
|
|
CombinedRangeXYPlot (these can all be drawn with a horizontal or
|
|
vertical orientation);
|
|
- Bill Kelemen has enhanced the DateAxis class to handle segmented
|
|
timelines. This can be used, for example, to skip weekends for
|
|
daily stock price charts;
|
|
- Richard Atkinson has updated the ServletUtilities class;
|
|
- Bryan Scott has added an XYDatasetTableModel class for presenting
|
|
datasets in a JTable;
|
|
- modified XYPlot to allow renderers to use multiple passes through
|
|
the dataset;
|
|
- added new XYDifferenceRenderer;
|
|
- added support for colored bands between gridlines in XYPlot;
|
|
- added new XYDrawableAnnotation class;
|
|
- added a new attribute to control the order of dataset rendering in
|
|
a CategoryPlot;
|
|
- extended the value label mechanism for the renderers, to allow
|
|
better (per series) control over label generation, positioning and
|
|
visibility;
|
|
- CategoryItemTooltipGenerator has been renamed
|
|
CategoryItemLabelGenerator, since it is now being used to generated
|
|
item labels as well as tooltips;
|
|
- there is now support for horizontal stacked 3D bar charts;
|
|
- added support for range markers against secondary axis in a
|
|
CategoryPlot;
|
|
- added labels to domain and range markers;
|
|
- added a new HistogramDataset class (contributed by Jelai Wang) to
|
|
make it easier to create histograms with JFreeChart;
|
|
- moved the DrawingSupplier into the plot class, renderers now
|
|
reference the supplier from the plot (parent plot for combined and
|
|
overlaid charts). This means that renderers now share a single
|
|
DrawingSupplier by default, which simplifies the creation of
|
|
combined charts;
|
|
- changed the ColorBarAxis classes that extended the NumberAxis class,
|
|
to a single ColorBar class that wraps a ValueAxis (may have broken
|
|
one or two things in the process);
|
|
- Barak Naveh has contributed new classes MatrixSeries and
|
|
MatrixSeriesCollection, along with demos: BubblyBubblesDemo.java
|
|
and BubblyBubblesDemo2.java;
|
|
- the TextTitle class now has a background paint attribute;
|
|
- the StandardLegend class now generates LegendEntity objects if a
|
|
ChartRenderingInfo instance is supplied to the draw(...) method;
|
|
- extended the CategoryTextAnnotation class to take into account a
|
|
category anchor point. See the SurveyResultsDemo.java application
|
|
for an example;
|
|
- included numerous bug fixes;
|
|
|
|
0.9.8 : (24-Apr-2003)
|
|
- changed package naming from com.jrefinery.* to org.jfree.*;
|
|
- added new TimePeriodValuesCollection class;
|
|
- added MIME type code to ServletUtilities class;
|
|
- reversed the order of PieDataset and KeyedValuesDataset in
|
|
the class hierarchy;
|
|
- reversed the order of CategoryDataset and KeyedValues2DDataset
|
|
in the class hierarchy;
|
|
- minor bug fixes;
|
|
|
|
0.9.7 : (11-Apr-2003)
|
|
- added a new ValueDataset interface and DefaultValueDataset
|
|
class, and changed the CompassPlot class to use this instead
|
|
of MeterDataset;
|
|
- added DataUtilities class, to support creation of Pareto
|
|
charts (new demo included);
|
|
- updated writeImageMap method as suggested by Xavier Poinsard
|
|
(see Feature Request 688079);
|
|
- implemented Serializable for most classes (this is likely to
|
|
require further testing);
|
|
- incorporated contour plot updates from David M. O'Donnell;
|
|
- added new CategoryTextAnnotation and XYLineAnnotation
|
|
classes;
|
|
- added new HorizontalCategoryAxis3D class contributed by
|
|
Klaus Rheinwald;
|
|
|
|
Bug fixes:
|
|
- added a workaround for JVM crash (a JDK bug) in pie charts
|
|
with small sections (see bug report 620031);
|
|
- fixed minor bug in HorizontalCategoryPlot constructor (see
|
|
bug report 702248);
|
|
- added code to ensure HorizontalNumberAxis3D is not drawn if
|
|
it is not visible (see bug report 702466);
|
|
- added small fix for suppressed chart change events (see bug
|
|
report 690865);
|
|
- added pieIndex parameter to tooltip and URL generators for
|
|
pie charts;
|
|
- fixed bug in getLastMillisecond() method for the Second
|
|
class and the getFirstMillisecond() method for the Year
|
|
class (picked up in JUnit tests);
|
|
- in TextTitle, changed width used for relative spacing to fix
|
|
bug 703050;
|
|
|
|
0.9.6 : (17-Feb-2003) Bug fixes:
|
|
- fixed null pointer exception in DefaultCategoryDataset;
|
|
- fixed update problem for PaintTable, StrokeTable and
|
|
ShapeTable objects;
|
|
- added methods to control colors in PiePlot (these were
|
|
inadvertantly removed in the changes made for 0.9.5);
|
|
- fixed auto-range update problem for secondary axis;
|
|
- fixed missing category labels in the overlaid category plot;
|
|
- fixed constructors for symbolic axes;
|
|
- corrected error in Javadoc generation (Ant script);
|
|
|
|
0.9.5 : (6-Feb-2003) PLEASE NOTE THAT MAJOR CHANGES TO THE
|
|
JFREECHART API HAVE BEEN MADE IN THIS RELEASE!
|
|
|
|
- added support for secondary axes, datasets and renderers;
|
|
- added new data interfaces (Value, Values, Values2D,
|
|
KeyedValues and KeyedValues2D) and incorporated these into
|
|
the existing PieDataset and CategoryDataset interfaces.
|
|
- modified the CategoryDataset interface to be more
|
|
symmetrical, data is organised in rows and columns (as
|
|
before) but can now be accessed by row/column index or
|
|
row/column key.
|
|
- added support for reading PieDatasets and CategoryDatasets
|
|
from XML files.
|
|
- created separate packages for the axes
|
|
(com.jrefinery.chart.axis), plots (com.jrefinery.chart.plot)
|
|
and renderers (com.jrefinery.chart.renderer).
|
|
- series attributes (paint, outline paint, stroke and shape)
|
|
are now controlled by the renderer classes using lookup
|
|
tables. Introduced the DrawingSupplier interface (and
|
|
DefaultDrawingSupplier class) which is used to populate the
|
|
lookup tables from a common source (necessary to coordinate
|
|
complex combined charts).
|
|
- the chart legend can now display shapes corresponding to
|
|
series.
|
|
- moved responsibility for category distribution to the
|
|
CategoryAxis class, which tidies up the code in the
|
|
CategoryPlot classes.
|
|
- gridlines are now controlled by the CategoryPlot and XYPlot
|
|
classes, not the axes (included in this change is the
|
|
addition of gridlines for the CategoryPlot domain values).
|
|
- changed the list of titles in the JFreeChart class to a
|
|
title and a list of subtitles.
|
|
- added new renderers for XYPlot (XYBubbleRenderer and
|
|
YIntervalRenderer).
|
|
- modified Gantt chart to display sub-tasks.
|
|
- added ContourPlot class (still experimental) by David
|
|
M. O'Donnell.
|
|
- introduced new MovingAverage class.
|
|
- ChartMouseEvent now includes source chart.
|
|
- numerous bug fixes.
|
|
- lots of Javadoc updates.
|
|
|
|
0.9.4 : (18-Oct-2002) Added a new stacked area chart (contributed by Dan
|
|
Rivett) and a compass plot (contributed by Bryan Scott). Updated
|
|
the ThermometerPlot class. Added a new XYDotRenderer for scatter
|
|
plots. Modified combined and overlaid plots to use the series colors
|
|
specified in the sub plot rather than the parent plot (this makes it
|
|
easier to align the colors in the legend). Added Regression class
|
|
for linear and power regressions. BasicTimeSeries can now
|
|
automatically drop "old" data. Some clean-up work in the code for
|
|
tooltips and the event listener mechanism. Richard Atkinson has
|
|
incorporated some useful extensions for servlets/JSP developers.
|
|
|
|
Ran Checkstyle and corrected issues reported for most classes.
|
|
Checkstyle is a free utility that you can download from:
|
|
|
|
http://checkstyle.sourceforge.net
|
|
|
|
Fixed bugs and updated documentation.
|
|
|
|
API changes include:
|
|
- added tickMarkPaint to Axis constructor (also affects
|
|
subclasses);
|
|
- added getLegendItems() to Plot, and deprecated
|
|
getLegendItemLabels();
|
|
- added getLegendItem(int) to XYItemRenderer and
|
|
CategoryItemRenderer.
|
|
- most 'protected' member variables have been changed to
|
|
'private'.
|
|
|
|
0.9.3 : (4-Sep-2002) Added multiple pie charts based on
|
|
CategoryDataset. Updated logarithmic axes. Improved URL
|
|
support for image map generation. Moved the com.jrefinery.data
|
|
package from JCommon to JFreeChart. Added simple framework for
|
|
chart annotations. Improved control over renderers. Duplicate
|
|
x-values now allowed in XYSeries. Optional category label
|
|
skipping in category axes. Added CategoriesPaint attribute to
|
|
AbstractCategoryItemRenderer. Added new attributes to
|
|
MeterPlot class. Updated 3D pie chart to observe start angle
|
|
and direction, and also foreground alpha < 1.0. Improved
|
|
Javadoc comments. New demo applications, including:
|
|
AnnotationDemo1, EventFrequencyDemo, JDBCCategoryChartDemo,
|
|
JDBCPieChartDemo, JDBCXYChartDemo and MinMaxCategoryPlotDemo.
|
|
Bug fixes:
|
|
- negative percentages on PiePlot.
|
|
- added listener notification to setXXXAxis(...) methods.
|
|
- fixed DomainInfo method name clash.
|
|
- added DomainIsPointsInTime flag to TimeSeriesCollection to
|
|
give better control over auto range on axis for time series
|
|
charts.
|
|
- axis margins for date axes are no longer hard-coded.
|
|
- fix for ordering of categories in JdbcCategoryDataset.
|
|
- added check for null axis in mouse click handler.
|
|
|
|
The CVS repository at SourceForge has also been restructured
|
|
to match the distribution directory layout.
|
|
|
|
0.9.2 : (28-Jun-2002) PiePlot now has startAngle and direction
|
|
attributes. Added support for image map generation. Added a
|
|
new Pie3DPlot class. Added label drawing code to bar
|
|
renderers. Added optional range markers to horizontal number
|
|
axis. Added bar clipping to avoid PRExceptions in bar
|
|
charts. JFreeChartDemo has been modified and now includes
|
|
examples of the dial and thermometer plots.
|
|
Bug fixes:
|
|
- auto range for VerticalNumberAxis when zero is forced to be
|
|
included in the range.
|
|
- fixed null pointer exception in StackedVerticalBarRenderer3D;
|
|
- Added get/set methods for min/max chart drawing dimensions
|
|
in ChartPanel;
|
|
- HorizontalIntervalBarRenderer now handles single category;
|
|
- verticalTickLabels now possible in HorizontalNumberAxis3D;
|
|
- removed unnecessary imports;
|
|
|
|
0.9.1 : (14-Jun-2002) Bug fixes and Javadoc updates.
|
|
- fixed auto range calculation for category plots;
|
|
- fixed event notification for XYPlot;
|
|
- fixed auto axis range for Gantt charts;
|
|
- check for null popup menu in ChartPanel.mouseDragged;
|
|
- new checks for null info in renderers;
|
|
- range markers now drawn only if in visible axis range;
|
|
|
|
0.9.0 : (7-Jun-2002) New plots including an area chart, a horizontal
|
|
3D bar chart, a Gantt chart and a thermometer chart.
|
|
Combination plots have been reworked to provide a
|
|
simpler framework, and extends to allow category plots to be
|
|
combined. There is now a facility to add a ChartMouseListener
|
|
to the ChartPanel (formerly JFreeChartPanel). An interactive
|
|
zooming feature (experimental at this point) is now available
|
|
for XYPlots. A new Polish translation has been added. Several
|
|
fixes have been applied to the default tool tip generators. A
|
|
workaround has been added to fix the alignment between time
|
|
series charts and the date axis. There are some improvements
|
|
to the VerticalLogarithmicAxis class, and now a corresponding
|
|
HorizontalLogarithmicAxis class. Additional demonstration
|
|
applications have been added. Fixed the popup menu bug.
|
|
|
|
0.8.1 : (5-Apr-2002) Localised resource bundles for French, German and
|
|
Spanish languages (thanks to Anthony Boulestreau, Thomas Meier
|
|
and Hans-Jurgen Greiner for the translations). An area XY
|
|
plot and meter chart contributed by Hari. Symbol charts
|
|
contributed by Anthony Boulestreau. An improved
|
|
CandleStickRenderer class from Sylvain Vieujot. Updated
|
|
servlet code from Bryan Scott. XYItemRenderers now have a
|
|
change listener mechanism and therefore do not have to be
|
|
immutable. Additional demonstration applications for
|
|
individual chart types. Minor bug fixes.
|
|
|
|
0.8.0 : (22-Mar-2002) All the category plots are now controlled
|
|
through the one class (CategoryPlot) with plug-in renderers.
|
|
Added a ResourceBundle for user interface items that require
|
|
localisation. Added a logarithmic axis class contributed by
|
|
Mike Duffy and some new JDBC and servlet code contributed by
|
|
Bryan Scott. Updated the JCommon class library to improve
|
|
handling of time periods in different time zones.
|
|
|
|
0.7.4 : (6-Mar-2002) Bug fixes in the JCommon Class Library. Various
|
|
Javadoc comment updates. Some minor changes to the
|
|
code. Added new domain name (http://www.object-refinery.com)
|
|
in the source headers.
|
|
|
|
0.7.3 : (14-Feb-2002) Bug fixes.
|
|
|
|
0.7.2 : (8-Feb-2002) Integrated the WindPlot code from Achilleus
|
|
Mantzios. Added an optional background image for the
|
|
JFreeChart class, and another optional background image for
|
|
the Plot class. Added alpha-transparency for the plot
|
|
foreground and background. Added new pie chart label types
|
|
that show values. Fixed a bug with the legend that results in
|
|
a loop at small chart sizes. Added some tooltip methods that
|
|
were missing from the previous version. Changed the Insets
|
|
class on chart titles to a new Spacer class that will allow
|
|
for relative or absolute insets (the plan is to eventually
|
|
replace all Insets in the JFreeChart classes). Fixed a bug in
|
|
the setAutoRangeIncludesZero method of the NumberAxis class.
|
|
Added the instructions that were missing from the copies of
|
|
the GNU Lesser General Public Licence included with JFreeChart.
|
|
|
|
0.7.1 : (25-Jan-2002) Added tooltips, crosshairs and zooming
|
|
functions, thanks to Jonathan Nash and Hans-Jurgen Greiner
|
|
for contributing the code that these features are based on.
|
|
Moved the combination charts into the package
|
|
com.jrefinery.chart.combination, made a number of other small
|
|
API changes and fixed some bugs. Removed the Javadoc HTML
|
|
from the download to save space (you can regenerate it from
|
|
the source code if you need it).
|
|
|
|
0.7.0 : (11-Dec-2001) New combination plots developed by Bill
|
|
Kelemen. Added Wolfgang Irler's servlet demo to the standard
|
|
download. The About window in the demo application now
|
|
includes a list of developers that have contributed to the
|
|
project.
|
|
|
|
0.6.0 : (27-Nov-2001) New plots including scatter plot, stacked bar
|
|
charts and 3D bar charts. Improved pie chart. Data
|
|
interfaces and classes moved to the JCommon class library.
|
|
New properties to control spacing on bar charts. New
|
|
auto-tick mechanism. JFreeChartPanel now incorporates
|
|
buffering, and popup menu. Javadocs revised. Fixed numerous
|
|
bugs from version 0.5.6. Demo application updated.
|
|
|
|
----------------
|
|
10. CONTRIBUTORS
|
|
----------------
|
|
JFreeChart wouldn't be half the library that it is today without the
|
|
contributions (large and small) that have been made by the developers listed
|
|
below:
|
|
|
|
- Eric Alexander
|
|
- Richard Atkinson
|
|
- David Basten
|
|
- David Berry
|
|
- Chris Boek
|
|
- Zoheb Borbora
|
|
- Anthony Boulestreau
|
|
- Jeremy Bowman
|
|
- Nicolas Brodu
|
|
- Jody Brownell
|
|
- David Browning
|
|
- Soren Caspersen
|
|
- Chuanhao Chiu
|
|
- Brian Cole
|
|
- Pascal Collet
|
|
- Martin Cordova
|
|
- Paolo Cova
|
|
- Mike Duffy
|
|
- Don Elliott
|
|
- Rune Fauske
|
|
- Jonathan Gabbai
|
|
- Serge V. Grachov
|
|
- Daniel Gredler
|
|
- Joao Guilherme Del Valle
|
|
- Hans-Jurgen Greiner
|
|
- Nick Guenther
|
|
- Aiman Han
|
|
- Cameron Hayne
|
|
- Jon Iles
|
|
- Wolfgang Irler
|
|
- Sergei Ivanov
|
|
- Adriaan Joubert
|
|
- Darren Jung
|
|
- Xun Kang
|
|
- Bill Kelemen
|
|
- Norbert Kiesel
|
|
- Gideon Krause
|
|
- Pierre-Marie Le Biot
|
|
- Arnaud Lelievre
|
|
- Wolfgang Lenhard
|
|
- David Li
|
|
- Yan Liu
|
|
- Tin Luu
|
|
- Craig MacFarlane
|
|
- Achilleus Mantzios
|
|
- Thomas Meier
|
|
- Jim Moore
|
|
- Jonathan Nash
|
|
- Barak Naveh
|
|
- David M. O'Donnell
|
|
- Krzysztof Paz
|
|
- Tomer Peretz
|
|
- Xavier Poinsard
|
|
- Andrzej Porebski
|
|
- Viktor Rajewski
|
|
- Eduardo Ramalho
|
|
- Michael Rauch
|
|
- Cameron Riley
|
|
- Klaus Rheinwald
|
|
- Dan Rivett
|
|
- Scott Sams
|
|
- Michel Santos
|
|
- Thierry Saura
|
|
- Andreas Schneider
|
|
- Jean-Luc SCHWAB
|
|
- Bryan Scott
|
|
- Tobias Selb
|
|
- Mofeed Shahin
|
|
- Pady Srinivasan
|
|
- Greg Steckman
|
|
- Roger Studner
|
|
- Gerald Struck
|
|
- Irv Thomae
|
|
- Eric Thomas
|
|
- Rich Unger
|
|
- Daniel van Enckevort
|
|
- Laurence Vanhelsuwe
|
|
- Sylvain Vieujot
|
|
- Jelai Wang
|
|
- Mark Watson
|
|
- Alex Weber
|
|
- Richard West
|
|
- Matthew Wright
|
|
- Benoit Xhenseval
|
|
- Christian W. Zuckschwerdt
|
|
- Hari
|
|
- Sam (oldman)
|
|
|
|
It is possible that I have missed someone on this list, if that
|
|
applies to you, please e-mail me.
|
|
|
|
Dave Gilbert (david.gilbert@object-refinery.com)
|
|
JFreeChart Project Leader
|