Statistics
| Revision:

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

History | View | Annotate | Download (43.9 kB)

1
<pre>
2
********************************
3
*  JFREECHART: Version 1.0.17  *
4
********************************
5

    
6
24 November 2013
7

    
8
(C)opyright 2000-2013, by Object Refinery Limited and Contributors.
9

    
10
-----------------
11
1.  INTRODUCTION
12
-----------------
13
JFreeChart is a free chart library for the Java(tm) platform.  It runs
14
on the Java 2 Platform (JRE 1.6.0 or later) and uses the Java 2D API for
15
drawing.
16

    
17
JFreeChart is licensed under the terms of the GNU Lesser General
18
Public Licence (LGPL). A copy of the <a href="about_files/licence-LGPL.txt">licence</a> is included in the
19
distribution.
20

    
21
Please note that JFreeChart is distributed WITHOUT ANY WARRANTY;
22
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
23
PARTICULAR PURPOSE.  Please refer to the licence for details.
24

    
25
We are grateful to the many developers that have contributed to JFreeChart.
26
The contributors are listed below in section 10.
27

    
28
-------------------
29
2.  LATEST VERSION
30
-------------------
31
The latest version of this class library can be obtained from:
32

    
33
    http://www.jfree.org/jfreechart/
34

    
35
If you have any comments, suggestions or bugs to report, please post a
36
message in the JFreeChart forum.
37

    
38
-----------------
39
3.  DOCUMENTATION
40
-----------------
41
You can download installation instructions
42
(jfreechart-1.0.17-install.pdf) from the JFreeChart home
43
page or the project page on SourceForge.
44

    
45
Further documentation for JFreeChart (the JFreeChart Developer Guide) is
46
available to purchase from by Object Refinery Limited, a company owned and
47
operated by David Gilbert (the original author of JFreeChart).  For more
48
information, please see:
49

    
50
    http://www.object-refinery.com/jfreechart/guide.html
51

    
52
Sales of the JFreeChart Developer Guide are an important source of funding for
53
the project.  Please help us to continue developing free software.
54

    
55
API documentation files in HTML format are available on-line.  If you wish
56
to keep a local copy of the API files, you can regenerate them directly
57
from the source code.  You can do this using the 'javadoc' utility directly,
58
or with the Ant script (build.xml) included in the distribution.
59

    
60
-----------------
61
4.  DEPENDENCIES
62
-----------------
63
JFreeChart has the following dependencies:
64

    
65
(a)  JRE/JDK 1.6.0 or higher - note that the previous release of JFreeChart
66
worked with JRE/JDK 1.4.2 or later.  With a bit of hacking, it may be possible 
67
to get JFreeChart working on these older versions, but we are no longer 
68
supporting it.
69

    
70
(b)  JCommon - version 1.0.0 or later.  The runtime jar file (version 1.0.21)
71
is included in the JFreeChart distribution.  You can obtain the complete
72
source code for JCommon from:
73

    
74
    http://www.jfree.org/jcommon/
75

    
76
JCommon is licensed under the terms of the GNU Lesser General Public Licence.
77

    
78
(c)  servlet.jar - classes in the org.jfree.chart.servlet
79
package require this file.  The JFreeChart distribution includes the
80
servlet.jar file distributed with Tomcat 4.1.31.  Applicable license
81
terms are published at:
82

    
83
    http://java.sun.com/products/servlet/LICENSE
84

    
85
(d)  JUnit - a unit testing framework (the junit.jar runtime file is
86
included in the distribution).  JUnit is licensed under the terms
87
of the IBM Common Public License.  You can find out more about JUnit
88
and/or download the latest version from:
89

    
90
    http://www.junit.org
91

    
92
The JUnit tests included with JFreeChart have been created using JUnit
93
4.3.1.
94

    
95
-----------
96
5.  SUPPORT
97
-----------
98
Support questions can be posted in the free support forum at
99

    
100
    http://www.jfree.org/forum/viewforum.php?f=3
101

    
102
We read all questions posted in the forum, and respond to as many as we can
103
in the time available.  Unfortunately, there are too many questions to answer
104
them all.
105

    
106
--------------------
107
6.  ANT BUILD SCRIPT
108
--------------------
109
An Ant build script (build.xml) is included in the distribution.  This
110
is the same script that is used to create the JFreeChart distribution.
111

    
112
For more information about Ant:
113

    
114
    http://ant.apache.org/
115

    
116
If you want to rebuild the JFreeChart jar file, we highly recommend that you
117
use this script as it includes certain files (for example, .properties files)
118
that you MUST have in the jar file for JFreeChart to function correctly.
119

    
120
------------------------
121
7.  THE DEMO APPLICATION
122
------------------------
123
A demo application that shows a selection of the charts that can be
124
generated is included in the JFreeChart distribution.   To run the
125
demo (using JDK 1.6.0 or later), use the following command:
126

    
127
    java -jar jfreechart-1.0.17-demo.jar
128

    
129
The complete source code for the demo application is available for
130
download when you purchase the JFreeChart Developer Guide.
131

    
132
The demo application also links to the JFreeSVG and OrsonPDF libraries, to 
133
provide export facilities to the SVG and PDF formats.  These fast, lightweight 
134
libraries are not free, licenses can be purchased from Object Refinery Limited. 
135

    
136
An additional tab added to the demo application in version 1.0.17 showcases
137
Orson Charts 3D, a new library by Object Refinery Limited.  You can find out
138
more about Orson Charts at:
139

    
140
    http://www.object-refinery.com/orsoncharts/
141

    
142
---------------
143
8.  LIMITATIONS
144
---------------
145
JFreeChart has some known limitations that will hopefully be addressed in
146
the future:
147

    
148
    - some renderers do not respect the series visibility flags yet;
149
    - the chart property editors (accessible by right-clicking on the chart
150
      panel) are horribly out of date and probably shouldn't be used;
151
    - item labels (if displayed) are not taken into account for the
152
      automatically calculated axis range.  As a workaround, you can increase
153
      the axis margins;
154
    - tick labels on a DateAxis that uses a SegmentedTimeline can be
155
      problematic;
