Statistics
| Revision:

## root / tmp / org.txm.libs.jfreechart / about.html @ 499

 1 

******************************** 
*  JFREECHART: Version 1.0.17  * 
******************************** 
24 November 2013 
(C)opyright 2000-2013, 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 (JRE 1.6.0 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. 
We are grateful to the many developers that have contributed to JFreeChart. 
The contributors are listed below in section 10. 
------------------- 
2.  LATEST VERSION 
------------------- 
The latest version of this class library can be obtained from: 
    http://www.jfree.org/jfreechart/ 
If you have any comments, suggestions or bugs to report, please post a 
message in the JFreeChart forum. 
----------------- 
3.  DOCUMENTATION 
----------------- 
You can download installation instructions 
(jfreechart-1.0.17-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' utility directly, 
or with the Ant script (build.xml) included in the distribution. 
----------------- 
4.  DEPENDENCIES 
----------------- 
JFreeChart has the following dependencies: 
(a)  JRE/JDK 1.6.0 or higher - note that the previous release of JFreeChart 
worked with JRE/JDK 1.4.2 or later.  With a bit of hacking, it may be possible  
to get JFreeChart working on these older versions, but we are no longer  
supporting it. 
(b)  JCommon - version 1.0.0 or later.  The runtime jar file (version 1.0.21) 
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)  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 
(d)  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/forum/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. 
-------------------- 
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/ 
If you want to rebuild the JFreeChart jar file, we highly recommend that you 
use this script as it includes certain files (for example, .properties files) 
that you MUST have in the jar file for JFreeChart to function correctly. 
------------------------ 
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.6.0 or later), use the following command: 
    java -jar jfreechart-1.0.17-demo.jar 
The complete source code for the demo application is available for 
download when you purchase the JFreeChart Developer Guide. 
The demo application also links to the JFreeSVG and OrsonPDF libraries, to  
provide export facilities to the SVG and PDF formats.  These fast, lightweight  
libraries are not free, licenses can be purchased from Object Refinery Limited.  
An additional tab added to the demo application in version 1.0.17 showcases 
Orson Charts 3D, a new library by Object Refinery Limited.  You can find out 
more about Orson Charts at: 
    http://www.object-refinery.com/orsoncharts/ 
--------------- 
8.  LIMITATIONS 
--------------- 
JFreeChart has some known limitations that will hopefully be addressed in 
the future: 
    - 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; 
If there are other items that you think should be listed here, 
please post a bug report. 
-------------- 
9.  WHAT's NEW 
-------------- 
A list of changes in recent versions: 
1.0.17 : (22-Nov-2013) 
        - see the NEWS and ChangeLog files for details. 
1.0.16 : (13-Sep-2013) 
        - bumped the required JRE to 1.6, enhanced axis labelling, provided 
          integration with JFreeSVG and OrsonPDF for vector output, and fixed  
          bugs. 
1.0.15 : (4-Jul-2013) 
        - various minor feature enhancements and a range of bug fixes, see the  
          NEWS and ChangeLog files for details. 
1.0.14 : (20-Nov-2011) 
        - added support for multiple axes in PolarPlot, performance 
          improvements in the TimeSeriesCollection class, mouse wheel rotation 
          in the PiePlot class, improved Maven support, a range of other 
          minor functional enhancements and numerous bug fixes - see the NEWS 
          and ChangeLog files for details. 
1.0.13 : (17-Apr-2009) 
        - there are some significant new features in this release, as well 
          as performance enhancements and bug fixes - see the NEWS and 
          ChangeLog files for details. 
1.0.12 : (31-Dec-2008) 
        - added support for minor tick marks, mapping datasets to more than 
          one axis, and numerous bug fixes - see the NEWS and ChangeLog files 
          for details. 
1.0.11 : (18-Sep-2008) 
        - this release includes a new chart theming mechanism, and numerous 
          other feature enhancements and bug fixes - see the NEWS and ChangeLog 
          files for details. 
1.0.10 : (8-Jun-2008) 
        - another general maintenance release - see the NEWS and ChangeLog 
          files for more details. 
1.0.9 : (4-Jan-2008) 
        - this release fixes a security advisory with respect to the HTML 
          image maps generated by JFreeChart - see the NEWS file for more 
          information.  In addition, a number of bugs have been fixed. 