156

    
157
If there are other items that you think should be listed here,
158
please post a bug report.
159

    
160
--------------
161
9.  WHAT's NEW
162
--------------
163
A list of changes in recent versions:
164

    
165
1.0.17 : (22-Nov-2013)
166
        - see the NEWS and ChangeLog files for details.
167

    
168
1.0.16 : (13-Sep-2013)
169
        - bumped the required JRE to 1.6, enhanced axis labelling, provided
170
          integration with JFreeSVG and OrsonPDF for vector output, and fixed 
171
          bugs.
172

    
173
1.0.15 : (4-Jul-2013)
174
        - various minor feature enhancements and a range of bug fixes, see the 
175
          NEWS and ChangeLog files for details.
176

    
177
1.0.14 : (20-Nov-2011)
178
        - added support for multiple axes in PolarPlot, performance
179
          improvements in the TimeSeriesCollection class, mouse wheel rotation
180
          in the PiePlot class, improved Maven support, a range of other
181
          minor functional enhancements and numerous bug fixes - see the NEWS
182
          and ChangeLog files for details.
183

    
184
1.0.13 : (17-Apr-2009)
185
        - there are some significant new features in this release, as well
186
          as performance enhancements and bug fixes - see the NEWS and
187
          ChangeLog files for details.
188

    
189
1.0.12 : (31-Dec-2008)
190
        - added support for minor tick marks, mapping datasets to more than
191
          one axis, and numerous bug fixes - see the NEWS and ChangeLog files
192
          for details.
193

    
194
1.0.11 : (18-Sep-2008)
195
        - this release includes a new chart theming mechanism, and numerous
196
          other feature enhancements and bug fixes - see the NEWS and ChangeLog
197
          files for details.
198

    
199
1.0.10 : (8-Jun-2008)
200
        - another general maintenance release - see the NEWS and ChangeLog
201
          files for more details.
202

    
203
1.0.9 : (4-Jan-2008)
204
        - this release fixes a security advisory with respect to the HTML
205
          image maps generated by JFreeChart - see the NEWS file for more
206
          information.  In addition, a number of bugs have been fixed.
207

    
208
1.0.8.0 : (23-Nov-2007)
209
        - primarily a bug fix release.  See the NEWS and ChangeLog files for a
210
          more detailed description of the changes in this release.
211

    
212
1.0.7 : (14-Nov-2007)
213
        - See the NEWS and ChangeLog files for a more detailed description of
214
          the changes in this release.
215

    
216
1.0.6 : (15-Jun-2007)
217
        - the VectorRenderer and associated dataset classes have been promoted
218
          to the standard API from the 'experimental' source tree.  See the
219
          NEWS and ChangeLog files for a more detailed description of the
220
          changes in this release.
221

    
222
1.0.5 : (23-Mar-2007)
223
        - this release contains a new DeviationRenderer, enhancements to a
224
          number of existing classes and numerous bug fixes, see the NEWS
225
          and ChangeLog files for details.
226

    
227
1.0.4 : (9-Feb-2007)
228
        - this release contains both new features and bug fixes, see the NEWS
229
          and ChangeLog files for details.
230

    
231
1.0.3 : (17-Nov-2006)
232
        - this release contains a new DialPlot class (in 'experimental') that
233
          will hopefully replace the MeterPlot class, once the API has been
234
          polished a little, plus many other new features and bug fixes.  See
235
          the NEWS and ChangeLog files for details.
236

    
237
1.0.2 : (25-Aug-2006)
238
        - this release contains both new features and bug fixes, see the NEWS
239
          and ChangeLog files for details.
240

    
241
1.0.1 : (27-Jan-2006)
242
        - primarily a bug fix release, see the NEWS and ChangeLog files for
243
          details.
244

    
245
1.0.0 : (2-Dec-2005)
246
        - the first stable release of the JFreeChart class library, all future
247
          releases in the 1.0.x series will aim to maintain backward
248
          compatibility with this release;
249
        - see the ChangeLog file for a detailed list of changes.
250

    
251
1.0.0-rc3 : (28-Nov-2005)
252
        - the third "release candidate" for version 1.0.0, this release
253
          fixes some issues with the 1.0.0-rc2 release (mainly concerning
254
          packaging of resource bundles for localisation).
255
        - if no significant problems are reported in the next few days,
256
          the 1.0.0 "final" release will be posted on 2-Dec-2005.
257

    
258
1.0.0-rc2 : (25-Nov-2005)
259
            - the second "release candidate" for version 1.0.0.  If no problems
260
              are reported, 1.0.0 "final" will be released on 2-Dec-2005.
261
            - see the ChangeLog file for a detailed list of changes in this
262
              release.
263

    
264
1.0.0-rc1 : (2-Jun-2005)
265
            - this is a "release candidate" for version 1.0.0.  If no
266
              significant API problems are reported, this release will be
267
              re-released as version 1.0.0.
268
            - see CHANGELOG.txt for further details.
269

    
270
1.0.0-pre2 : (10-Mar-2005)
271
         - see CHANGELOG.txt for further details.
272

    
273
1.0.0-pre1 : (29-Nov-2004)
274
         - see CHANGELOG.txt for further details.
275

    
276
0.9.21 : (9-Sep-2004)
277
         - added new axes: PeriodAxis and ModuloAxis.
278
         - split org.jfree.data and org.jfree.chart.renderer into
279
           subpackages for 'category' and 'xy' charts.
280
         - Sun PNG encoder is now used, if available.
281
         - a new demo application makes it easier to preview the
282
           chart types that JFreeChart can create.
283
         - added a new series visibility flag to the AbstractRenderer
284
           class.
285
         - added support for GradientPaint in interval markers.
286
         - see CHANGELOG.txt for further details.
287

    
288
0.9.20 : (7-Jun-2004)
289
         - primarily bug fixes, see CHANGELOG.txt for further details.
290

    
291
0.9.19 : (28-May-2004)
292
         - added methods to XYDataset that return double primitives;
293
         - removed distinction between "primary" and "secondary" datasets,
294
           renderers and axes;
295
         - added fixed legend item options to CategoryPlot and XYPlot;
296
         - legend changes by Barek Naveh;
297
         - removed Log4j dependency;
298
         - many, many bug fixes;
299
         - see CHANGELOG.txt for further details.
300

    
301
0.9.18 : (15-Apr-2004)
302
         - new legend anchor options;
303
         - fixed broken JPEG export;
304
         - fixed title size problems;
305
         - various other bug fixes;
306

    
307
0.9.17 : (26-Mar-2004)
308
         - pie chart enhancements for labelling, shading and multiple pie
309
           charts (2D or 3D) on a single plot;
310
         - new PolarPlot class added;
311
         - XYSeries can now be sorted or unsorted;
312
         - createBufferedImage() method can now scale charts;
313
         - domain and range markers now support intervals;
314
         - item labels are now supported by some XYItemRenderers;
315
         - tooltip and item label generators now use MessageFormat class;
316
         - added new XYBarDataset class;
317
         - added transparency support to PNG export;
318
         - numerous other small enhancements and bug fixes, see the
319
           CHANGELOG.txt file for more details;
320

    
321
0.9.16 : (09-Jan-2004)
322
         - this release contains bug fixes and some minor feature
323
           enhancements (title and category label wrapping, legend shape
324
           scaling, enhanced performance for the DefaultTableXYDataset class);
325
         - added Spanish localisation files;
326

    
327
0.9.15 : (28-Nov-2003)
328
         - the focus of this release is bug fixes - quite a number of issues
329
           have been resolved, please check the bug database for details;
330
         - added a new Wafer Map chart type;
331
         - added a cyclic axis;
332
         - added localisation files for _ru;
333

    
334
0.9.14 : (17-Nov-2003)
335
         - implemented zooming for the FastScatterPlot class;
336
         - added item label support for stacked bar charts, and new fall back
337
           options for item labels that don't fit within bars;
338
         - modified the CategoryAxis class to allow additional options for the
339
           alignment and rotation of category labels;
340
         - addition of the AxisState class, used in the drawing of axes to
341
           eliminate a bug when multiple threads draw the same axis
342
           simultaneously;
343
         - provided additional attributes in the DateTickUnit class to improve
344
           labelling on a segmented DateAxis;
345
         - added support for GradientPaint in bar charts;
346
         - updated the PNGEncoder;
347
         - fixes for tick label positioning on axes;
348
         - various Javadoc updates;
349
         - numerous bug fixes;
350

    
351
0.9.13 : (26-Sep-2003)
352
         - various enhancements to the stacked area XY charts;
353
         - added a completion indicator for the Gantt chart;
354
         - range and domain markers can now be placed in the foreground or the
355
           background;
356
         - more fixes for cloning and serialization;
357
         - fixed mouse event bug for combined charts;
358
         - fixed bugs in the PngEncoder class;
359
         - incorporated .properties files that were missing from the 0.9.12
360
           distribution;
361

    
362
0.9.12 : (11-Sep-2003)
363
         - extended box-and-whisker plots to work with the CategoryPlot class
364
           as well as the XYPlot class (based on work by David Browning);
365
         - added a new LayeredBarRenderer (by Arnaud Lelievre);
366
         - added support for stacked area charts with the XYPlot class (thanks
367
           to Richard Atkinson);
368
         - improved HTML image map support (thanks to Richard Atkinson);
369
         - added localized resources for the chart property editors (thanks to
370
           Arnaud Lelievre).  Current translations include French and Portugese
371
           (thanks to Eduardo Ramalho);
372
         - added facility for setting all rendering hints;
373
         - improved support for cloning and serialization;
374
         - fixed a bug in the XYSeries class that prevented the TableXYDataset
375
           from functioning correctly;
376
         - improved date axis labelling with segmented time lines;
377
         - fixed several bugs in the secondary dataset/axis/renderer code;
378
         - fixed bugs in the JDBCCategoryDataset class;
379
         - numerous other bug fixes;
380

    
381
0.9.11 : (8-Aug-2003)
382
         - added support for box-and-whisker plots, thanks to David Browning;
383
         - lots of bug fixes;
384

    
385
API changes in this release are minimal and have been implemented using
386
deprecation, so code written against 0.9.10 should recompile.
387

    
388
0.9.10 : (25-Jul-2003)
389
         - added support for multiple secondary axes, datasets and
390
           renderers;
391
         - minor feature enhancements and bug fixes;
392

    
393
0.9.9 : (10-Jul-2003) PLEASE NOTE THAT MAJOR CHANGES HAVE BEEN MADE IN THIS
394
RELEASE AND ONE OR TWO FEATURES MAY BE BROKEN.  PLEASE REPORT BUGS SO THEY CAN
395
BE FIXED FOR THE NEXT RELEASE.
396

    
397
        - merged the HorizontalCategoryPlot and VerticalCategoryPlot classes,
398
          into the CategoryPlot class;
399
        - merged the horizontal and vertical axis classes;
400
        - merged the horizontal and vertical renderer classes;
401
        - CategoryPlot and XYPlot now support both horizontal and vertical
402
          orientation via the setOrientation(...) method;
403
        - merged horizontal and vertical methods in the ChartFactory class;
404
        - created new combined plot classes: CombinedDomainCategoryPlot,
405
          CombinedRangeCategoryPlot, CombinedDomainXYPlot and
406
          CombinedRangeXYPlot (these can all be drawn with a horizontal or
407
          vertical orientation);
408
        - Bill Kelemen has enhanced the DateAxis class to handle segmented
409
          timelines.  This can be used, for example, to skip weekends for
410
          daily stock price charts;
411
        - Richard Atkinson has updated the ServletUtilities class;
412
        - Bryan Scott has added an XYDatasetTableModel class for presenting
413
          datasets in a JTable;
414
        - modified XYPlot to allow renderers to use multiple passes through
415
          the dataset;
416
        - added new XYDifferenceRenderer;
417
        - added support for colored bands between gridlines in XYPlot;
418
        - added new XYDrawableAnnotation class;
419
        - added a new attribute to control the order of dataset rendering in
420
          a CategoryPlot;
421
        - extended the value label mechanism for the renderers, to allow
422
          better (per series) control over label generation, positioning and
423
          visibility;