1.0.8.0 : (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.0.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.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 
    - Thomas A Caswell 
    - Chuanhao Chiu 
    - Brian Cole 
    - Pascal Collet 
    - Martin Cordova 
    - Paolo Cova 
    - Greg Darke 
    - 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 
    - Martin Hoeller (xS+S) 
    - Jon Iles 
    - Wolfgang Irler 
    - Sergei Ivanov 
    - Nina Jeliazkova 
    - Adriaan Joubert 
    - Darren Jung 
    - Xun Kang 
    - Bill Kelemen 
    - Norbert Kiesel 
    - Petr Kopac 
    - Gideon Krause 
    - Dave Law; 
    - Pierre-Marie Le Biot 
    - Arnaud Lelievre 
    - Wolfgang Lenhard 
    - Leo Leung 
    - David Li 
    - Yan Liu 
    - Tin Luu 
    - Craig MacFarlane 
    - Achilleus Mantzios 
    - Thomas Meier 
    - Jim Moore 
    - Jonathan Nash 
    - Barak Naveh 
    - David M. O'Donnell 
    - Krzysztof Paz 
    - Eric Penfold 
    - Tomer Peretz 
    - Xavier Poinsard 
    - Andrzej Porebski 
    - Viktor Rajewski 
    - Eduardo Ramalho 
    - Michael Rauch 
    - Cameron Riley 
    - Klaus Rheinwald 
    - Dan Rivett 
    - Scott Sams 
    - Michel Santos 
    - Thierry Saura 
    - Patrick Schlott 
    - Andreas Schneider 
    - Christoph Schroeder 
    - Jean-Luc SCHWAB 
    - Bryan Scott 
    - Tobias Selb 
    - Darshan Shah 
    - Mofeed Shahin 
    - Michael Siemer 
    - 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 
-------------------------------------------------------------------------------- 
THE JCOMMON CLASS LIBRARY: Version 1.0.21 
========================================= 
24 October 2013. 
(C)opyright, 2000-2013, by Object Refinery Limited and Contributors. 
----------------- 
1.  INTRODUCTION 
----------------- 
JCommon is a free general purpose Java class library that is used in 
several projects including JFreeChart and Pentaho Reporting. 
***** 
SPECIAL NOTICE:  BOTH JFREECHART AND PENTAHO REPORTING ARE MOVING TOWARDS 
ELIMINATING THEIR DEPENDENCY ON JCOMMON.  AFTER THIS HAPPENS, JCOMMON WILL 
MOST LIKELY BE "RETIRED". 
***** 
JCommon is licensed, free of charge, under the terms of the GNU Lesser 
General Public Licence. A copy of the licence is included in the download. 
The latest version of this class library can be obtained from: 
    http://www.jfree.org/jcommon/ 
If you have any comments, suggestions or bugs to report, please post a 
message in the JCommon forum. 
----------------- 
2.  CONTRIBUTORS 
----------------- 
Thanks to the following developers who have contributed code to this 
class library:  Anthony Boulestreau, Jeremy Bowman, J. David 
Eisenberg, Paul English, Brian Fischer, Hans-Jurgen Greiner, Martin Hoeller, 
Ryan Hirrlinger, Bill Kelemen, Arik Levin, Achilleus Mantzios, Thomas Meier, 
Thomas Morgner, Krzysztof Paz, Andrzej Porebski, Nabuo Tamemasa, Mark Watson 
and Hari. 
--------------- 
3.  TEST CASES 
--------------- 
Some test cases have been developed using the JUnit testing 
framework.  These are included with the source code, in the following 
packages: 
org.jfree.junit 
org.jfree.date.junit 
org.jfree.io.junit 
org.jfree.text.junit 
org.jfree.ui.junit 
org.jfree.util.junit 
If you want to recompile these packages, you will need the junit.jar 
file that is included in the 'lib' subdirectory. 
To find out more about JUnit, please visit: 
http://www.junit.org/ 
The current JCommon tests have been written using JUnit 3.8. 
--------------- 
4.  WHAT'S NEW 
--------------- 
Changes in each version are listed here: 
1.0.21: (24-Oct-2013) Modified drawRotatedString() to call drawAlignedString() 
                      when the rotation angle is 0.0.  This provides benefits 
                      downstream for JFreeChart, JFreeSVG and OrsonPDF. 
1.0.20: (01-Sep-2013) Fixed TextFragment.draw() to respect TextAnchor argument. 
1.0.19: (30-Aug-2013) Updated Licences.java so that complete licence text is  
                      loaded on demand only (bug #1118). 
1.0.18: (23-Sep-2012) Fixed PaintList.equals() bug, fixed line break issue in 
                      TextUtilities; 
1.0.17: (17-Oct-2011) Updated SerialUtilities to support serialisation of 
                      Composite instances; 
1.0.16: (17-Apr-2009) New release in conjunction with JFreeChart 1.0.13; 
1.0.15: (19-Dec-2008) New ResourceBundleWrapper class to enable applets to 
                      bypass codeBase lookup.  Updated Maven specs. 
1.0.14: (10-Sep-2008) Workaround added to PngEncoder, bug fix in ShapeList. 
1.0.13: (05-Jun-2008) Bug fixes for TextBox and ShapeUtilities. 
1.0.12: (02-Nov-2007) Made the resource-loading and classloader selection more 
        robust in cases where the jars were distributed over several 
        classloaders. 
1.0.11: (19-Oct-2007) BugFix in the KeyedComboBoxModel causing 
        NullPointerExceptions on MacOS-X; Make sure that all resource-streams 
        that get opened also get safely closed in case of errors. 
1.0.10: (21-May-2007) BugFix in the PackageSorter, Window positioning is now 
        multi-screen aware. 
1.0.9 : (23-Mar-2007) Serialization fix in TextFragment. 
1.0.8.0 : (11-Dec-2006) Minor bugfixes in the synchronization of the Booting code 
        and the FastStack. 
1.0.7 : (03-Dec-2006) Cosmetic fixes for the logging of the PackageManager, 
        ObjectTable implementation allows faster cloning of its contents, 
        minor improvements to the GUI classes. 
1.0.6 : (26-Sep-2006) BugFixes in the TextLayoutUtilities, SpreadSheetDate and 
        ResourceBundleSupport classes. 
1.0.5 : (29-Jun-2006) BugFixes in the boot code (synchronization added) and 
        WaitingImageObserver (possible deadlock fixed). ObjectUtilities 
                did not handle all cases where a ClassLoader could be null. 
1.0.4 : (30-Apr-2006) Date- and NumberCellRenderer did not handle null-values 
        properly. 
1.0.3 : (17-Apr-2006) More improvements in the boot process for dependent 
        library hierarchies. 
1.0.1 : (10-Feb-2006) This release adds new boot capabilities and fixes 
        some bugs in the XML classes. This version is required for 
        JFreeReport and it is fully backward compatible with the 1.0.x 
        branch. 
1.0.0 : (14-Nov-2005) This is the official 1.0.0 release.  All future 
        releases in the 1.0.x series will maintain backward compatibility 
        with the 1.0.0 API. 
1.0.0-rc1 : (01-Jun-2005) : Update to coincide with JFreeReport 0.8.0.5-5. 
        JavaDoc update and classloader handling changed. 
1.0.0-pre3 : (15-Apr-2005) : Some minor changes in the ResourceBundleSupport 
        to allow the explicit definition of a locale. 
1.0.0-pre2 : (04-Mar-2005) : Update to coincide with JFreeReport 0.8.0.5. 
        Separated the xml-support packages into an own jar file. 
        JFreeChart does not use these classes (except in experimental 
        non-release code). Therefore, JFreeChart needs both libs to 
        build, but only the jcommon.jar library to run. 
        The a more detailed list of changed please have a look at the 
        CHANGELOG.txt file. 
1.0.0-pre1 : (29-Nov-2004) : Update to coincide with JFreeChart 1.0.0-pre1. 
0.9.7 : (13-Oct-2004) Update to join JFreeReport with latest JFreeChart. 
0.9.6 : (10-Sep-2004) Update to coincide with JFreeChart 0.9.21. 
0.9.5 : (7-Jun-2004) Update to coincide with JFreeChart 0.9.20. 
0.9.4 : (28-May-2004) Update to coincide with JFreeChart 0.9.19. 
0.9.3 : (15-Apr-2004) Update to coincide with JFreeChart 0.9.18. 
0.9.2 : (26-Mar-2004) Update to coincide with JFreeChart 0.9.17. 
0.9.1 : (9-Jan-2004) Update to coincide with JFreeChart 0.9.16. 
0.9.0 : (28-Nov-2003) Update to coincide with JFreeChart 0.9.15. 
0.8.0.9 : (17-Nov-2003) Update to coincide with JFreeChart 0.9.14. 
0.8.0.8 : (26-Sep-2003) Update to coincide with JFreeChart 0.9.13. 
0.8.0.7 : (11-Sep-2003) Update to coincide with JFreeChart 0.9.12. 
0.8.0.6 : (8-Aug-2003) Update to coincide with JFreeChart 0.9.11. 
0.8.0.5 : (25-Jul-2003) Transferred some support classes from JFreeChart. 
0.8.0.3 : (16-Jun-2003) XML Parser: error locations are printed in the 
        parse exceptions to make debugging xml files easier. 
0.8.0.2a: (04-Jun-2003) xml parser: configuration interface modified. 
        + Bugfixes ... 
0.8.0.2 : (26-May-2003) xml parser class factory bug fix 
0.8.0.1 : (09-May-2003) Added support for the xml parser and imported 
        some base classes from the JFreeReport project. 
0.8.0.0 : (24-Apr-2003) Renamed all packages from com.jrefinery.* 
        to org.jfree.*. 
0.7.3 : (11-Apr-2003) Added serialization for SerialDate and 
        SpreadsheetDate classes.  Added a SerialUtilities class. 
        Removed palette classes (now in JFreeChart).  Added an 
        attribute to control whether or not a workaround is used for 
        drawing rotated text. 
0.7.2 : (6-Feb-2003) Bug fixes and Javadoc updates, incorporated an 
        Ant script to recompile the source files and generate the 
        Javadocs. 
0.7.1 : (18-Oct-2002) Bug fixes and Javadoc updates. 
0.7.0 : (4-Sep-2002) Moved package (com.jrefinery.data) to JFreeChart 
        project. Bug fixes and Javadoc updates. 
0.6.4 : (27-Jun-2002) Added logo to about box. Minor bug fixes (plus 
        JUnit tests) and code tidy up. 
0.6.3 : (14-Jun-2002) Bug fixes and Javadoc updates. 
0.6.2 : (7-Jun-2002) Added GanttSeriesCollection and supporting 
        classes.  Added Polish resource bundle.  Minor bug fixes. 
0.6.1 : (5-Apr-2002) Added MeterDataset interface and 
        DefaultMeterDataset class. Resource bundles for French, German 
        and Spanish languages. Reinstated the Week class.  Minor bugfixes. 
0.6.0 : (22-Mar-2002) Changes to the API for the TimePeriod classes, 
        to improve methods that convert to java.util.Date.  New 
        DefaultHighLowDataset class.  New ResourceBundles for items 
        that require localisation. 
0.5.6 : (6-Mar-2002) Bug fix for combined datasets.  Additional 
        methods in the TimePeriod class to handle different 
        timezones. Updated About box classes moved to new package 
        com.jrefinery.ui.about.  Renamed Files.java --> 
        FileUtilities.java and SerialDates.java --> 
        SerialDateUtilities.java.  Added new domain name 
        (http://www.object-refinery.com) in the source headers. 
0.5.5 : (15-Feb-2002) Fixed bugs in the constructors for the 
        TimePeriod subclasses.  Reversed the order of the parameters 
        in the Month(int, int) constructor.  Added methods to 
        Datasets.java to handle stacked data ranges.  Fixed bug in 
        CombinedDataset. 
0.5.4 : (8-Feb-2002) New WindDataset interface and DefaultWindDataset 
        class.  Bug fix for DefaultCategoryDataset. 
0.5.3 : (25-Jan-2002) Bug fixes, some minor API changes. 
0.5.2 : (10-Dec-2001) Added new combination datasets by Bill Kelemen. 
        Added contributors table to the AboutFrame class. 
0.5.1 : (27-Nov-2001) AboutPanel and AboutFrame classes added. 
0.5.0 : (21-Nov-2001) PieDataset and DefaultPieDataset classes added. 
0.4.2 : (16-Nov-2001) New classes in the com.jrefinery.data.* package, 
        plus some new JUnit test cases.