424
        - CategoryItemTooltipGenerator has been renamed
425
          CategoryItemLabelGenerator, since it is now being used to generated
426
          item labels as well as tooltips;
427
        - there is now support for horizontal stacked 3D bar charts;
428
        - added support for range markers against secondary axis in a
429
          CategoryPlot;
430
        - added labels to domain and range markers;
431
        - added a new HistogramDataset class (contributed by Jelai Wang) to
432
          make it easier to create histograms with JFreeChart;
433
        - moved the DrawingSupplier into the plot class, renderers now
434
          reference the supplier from the plot (parent plot for combined and
435
          overlaid charts).  This means that renderers now share a single
436
          DrawingSupplier by default, which simplifies the creation of
437
          combined charts;
438
        - changed the ColorBarAxis classes that extended the NumberAxis class,
439
          to a single ColorBar class that wraps a ValueAxis (may have broken
440
          one or two things in the process);
441
        - Barak Naveh has contributed new classes MatrixSeries and
442
          MatrixSeriesCollection, along with demos:  BubblyBubblesDemo.java
443
          and BubblyBubblesDemo2.java;
444
        - the TextTitle class now has a background paint attribute;
445
        - the StandardLegend class now generates LegendEntity objects if a
446
          ChartRenderingInfo instance is supplied to the draw(...) method;
447
        - extended the CategoryTextAnnotation class to take into account a
448
          category anchor point.  See the SurveyResultsDemo.java application
449
          for an example;
450
        - included numerous bug fixes;
451

    
452
0.9.8 : (24-Apr-2003)
453
        - changed package naming from com.jrefinery.* to org.jfree.*;
454
        - added new TimePeriodValuesCollection class;
455
        - added MIME type code to ServletUtilities class;
456
        - reversed the order of PieDataset and KeyedValuesDataset in
457
          the class hierarchy;
458
        - reversed the order of CategoryDataset and KeyedValues2DDataset
459
          in the class hierarchy;
460
        - minor bug fixes;
461

    
462
0.9.7 : (11-Apr-2003)
463
        - added a new ValueDataset interface and DefaultValueDataset
464
          class, and changed the CompassPlot class to use this instead
465
          of MeterDataset;
466
        - added DataUtilities class, to support creation of Pareto
467
          charts (new demo included);
468
        - updated writeImageMap method as suggested by Xavier Poinsard
469
          (see Feature Request 688079);
470
        - implemented Serializable for most classes (this is likely to
471
          require further testing);
472
        - incorporated contour plot updates from David M. O'Donnell;
473
        - added new CategoryTextAnnotation and XYLineAnnotation
474
          classes;
475
        - added new HorizontalCategoryAxis3D class contributed by
476
          Klaus Rheinwald;
477

    
478
        Bug fixes:
479
        - added a workaround for JVM crash (a JDK bug) in pie charts
480
          with small sections (see bug report 620031);
481
        - fixed minor bug in HorizontalCategoryPlot constructor (see
482
          bug report 702248);
483
        - added code to ensure HorizontalNumberAxis3D is not drawn if
484
          it is not visible (see bug report 702466);
485
        - added small fix for suppressed chart change events (see bug
486
          report 690865);
487
        - added pieIndex parameter to tooltip and URL generators for
488
          pie charts;
489
        - fixed bug in getLastMillisecond() method for the Second
490
          class and the getFirstMillisecond() method for the Year
491
          class (picked up in JUnit tests);
492
        - in TextTitle, changed width used for relative spacing to fix
493
          bug 703050;
494

    
495
0.9.6 : (17-Feb-2003) Bug fixes:
496
        - fixed null pointer exception in DefaultCategoryDataset;
497
        - fixed update problem for PaintTable, StrokeTable and
498
          ShapeTable objects;
499
        - added methods to control colors in PiePlot (these were
500
          inadvertantly removed in the changes made for 0.9.5);
501
        - fixed auto-range update problem for secondary axis;
502
        - fixed missing category labels in the overlaid category plot;
503
        - fixed constructors for symbolic axes;
504
        - corrected error in Javadoc generation (Ant script);
505

    
506
0.9.5 : (6-Feb-2003)  PLEASE NOTE THAT MAJOR CHANGES TO THE
507
        JFREECHART API HAVE BEEN MADE IN THIS RELEASE!
508

    
509
        - added support for secondary axes, datasets and renderers;
510
        - added new data interfaces (Value, Values, Values2D,
511
          KeyedValues and KeyedValues2D) and incorporated these into
512
          the existing PieDataset and CategoryDataset interfaces.
513
        - modified the CategoryDataset interface to be more
514
          symmetrical, data is organised in rows and columns (as
515
          before) but can now be accessed by row/column index or
516
          row/column key.
517
        - added support for reading PieDatasets and CategoryDatasets
518
          from XML files.
519
        - created separate packages for the axes
520
          (com.jrefinery.chart.axis), plots (com.jrefinery.chart.plot)
521
          and renderers (com.jrefinery.chart.renderer).
522
        - series attributes (paint, outline paint, stroke and shape)
523
          are now controlled by the renderer classes using lookup
524
          tables.  Introduced the DrawingSupplier interface (and
525
          DefaultDrawingSupplier class) which is used to populate the
526
          lookup tables from a common source (necessary to coordinate
527
          complex combined charts).
528
        - the chart legend can now display shapes corresponding to
529
          series.
530
        - moved responsibility for category distribution to the
531
          CategoryAxis class, which tidies up the code in the
532
          CategoryPlot classes.
533
        - gridlines are now controlled by the CategoryPlot and XYPlot
534
          classes, not the axes (included in this change is the
535
          addition of gridlines for the CategoryPlot domain values).
536
        - changed the list of titles in the JFreeChart class to a
537
          title and a list of subtitles.
538
        - added new renderers for XYPlot (XYBubbleRenderer and
539
          YIntervalRenderer).
540
        - modified Gantt chart to display sub-tasks.
541
        - added ContourPlot class (still experimental) by David
542
          M. O'Donnell.
543
        - introduced new MovingAverage class.
544
        - ChartMouseEvent now includes source chart.
545
        - numerous bug fixes.
546
        - lots of Javadoc updates.
547

    
548
0.9.4 : (18-Oct-2002)  Added a new stacked area chart (contributed by Dan
549
        Rivett) and a compass plot (contributed by Bryan Scott).  Updated
550
        the ThermometerPlot class. Added a new XYDotRenderer for scatter
551
        plots. Modified combined and overlaid plots to use the series colors
552
        specified in the sub plot rather than the parent plot (this makes it
553
        easier to align the colors in the legend).  Added Regression class
554
        for linear and power regressions.  BasicTimeSeries can now
555
        automatically drop "old" data.  Some clean-up work in the code for
556
        tooltips and the event listener mechanism.  Richard Atkinson has
557
        incorporated some useful extensions for servlets/JSP developers.
558

    
559
        Ran Checkstyle and corrected issues reported for most classes.
560
        Checkstyle is a free utility that you can download from:
561

    
562
            http://checkstyle.sourceforge.net
563

    
564
        Fixed bugs and updated documentation.
565

    
566
        API changes include:
567
        - added tickMarkPaint to Axis constructor (also affects
568
          subclasses);
569
        - added getLegendItems() to Plot, and deprecated
570
          getLegendItemLabels();
571
        - added getLegendItem(int) to XYItemRenderer and
572
          CategoryItemRenderer.
573
        - most 'protected' member variables have been changed to
574
          'private'.
575

    
576
0.9.3 : (4-Sep-2002) Added multiple pie charts based on
577
        CategoryDataset.  Updated logarithmic axes.  Improved URL
578
        support for image map generation. Moved the com.jrefinery.data
579
        package from JCommon to JFreeChart. Added simple framework for
580
        chart annotations. Improved control over renderers. Duplicate
581
        x-values now allowed in XYSeries. Optional category label
582
        skipping in category axes. Added CategoriesPaint attribute to
583
        AbstractCategoryItemRenderer.  Added new attributes to
584
        MeterPlot class. Updated 3D pie chart to observe start angle
585
        and direction, and also foreground alpha < 1.0. Improved
586
        Javadoc comments. New demo applications, including:
587
        AnnotationDemo1, EventFrequencyDemo, JDBCCategoryChartDemo,
588
        JDBCPieChartDemo, JDBCXYChartDemo and MinMaxCategoryPlotDemo.
589
        Bug fixes:
590
        - negative percentages on PiePlot.
591
        - added listener notification to setXXXAxis(...) methods.
592
        - fixed DomainInfo method name clash.
593
        - added DomainIsPointsInTime flag to TimeSeriesCollection to
594
          give better control over auto range on axis for time series
595
          charts.
596
        - axis margins for date axes are no longer hard-coded.
597
        - fix for ordering of categories in JdbcCategoryDataset.
598
        - added check for null axis in mouse click handler.
599

    
600
        The CVS repository at SourceForge has also been restructured
601
        to match the distribution directory layout.
602

    
603
0.9.2 : (28-Jun-2002) PiePlot now has startAngle and direction
604
        attributes.  Added support for image map generation.  Added a
605
        new Pie3DPlot class. Added label drawing code to bar
606
        renderers. Added optional range markers to horizontal number
607
        axis.  Added bar clipping to avoid PRExceptions in bar
608
        charts.  JFreeChartDemo has been modified and now includes
609
        examples of the dial and thermometer plots.
610
        Bug fixes:
611
        - auto range for VerticalNumberAxis when zero is forced to be
612
          included in the range.
613
        - fixed null pointer exception in StackedVerticalBarRenderer3D;
614
        - Added get/set methods for min/max chart drawing dimensions
615
          in ChartPanel;
616
        - HorizontalIntervalBarRenderer now handles single category;
617
        - verticalTickLabels now possible in HorizontalNumberAxis3D;
618
        - removed unnecessary imports;
619

    
620
0.9.1 : (14-Jun-2002) Bug fixes and Javadoc updates.
621
        - fixed auto range calculation for category plots;
622
        - fixed event notification for XYPlot;
623
        - fixed auto axis range for Gantt charts;
624
        - check for null popup menu in ChartPanel.mouseDragged;
625
        - new checks for null info in renderers;
626
        - range markers now drawn only if in visible axis range;
627

    
628
0.9.0 : (7-Jun-2002) New plots including an area chart, a horizontal
629
        3D bar chart, a Gantt chart and a thermometer chart.
630
        Combination plots have been reworked to provide a
631
        simpler framework, and extends to allow category plots to be
632
        combined. There is now a facility to add a ChartMouseListener
633
        to the ChartPanel (formerly JFreeChartPanel).  An interactive
634
        zooming feature (experimental at this point) is now available
635
        for XYPlots.  A new Polish translation has been added. Several
636
        fixes have been applied to the default tool tip generators.  A
637
        workaround has been added to fix the alignment between time
638
        series charts and the date axis.  There are some improvements
639
        to the VerticalLogarithmicAxis class, and now a corresponding
640
        HorizontalLogarithmicAxis class.  Additional demonstration
641
        applications have been added.  Fixed the popup menu bug.
642

    
643
0.8.0.1 : (5-Apr-2002) Localised resource bundles for French, German and
644
        Spanish languages (thanks to Anthony Boulestreau, Thomas Meier
645
        and Hans-Jurgen Greiner for the translations).  An area XY
646
        plot and meter chart contributed by Hari.  Symbol charts
647
        contributed by Anthony Boulestreau. An improved
648
        CandleStickRenderer class from Sylvain Vieujot.  Updated
649
        servlet code from Bryan Scott.  XYItemRenderers now have a
650
        change listener mechanism and therefore do not have to be
651
        immutable.  Additional demonstration applications for
652
        individual chart types. Minor bug fixes.
653

    
654
0.8.0.0 : (22-Mar-2002) All the category plots are now controlled
655
        through the one class (CategoryPlot) with plug-in renderers.
656
        Added a ResourceBundle for user interface items that require
657
        localisation. Added a logarithmic axis class contributed by
658
        Mike Duffy and some new JDBC and servlet code contributed by
659
        Bryan Scott.  Updated the JCommon class library to improve
660
        handling of time periods in different time zones.
661

    
662
0.7.4 : (6-Mar-2002) Bug fixes in the JCommon Class Library. Various
663
        Javadoc comment updates.  Some minor changes to the
664
        code. Added new domain name (http://www.object-refinery.com)
665
        in the source headers.
666

    
667
0.7.3 : (14-Feb-2002) Bug fixes.
668

    
669
0.7.2 : (8-Feb-2002) Integrated the WindPlot code from Achilleus
670
        Mantzios. Added an optional background image for the
671
        JFreeChart class, and another optional background image for
672
        the Plot class.  Added alpha-transparency for the plot
673
        foreground and background.  Added new pie chart label types
674
        that show values.  Fixed a bug with the legend that results in
675
        a loop at small chart sizes. Added some tooltip methods that
676
        were missing from the previous version. Changed the Insets
677
        class on chart titles to a new Spacer class that will allow
678
        for relative or absolute insets (the plan is to eventually
679
        replace all Insets in the JFreeChart classes).  Fixed a bug in
680
        the setAutoRangeIncludesZero method of the NumberAxis class.
681
        Added the instructions that were missing from the copies of
682
        the GNU Lesser General Public Licence included with JFreeChart.
683

    
684
0.7.1 : (25-Jan-2002) Added tooltips, crosshairs and zooming
685
        functions, thanks to Jonathan Nash and Hans-Jurgen Greiner
686
        for contributing the code that these features are based on.
687
        Moved the combination charts into the package
688
        com.jrefinery.chart.combination, made a number of other small
689
        API changes and fixed some bugs.  Removed the Javadoc HTML
690
        from the download to save space (you can regenerate it from
691
        the source code if you need it).
692

    
693
0.7.0 : (11-Dec-2001) New combination plots developed by Bill
694
        Kelemen.  Added Wolfgang Irler's servlet demo to the standard
695
        download.  The About window in the demo application now
696
        includes a list of developers that have contributed to the
697
        project.
698

    
699
0.6.0 : (27-Nov-2001) New plots including scatter plot, stacked bar
700
        charts and 3D bar charts.  Improved pie chart.  Data
701
        interfaces and classes moved to the JCommon class library.
702
        New properties to control spacing on bar charts.  New
703
        auto-tick mechanism.  JFreeChartPanel now incorporates
704
        buffering, and popup menu.  Javadocs revised.  Fixed numerous
705
        bugs from version 0.5.6.  Demo application updated.
706

    
707
----------------
708
10.  CONTRIBUTORS
709
----------------
710
JFreeChart wouldn't be half the library that it is today without the
711
contributions (large and small) that have been made by the developers listed
712
below:
713

    
714
    - Eric Alexander
715
    - Richard Atkinson
716
    - David Basten
717
    - David Berry
718
    - Chris Boek
719
    - Zoheb Borbora
720
    - Anthony Boulestreau
721
    - Jeremy Bowman
722
    - Nicolas Brodu
723
    - Jody Brownell
724
    - David Browning
725
    - Soren Caspersen
726
    - Thomas A Caswell
727
    - Chuanhao Chiu
728
    - Brian Cole
729
    - Pascal Collet
730
    - Martin Cordova
731
    - Paolo Cova
732
    - Greg Darke
733
    - Mike Duffy
734
    - Don Elliott
735
    - Rune Fauske
736
    - Jonathan Gabbai
737
    - Serge V. Grachov
738
    - Daniel Gredler
739
    - Joao Guilherme Del Valle
740
    - Hans-Jurgen Greiner
741
    - Nick Guenther
742
    - Aiman Han
743
    - Cameron Hayne
744
    - Martin Hoeller (xS+S)
745
    - Jon Iles
746
    - Wolfgang Irler
747
    - Sergei Ivanov
748
    - Nina Jeliazkova
749
    - Adriaan Joubert
750
    - Darren Jung
751
    - Xun Kang
752
    - Bill Kelemen
753
    - Norbert Kiesel
754
    - Petr Kopac
755
    - Gideon Krause
756
    - Dave Law;
757
    - Pierre-Marie Le Biot
758
    - Arnaud Lelievre
759
    - Wolfgang Lenhard
760
    - Leo Leung
761
    - David Li
762
    - Yan Liu
763
    - Tin Luu
764
    - Craig MacFarlane
765
    - Achilleus Mantzios
766
    - Thomas Meier
767
    - Jim Moore
768
    - Jonathan Nash
769
    - Barak Naveh
770
    - David M. O'Donnell
771
    - Krzysztof Paz
772
    - Eric Penfold
773
    - Tomer Peretz
774
    - Xavier Poinsard
775
    - Andrzej Porebski
776
    - Viktor Rajewski
777
    - Eduardo Ramalho
778
    - Michael Rauch
779
    - Cameron Riley
780
    - Klaus Rheinwald
781
    - Dan Rivett
782
    - Scott Sams
783
    - Michel Santos
784
    - Thierry Saura
785
    - Patrick Schlott
786
    - Andreas Schneider
787
    - Christoph Schroeder
788
    - Jean-Luc SCHWAB
789
    - Bryan Scott
790
    - Tobias Selb
791
    - Darshan Shah
792
    - Mofeed Shahin
793
    - Michael Siemer
794
    - Pady Srinivasan
795
    - Greg Steckman
796
    - Roger Studner
797
    - Gerald Struck
798
    - Irv Thomae
799
    - Eric Thomas
800
    - Rich Unger
801
    - Daniel van Enckevort
802
    - Laurence Vanhelsuwe
803
    - Sylvain Vieujot
804
    - Jelai Wang
805
    - Mark Watson
806
    - Alex Weber
807
    - Richard West
808
    - Matthew Wright
809
    - Benoit Xhenseval
810
    - Christian W. Zuckschwerdt
811
    - Hari
812
    - Sam (oldman)
813

    
814
It is possible that I have missed someone on this list, if that
815
applies to you, please e-mail me.
816

    
817
Dave Gilbert (david.gilbert@object-refinery.com)
818
JFreeChart Project Leader
819

    
820
--------------------------------------------------------------------------------
821

    
822
THE JCOMMON CLASS LIBRARY: Version 1.0.21
823
=========================================
824

    
825
24 October 2013.
826

    
827
(C)opyright, 2000-2013, by Object Refinery Limited and Contributors.
828

    
829
-----------------
830
1.  INTRODUCTION
831
-----------------
832
JCommon is a free general purpose Java class library that is used in
833
several projects including JFreeChart and Pentaho Reporting.
834

    
835
*****
836
SPECIAL NOTICE:  BOTH JFREECHART AND PENTAHO REPORTING ARE MOVING TOWARDS
837
ELIMINATING THEIR DEPENDENCY ON JCOMMON.  AFTER THIS HAPPENS, JCOMMON WILL
838
MOST LIKELY BE "RETIRED".
839
*****
840

    
841
JCommon is licensed, free of charge, under the terms of the GNU Lesser
842
General Public Licence. A copy of the <a href="about_files/jcommon.LICENSE.txt">licence</a> is included in the download.
843

    
844
The latest version of this class library can be obtained from:
845

    
846
    http://www.jfree.org/jcommon/
847

    
848
If you have any comments, suggestions or bugs to report, please post a
849
message in the JCommon forum.
850

    
851
-----------------
852
2.  CONTRIBUTORS
853
-----------------
854
Thanks to the following developers who have contributed code to this
855
class library:  Anthony Boulestreau, Jeremy Bowman, J. David
856
Eisenberg, Paul English, Brian Fischer, Hans-Jurgen Greiner, Martin Hoeller,
857
Ryan Hirrlinger, Bill Kelemen, Arik Levin, Achilleus Mantzios, Thomas Meier,
858
Thomas Morgner, Krzysztof Paz, Andrzej Porebski, Nabuo Tamemasa, Mark Watson
859
and Hari.
860

    
861
---------------
862
3.  TEST CASES
863
---------------
864
Some test cases have been developed using the JUnit testing
865
framework.  These are included with the source code, in the following
866
packages:
867

    
868
org.jfree.junit
869
org.jfree.date.junit
870
org.jfree.io.junit
871
org.jfree.text.junit
872
org.jfree.ui.junit
873
org.jfree.util.junit
874

    
875
If you want to recompile these packages, you will need the junit.jar
876
file that is included in the 'lib' subdirectory.
877

    
878
To find out more about JUnit, please visit:
879

    
880
http://www.junit.org/
881

    
882
The current JCommon tests have been written using JUnit 3.8.
883

    
884
---------------
885
4.  WHAT'S NEW
886
---------------
887
Changes in each version are listed here:
888

    
889
1.0.21: (24-Oct-2013) Modified drawRotatedString() to call drawAlignedString()
890
                      when the rotation angle is 0.0.  This provides benefits
891
                      downstream for JFreeChart, JFreeSVG and OrsonPDF.
892

    
893
1.0.20: (01-Sep-2013) Fixed TextFragment.draw() to respect TextAnchor argument.
894

    
895
1.0.19: (30-Aug-2013) Updated Licences.java so that complete licence text is 
896
                      loaded on demand only (bug #1118).
897

    
898
1.0.18: (23-Sep-2012) Fixed PaintList.equals() bug, fixed line break issue in
899
                      TextUtilities;
900

    
901
1.0.17: (17-Oct-2011) Updated SerialUtilities to support serialisation of
902
                      Composite instances;
903

    
904
1.0.16: (17-Apr-2009) New release in conjunction with JFreeChart 1.0.13;
905

    
906
1.0.15: (19-Dec-2008) New ResourceBundleWrapper class to enable applets to
907
                      bypass codeBase lookup.  Updated Maven specs.
908

    
909
1.0.14: (10-Sep-2008) Workaround added to PngEncoder, bug fix in ShapeList.
910

    
911
1.0.13: (05-Jun-2008) Bug fixes for TextBox and ShapeUtilities.
912

    
913
1.0.12: (02-Nov-2007) Made the resource-loading and classloader selection more
914
        robust in cases where the jars were distributed over several
915
        classloaders.
916

    
917
1.0.11: (19-Oct-2007) BugFix in the KeyedComboBoxModel causing
918
        NullPointerExceptions on MacOS-X; Make sure that all resource-streams
919
        that get opened also get safely closed in case of errors.
920

    
921
1.0.10: (21-May-2007) BugFix in the PackageSorter, Window positioning is now
922
        multi-screen aware.
923

    
924
1.0.9 : (23-Mar-2007) Serialization fix in TextFragment.
925

    
926
1.0.8.0 : (11-Dec-2006) Minor bugfixes in the synchronization of the Booting code
927
        and the FastStack.
928

    
929
1.0.7 : (03-Dec-2006) Cosmetic fixes for the logging of the PackageManager,
930
        ObjectTable implementation allows faster cloning of its contents,
931
        minor improvements to the GUI classes.
932

    
933
1.0.6 : (26-Sep-2006) BugFixes in the TextLayoutUtilities, SpreadSheetDate and
934
        ResourceBundleSupport classes.
935

    
936
1.0.5 : (29-Jun-2006) BugFixes in the boot code (synchronization added) and
937
        WaitingImageObserver (possible deadlock fixed). ObjectUtilities
938
                did not handle all cases where a ClassLoader could be null.
939

    
940
1.0.4 : (30-Apr-2006) Date- and NumberCellRenderer did not handle null-values
941
        properly.
942

    
943
1.0.3 : (17-Apr-2006) More improvements in the boot process for dependent
944
        library hierarchies.
945

    
946
1.0.1 : (10-Feb-2006) This release adds new boot capabilities and fixes
947
        some bugs in the XML classes. This version is required for
948
        JFreeReport and it is fully backward compatible with the 1.0.x
949
        branch.
950

    
951
1.0.0 : (14-Nov-2005) This is the official 1.0.0 release.  All future
952
        releases in the 1.0.x series will maintain backward compatibility
953
        with the 1.0.0 API.
954

    
955
1.0.0-rc1 : (01-Jun-2005) : Update to coincide with JFreeReport 0.8.0.5-5.
956
        JavaDoc update and classloader handling changed.
957

    
958
1.0.0-pre3 : (15-Apr-2005) : Some minor changes in the ResourceBundleSupport
959
        to allow the explicit definition of a locale.
960

    
961
1.0.0-pre2 : (04-Mar-2005) : Update to coincide with JFreeReport 0.8.0.5.
962
        Separated the xml-support packages into an own jar file.
963
        JFreeChart does not use these classes (except in experimental
964
        non-release code). Therefore, JFreeChart needs both libs to
965
        build, but only the jcommon.jar library to run.
966

    
967
        The a more detailed list of changed please have a look at the
968
        CHANGELOG.txt file.
969

    
970
1.0.0-pre1 : (29-Nov-2004) : Update to coincide with JFreeChart 1.0.0-pre1.
971

    
972
0.9.7 : (13-Oct-2004) Update to join JFreeReport with latest JFreeChart.
973

    
974
0.9.6 : (10-Sep-2004) Update to coincide with JFreeChart 0.9.21.
975

    
976
0.9.5 : (7-Jun-2004) Update to coincide with JFreeChart 0.9.20.
977

    
978
0.9.4 : (28-May-2004) Update to coincide with JFreeChart 0.9.19.
979

    
980
0.9.3 : (15-Apr-2004) Update to coincide with JFreeChart 0.9.18.
981

    
982
0.9.2 : (26-Mar-2004) Update to coincide with JFreeChart 0.9.17.
983

    
984
0.9.1 : (9-Jan-2004) Update to coincide with JFreeChart 0.9.16.
985

    
986
0.9.0 : (28-Nov-2003) Update to coincide with JFreeChart 0.9.15.
987

    
988
0.8.0.9 : (17-Nov-2003) Update to coincide with JFreeChart 0.9.14.
989

    
990
0.8.0.8 : (26-Sep-2003) Update to coincide with JFreeChart 0.9.13.
991

    
992
0.8.0.7 : (11-Sep-2003) Update to coincide with JFreeChart 0.9.12.
993

    
994
0.8.0.6 : (8-Aug-2003) Update to coincide with JFreeChart 0.9.11.
995

    
996
0.8.0.5 : (25-Jul-2003) Transferred some support classes from JFreeChart.
997

    
998
0.8.0.3 : (16-Jun-2003) XML Parser: error locations are printed in the
999
        parse exceptions to make debugging xml files easier.
1000

    
1001
0.8.0.2a: (04-Jun-2003) xml parser: configuration interface modified.
1002
        + Bugfixes ...
1003

    
1004
0.8.0.2 : (26-May-2003) xml parser class factory bug fix
1005

    
1006
0.8.0.1 : (09-May-2003) Added support for the xml parser and imported
1007
        some base classes from the JFreeReport project.
1008

    
1009
0.8.0.0 : (24-Apr-2003) Renamed all packages from com.jrefinery.*
1010
        to org.jfree.*.
1011

    
1012
0.7.3 : (11-Apr-2003) Added serialization for SerialDate and
1013
        SpreadsheetDate classes.  Added a SerialUtilities class.
1014
        Removed palette classes (now in JFreeChart).  Added an
1015
        attribute to control whether or not a workaround is used for
1016
        drawing rotated text.
1017

    
1018
0.7.2 : (6-Feb-2003) Bug fixes and Javadoc updates, incorporated an
1019
        Ant script to recompile the source files and generate the
1020
        Javadocs.
1021

    
1022
0.7.1 : (18-Oct-2002) Bug fixes and Javadoc updates.
1023

    
1024
0.7.0 : (4-Sep-2002) Moved package (com.jrefinery.data) to JFreeChart
1025
        project. Bug fixes and Javadoc updates.
1026

    
1027
0.6.4 : (27-Jun-2002) Added logo to about box. Minor bug fixes (plus
1028
        JUnit tests) and code tidy up.
1029

    
1030
0.6.3 : (14-Jun-2002) Bug fixes and Javadoc updates.
1031

    
1032
0.6.2 : (7-Jun-2002) Added GanttSeriesCollection and supporting
1033
        classes.  Added Polish resource bundle.  Minor bug fixes.
1034

    
1035
0.6.1 : (5-Apr-2002) Added MeterDataset interface and
1036
        DefaultMeterDataset class. Resource bundles for French, German
1037
        and Spanish languages. Reinstated the Week class.  Minor bugfixes.
1038

    
1039
0.6.0 : (22-Mar-2002) Changes to the API for the TimePeriod classes,
1040
        to improve methods that convert to java.util.Date.  New
1041
        DefaultHighLowDataset class.  New ResourceBundles for items
1042
        that require localisation.
1043

    
1044
0.5.6 : (6-Mar-2002) Bug fix for combined datasets.  Additional
1045
        methods in the TimePeriod class to handle different
1046
        timezones. Updated About box classes moved to new package
1047
        com.jrefinery.ui.about.  Renamed Files.java -->
1048
        FileUtilities.java and SerialDates.java -->
1049
        SerialDateUtilities.java.  Added new domain name
1050
        (http://www.object-refinery.com) in the source headers.
1051

    
1052
0.5.5 : (15-Feb-2002) Fixed bugs in the constructors for the
1053
        TimePeriod subclasses.  Reversed the order of the parameters
1054
        in the Month(int, int) constructor.  Added methods to
1055
        Datasets.java to handle stacked data ranges.  Fixed bug in
1056
        CombinedDataset.
1057

    
1058
0.5.4 : (8-Feb-2002) New WindDataset interface and DefaultWindDataset
1059
        class.  Bug fix for DefaultCategoryDataset.
1060

    
1061
0.5.3 : (25-Jan-2002) Bug fixes, some minor API changes.
1062

    
1063
0.5.2 : (10-Dec-2001) Added new combination datasets by Bill Kelemen.
1064
        Added contributors table to the AboutFrame class.
1065

    
1066
0.5.1 : (27-Nov-2001) AboutPanel and AboutFrame classes added.
1067

    
1068
0.5.0 : (21-Nov-2001) PieDataset and DefaultPieDataset classes added.
1069

    
1070
0.4.2 : (16-Nov-2001) New classes in the com.jrefinery.data.* package,
1071
        plus some new JUnit test cases.
1072
</pre>