root / tmp / org.txm.libs.jfreechart / about.html @ 2424
Historique | Voir | Annoter | Télécharger (64,44 ko)
| 1 | 2327 | sjacqu01 | JFreeChart |
|---|---|---|---|
| 2 | 2327 | sjacqu01 | ========== |
| 3 | 230 | sjacqu01 | |
| 4 | 2327 | sjacqu01 | Version 1.5.0, 5 November 2017. |
| 5 | 230 | sjacqu01 | |
| 6 | 2327 | sjacqu01 | [](https://maven-badges.herokuapp.com/maven-central/org.jfree/jfreechart) |
| 7 | 230 | sjacqu01 | |
| 8 | 2327 | sjacqu01 | Overview |
| 9 | 2327 | sjacqu01 | -------- |
| 10 | 2327 | sjacqu01 | JFreeChart is a comprehensive free chart library for the Java(tm) platform that |
| 11 | 2327 | sjacqu01 | can be used on the client-side (JavaFX and Swing) or the server side (with |
| 12 | 2327 | sjacqu01 | export to multiple formats including SVG, PNG and PDF). |
| 13 | 230 | sjacqu01 | |
| 14 | 2327 | sjacqu01 |  |
| 15 | 230 | sjacqu01 | |
| 16 | 2327 | sjacqu01 | The home page for the project is: |
| 17 | 230 | sjacqu01 | |
| 18 | 2327 | sjacqu01 | http://www.jfree.org/jfreechart |
| 19 | 230 | sjacqu01 | |
| 20 | 2327 | sjacqu01 | JFreeChart requires JDK 1.6.0 or later. If JavaFX support is required, you |
| 21 | 2327 | sjacqu01 | need to also include the JFreeChart-FX extensions: |
| 22 | 2327 | sjacqu01 | |
| 23 | 2327 | sjacqu01 | https://github.com/jfree/jfreechart-fx |
| 24 | 2327 | sjacqu01 | |
| 25 | 2327 | sjacqu01 | The library is licensed under the terms of the GNU Lesser General Public |
| 26 | 2327 | sjacqu01 | License (LGPL) version 2.1 or later. |
| 27 | 2327 | sjacqu01 | |
| 28 | 2327 | sjacqu01 | |
| 29 | 2327 | sjacqu01 | Using JFreeChart |
| 30 | 2327 | sjacqu01 | ---------------- |
| 31 | 2327 | sjacqu01 | To use JFreeChart in your projects, add the following dependency to your build tool: |
| 32 | 2327 | sjacqu01 | |
| 33 | 2327 | sjacqu01 | <dependency>
|
| 34 | 2327 | sjacqu01 | <groupId>org.jfree</groupId> |
| 35 | 2327 | sjacqu01 | <artifactId>jfreechart</artifactId> |
| 36 | 2327 | sjacqu01 | <version>1.5.0</version> |
| 37 | 2327 | sjacqu01 | </dependency>
|
| 38 | 2327 | sjacqu01 | |
| 39 | 2327 | sjacqu01 | |
| 40 | 2327 | sjacqu01 | Building JFreeChart |
| 41 | 230 | sjacqu01 | ------------------- |
| 42 | 2327 | sjacqu01 | You can build JFreeChart using Maven by issuing the following command from the root directory of the project: |
| 43 | 230 | sjacqu01 | |
| 44 | 2327 | sjacqu01 | mvn clean install |
| 45 | 230 | sjacqu01 | |
| 46 | 2327 | sjacqu01 | The build requires JDK 1.6.0 or later. |
| 47 | 230 | sjacqu01 | |
| 48 | 230 | sjacqu01 | |
| 49 | 2327 | sjacqu01 | Migration from JFreeChart 1.0.x |
| 50 | 2327 | sjacqu01 | ------------------------------- |
| 51 | 2327 | sjacqu01 | When migrating from JFreeChart 1.0.x to JFreeChart 1.5.0, please be aware of the following API changes: |
| 52 | 230 | sjacqu01 | |
| 53 | 2327 | sjacqu01 | * all the classes from JCommon that are used by JFreeChart have integrated within the JFreeChart jar file within a different package than before (you will need to change your imports); |
| 54 | 2327 | sjacqu01 | * many methods `getBaseXXX()/setBaseXXX()` have been renamed `setDefaultXXX()/getDefaultXXX()`; |
| 55 | 2327 | sjacqu01 | * the `ChartUtilities` class has been renamed `ChartUtils`; |
| 56 | 2327 | sjacqu01 | * all the classes relating to pseudo-3D charts have been removed, as much better 3D charts are offered by [Orson Charts](https://github.com/jfree/orson-charts) so we prefer not to maintain the pseudo-3D chart code within JFreeChart; |
| 57 | 2327 | sjacqu01 | * the `SegmentedTimeline` class has been removed due to being (a) complex, (b) not always being correct and, as a result, generating too many support requests; |
| 58 | 2327 | sjacqu01 | * the `org.jfree.chart.utils.ParamChecks` class has been renamed `org.jfree.chart.utils.Args`. |
| 59 | 230 | sjacqu01 | |
| 60 | 2327 | sjacqu01 | Please refer to [Issue 66](https://github.com/jfree/jfreechart/issues/66) for additional info. |
| 61 | 230 | sjacqu01 | |
| 62 | 230 | sjacqu01 | |
| 63 | 2327 | sjacqu01 | Demos |
| 64 | 2327 | sjacqu01 | ----- |
| 65 | 2327 | sjacqu01 | A small set of demo applications can be found in the following projects here |
| 66 | 2327 | sjacqu01 | at GitHub: |
| 67 | 230 | sjacqu01 | |
| 68 | 2327 | sjacqu01 | * [JFree-Demos](https://github.com/jfree/jfree-demos "JFree-Demos Project Page at GitHub") |
| 69 | 2327 | sjacqu01 | * [JFree-FXDemos](https://github.com/jfree/jfree-fxdemos "JFree-FXDemos Project Page at GitHub") |
| 70 | 230 | sjacqu01 | |
| 71 | 230 | sjacqu01 | |
| 72 | 2327 | sjacqu01 | History |
| 73 | 2327 | sjacqu01 | ------- |
| 74 | 230 | sjacqu01 | |
| 75 | 2327 | sjacqu01 | ##### Version 1.5.0 (5 November 2017) |
| 76 | 2327 | sjacqu01 | - all JavaFX classes moved to a separate project; |
| 77 | 2327 | sjacqu01 | - added cleaner method to create histograms in `ChartFactory`; |
| 78 | 2327 | sjacqu01 | - JCommon removed as a dependency, and required classes incorporated directly (including package rename); |
| 79 | 2327 | sjacqu01 | - pull request #4 improvements to `XYStepRenderer`; |
| 80 | 2327 | sjacqu01 | - bug #36 fix for crosshairs with multiple datasets / axes; |
| 81 | 2327 | sjacqu01 | - bug #25 fix for `DateAxis.previousStandardDate()` method; |
| 82 | 2327 | sjacqu01 | - bug #19 fix for default time zone in `SegmentedDateAxis`; |
| 83 | 2327 | sjacqu01 | - SourceForge #1147 improve performance of `CategoryPlot` mapping datasets to axes; |
| 84 | 2327 | sjacqu01 | - moved SWT code out into separate projects; |
| 85 | 2327 | sjacqu01 | - moved demo programs to a separate project; |
| 86 | 2327 | sjacqu01 | - dropped the Ant build; |
| 87 | 230 | sjacqu01 | |
| 88 | 2327 | sjacqu01 | ##### Version 1.0.19 (31-Jul-2014) |
| 89 | 2327 | sjacqu01 | - fixed clipping issues for combined plots in JavaFX; |
| 90 | 2327 | sjacqu01 | - fixed a memory leak in the new JavaFX `ChartCanvas` class; |
| 91 | 2327 | sjacqu01 | - `CombinedDomainXYPlot` and `CombinedRangeXYPlot` now take into account the pannable flags in the subplots; |
| 92 | 2327 | sjacqu01 | - `FastScatterPlot` panning direction is corrected; |
| 93 | 2327 | sjacqu01 | - added rendering hints to sharpen gridlines and borders in most output formats; |
| 94 | 2327 | sjacqu01 | - JFreeSVG updated to version 2.0; |
| 95 | 2327 | sjacqu01 | - included a preview of JSFreeChart, a 2D chart library written in JavaScript that is conceptually similar to JFreeChart but runs directly in a web browser. |
| 96 | 230 | sjacqu01 | |
| 97 | 2327 | sjacqu01 | ##### Version 1.0.18 (3-Jul-2014) |
| 98 | 2327 | sjacqu01 | - added JavaFX support via `FXGraphics2D`; |
| 99 | 2327 | sjacqu01 | - improved `LogAxis` labelling; |
| 100 | 2327 | sjacqu01 | - improved numeric tick labelling; |
| 101 | 2327 | sjacqu01 | - center text support in `RingPlot`; |
| 102 | 2327 | sjacqu01 | - `stepPoint` attribute in the `XYStepAreaRenderer`; |
| 103 | 2327 | sjacqu01 | - other minor improvements and bug fixes. |
| 104 | 230 | sjacqu01 | |
| 105 | 2327 | sjacqu01 | ##### Version 1.0.17 (22-Nov-2013) |
| 106 | 2327 | sjacqu01 | - Enhanced `XYSplineRenderer` with new area fill (contributed by Klaus Rheinwald); |
| 107 | 2327 | sjacqu01 | - added a notify flag to all datasets that extend `AbstractDataset`; |
| 108 | 2327 | sjacqu01 | - extended `TimeSeriesCollection` to validate `TimeSeries` keys for uniqueness; |
| 109 | 2327 | sjacqu01 | - added a new `DirectionalGradientPaintTransformer` (by Peter Kolb); |
| 110 | 2327 | sjacqu01 | - updated `OHLCSeries`; |
| 111 | 2327 | sjacqu01 | - added `HMSNumberFormat`; |
| 112 | 2327 | sjacqu01 | - updated JCommon to version 1.0.21 (includes rotated text improvements) and fixed some minor bugs. |
| 113 | 230 | sjacqu01 | |
| 114 | 2327 | sjacqu01 | ###### Bug Fixes |
| 115 | 2327 | sjacqu01 | - 977 : Multithreading issue with `DateAxis`; |
| 116 | 2327 | sjacqu01 | - 1084 : `BorderArrangement.add()` possible `ClassCastException`; |
| 117 | 2327 | sjacqu01 | - 1099 : `XYSeriesCollection.removeSeries(int)` does not deregister listener; |
| 118 | 2327 | sjacqu01 | - 1109 : `WaterfallBarRenderer` uses wrong color for diff 0. |
| 119 | 230 | sjacqu01 | |
| 120 | 230 | sjacqu01 | |
| 121 | 2327 | sjacqu01 | ##### Version 1.0.16 (13-Sep-2013) |
| 122 | 230 | sjacqu01 | |
| 123 | 2327 | sjacqu01 | *** THIS RELEASE REQUIRES JDK/JRE 1.6.0 OR LATER. *** |
| 124 | 230 | sjacqu01 | |
| 125 | 2327 | sjacqu01 | - Provided subscript/superscript support for axis labels (via `AttributedString`); |
| 126 | 2327 | sjacqu01 | - new axis label positioning options; |
| 127 | 2327 | sjacqu01 | - simplified `ChartFactory` methods; |
| 128 | 2327 | sjacqu01 | - added new methods to `DatasetUtilities` to interpolate y-values in `XYDatasets`; |
| 129 | 2327 | sjacqu01 | - added URLs to labels on `CategoryAxis`; |
| 130 | 2327 | sjacqu01 | - seamless integration with JFreeSVG (http://www.jfree.org/jfreesvg/) and OrsonPDF |
| 131 | 2327 | sjacqu01 | (http://www.object-refinery.com/pdf/); |
| 132 | 2327 | sjacqu01 | - improved the consistency of the `SWTGraphics2D` implementation; |
| 133 | 230 | sjacqu01 | |
| 134 | 2327 | sjacqu01 | All the JUnit tests have been upgraded to JUnit 4. |
| 135 | 230 | sjacqu01 | |
| 136 | 2327 | sjacqu01 | ###### Bug Fixes |
| 137 | 230 | sjacqu01 | |
| 138 | 2327 | sjacqu01 | - 1107 : Fixed TimeZone issue in `PeriodAxis`; |
| 139 | 230 | sjacqu01 | |
| 140 | 2327 | sjacqu01 | Also fixed a line drawing issue with the `StackedXYAreaRenderer`, and a memory |
| 141 | 2327 | sjacqu01 | leak in the SWT `ChartComposite` class. |
| 142 | 230 | sjacqu01 | |
| 143 | 230 | sjacqu01 | |
| 144 | 2327 | sjacqu01 | ##### Version 1.0.15 (4-Jul-2013) |
| 145 | 2327 | sjacqu01 | - Added support for non-visible series in `XYBarRenderer`; |
| 146 | 2327 | sjacqu01 | - minor gridlines in `PolarPlot`; |
| 147 | 2327 | sjacqu01 | - legend item ordering; |
| 148 | 2327 | sjacqu01 | - chart editor enhancements; |
| 149 | 2327 | sjacqu01 | - updates to `StandardDialScale`; |
| 150 | 2327 | sjacqu01 | - localisation files for Japanese; |
| 151 | 2327 | sjacqu01 | - refactored parameter checks. |
| 152 | 230 | sjacqu01 | |
| 153 | 2327 | sjacqu01 | This release also fixes a minor security flaw in the `DisplayChart` class, detected and reported by OSI Security: |
| 154 | 230 | sjacqu01 | |
| 155 | 2327 | sjacqu01 | http://www.osisecurity.com.au/advisories/jfreechart-path-disclosure |
| 156 | 230 | sjacqu01 | |
| 157 | 2327 | sjacqu01 | ###### Patches |
| 158 | 230 | sjacqu01 | |
| 159 | 2327 | sjacqu01 | - 3500621 : `LegendTitle` order attribute (by Simon Kaczor); |
| 160 | 2327 | sjacqu01 | - 3463807 : `ChartComposite` does not dispose popup (by Sebastiao Correia); |
| 161 | 2327 | sjacqu01 | - 3204823 : `PaintAlpha` for 3D effects (by Dave Law); |
| 162 | 230 | sjacqu01 | |
| 163 | 2327 | sjacqu01 | ###### Bug Fixes |
| 164 | 230 | sjacqu01 | |
| 165 | 2327 | sjacqu01 | - 3561093 : Rendering anomaly for `XYPlots`; |
| 166 | 2327 | sjacqu01 | - 3555275 : `ValueAxis.reserveSpace()` problem for axes with fixed dimension; |
| 167 | 2327 | sjacqu01 | - 3521736 : `DeviationRenderer` optimisation (by Milan Ramaiya); |
| 168 | 2327 | sjacqu01 | - 3514487 : `SWTGraphics2D` `get/setStroke()` problem; |
| 169 | 2327 | sjacqu01 | - 3508799 : `DefaultPolarItemRenderer` does not populate `seriesKey` in `LegendItem`; |
| 170 | 2327 | sjacqu01 | - 3482106 : Missing text in `SWTGraphics2D` (by Kevin Xu); |
| 171 | 2327 | sjacqu01 | - 3484408 : Maven fixes (Martin Hoeller); |
| 172 | 2327 | sjacqu01 | - 3484403 : `DateAxis` endless loop (by Martin Hoeller); |
| 173 | 2327 | sjacqu01 | - 3446965 : `TimeSeries` calculates range incorrectly in `addOrUpdate()`; |
| 174 | 2327 | sjacqu01 | - 3445507 : `TimeSeriesCollection.findRangeBounds()` regression; |
| 175 | 2327 | sjacqu01 | - 3425881 : `XYDifferenceRenderer` fix (by Patrick Schlott/Christoph Schroeder); |
| 176 | 2327 | sjacqu01 | - 2963199 : SWT print job (by Jonas Rüttimann); |
| 177 | 2327 | sjacqu01 | - 2879650 : Path disclosure vulnerability in `DisplayChart` servlet; |
| 178 | 230 | sjacqu01 | |
| 179 | 2327 | sjacqu01 | Also fixed a rendering issue for polar charts using an inverted axis. |
| 180 | 230 | sjacqu01 | |
| 181 | 2327 | sjacqu01 | ##### Version 1.0.14 (20-Nov-2011) |
| 182 | 2327 | sjacqu01 | This release contains: |
| 183 | 230 | sjacqu01 | |
| 184 | 2327 | sjacqu01 | - support for multiple and logarithmic axes with `PolarPlot`; |
| 185 | 2327 | sjacqu01 | - optional drop-shadows in plot rendering; |
| 186 | 2327 | sjacqu01 | - fitting polynomial functions to a data series; |
| 187 | 2327 | sjacqu01 | - some performance improvements in the `TimeSeriesCollection` class; |
| 188 | 2327 | sjacqu01 | - mouse wheel rotation of pie charts; |
| 189 | 2327 | sjacqu01 | - improved Maven support. |
| 190 | 230 | sjacqu01 | |
| 191 | 2327 | sjacqu01 | ###### Patches |
| 192 | 230 | sjacqu01 | |
| 193 | 2327 | sjacqu01 | - 3435734 : Fix lines overlapping item labels (by Martin Hoeller); |
| 194 | 2327 | sjacqu01 | - 3421088 : Bugfix for misalignment in `BoxAndWhiskerRenderer`; |
| 195 | 2327 | sjacqu01 | - 2952086 : Enhancement for finding bounds in `XYZDatasets`; |
| 196 | 2327 | sjacqu01 | - 2954302 : `CategoryPointerAnnotation` line calculation; |
| 197 | 2327 | sjacqu01 | - 2902842 : `HistogramDataset.addSeries()` fires change change event (by Thomas A Caswell); |
| 198 | 2327 | sjacqu01 | - 2868608 : Whisker width attribute for `BoxAndWhiskerRenderer` (by Peter Becker); |
| 199 | 2327 | sjacqu01 | - 2868585 : Added `useOutlinePaint` flag for `BoxAndWhiskerRenderer` (by Peter Becker); |
| 200 | 2327 | sjacqu01 | - 2850344 : `PolarPlot` enhancements (by Martin Hoeller); |
| 201 | 2327 | sjacqu01 | - 2795746 : Support for polynomial regression; |
| 202 | 2327 | sjacqu01 | - 2791407 : Fixes for `findRangeBounds()` in various renderers. |
| 203 | 230 | sjacqu01 | |
| 204 | 2327 | sjacqu01 | ###### Bug Fixes |
| 205 | 230 | sjacqu01 | |
| 206 | 2327 | sjacqu01 | - 3440237 : Shadows always visible; |
| 207 | 2327 | sjacqu01 | - 3432721 : `PolarPlot` doesn't work with logarithmic axis; |
| 208 | 2327 | sjacqu01 | - 3433405 : `LineChart3D` - Problem with Item Labels; |
| 209 | 2327 | sjacqu01 | - 3429707 : `LogAxis` endless loop; |
| 210 | 2327 | sjacqu01 | - 3428870 : Missing argument check in `TextAnnotation`; |
| 211 | 2327 | sjacqu01 | - 3418287 : `RelativeDateFormatTest.java` is locale dependent; |
| 212 | 2327 | sjacqu01 | - 3353913 : Localisation fixes for `ChartPanel`, `CompassPlot` and `PiePlot3D`; |
| 213 | 2327 | sjacqu01 | - 3237879 : `RingPlot` should respect `getSectionOutlineVisible()`; |
| 214 | 2327 | sjacqu01 | - 3190615 : Added missing `clear()` method in `CategoryTableXYDataset`; |
| 215 | 2327 | sjacqu01 | - 3165708 : `PolarChartPanel` localisation fix; |
| 216 | 2327 | sjacqu01 | - 3072674 : Bad handling of `NaN` in `DefaultStatisticalCategoryDataset`; |
| 217 | 2327 | sjacqu01 | - 3035289 : `StackedXYBarRenderer` should respect series/item visible flags; |
| 218 | 2327 | sjacqu01 | - 3026341 : Check for null in `getDomain/RangeBounds()` for `XYShapeRenderer`; |
| 219 | 2327 | sjacqu01 | - 2947660 : `AbstractCategoryRenderer` fix null check in `getLegendItems()`; |
| 220 | 2327 | sjacqu01 | - 2946521 : `StandardDialScale` check `majorTickIncrement` argument; |
| 221 | 2327 | sjacqu01 | - 2876406 : `TimeTableXYDataset` should support `Comparable` for series keys; |
| 222 | 2327 | sjacqu01 | - 2868557 : `BoxAndWhiskerRenderer` should fire change event in `setMedianVisible()`; |
| 223 | 2327 | sjacqu01 | - 2849731 : For `IntervalCategoryDataset` and `IntervalXYDataset`, fix `iterateRangeBounds()` in `DatasetUtilities`; |
| 224 | 2327 | sjacqu01 | - 2840132 : `AbstractXYItemRenderer` `drawAnnotations` doesn't set renderer index; |
| 225 | 2327 | sjacqu01 | - 2810220 : Offset problem in `StatisticalBarRenderer`; |
| 226 | 2327 | sjacqu01 | - 2802014 : Dial value border too small; |
| 227 | 2327 | sjacqu01 | - 2781844 : `XYPointerAnnotation` arrow drawing; |
| 228 | 2327 | sjacqu01 | - 1937486 : `AreaRenderer` doesn't respect `AreaRendererEndType.LEVEL`; |
| 229 | 230 | sjacqu01 | |
| 230 | 2327 | sjacqu01 | Also fixed: |
| 231 | 2327 | sjacqu01 | - use of simple label offset in `PiePlot`; |
| 232 | 2327 | sjacqu01 | - cached `minY` and `maxY` in `TimeSeries.createCopy()`; |
| 233 | 2327 | sjacqu01 | - scaling issues for charts copied to the clipboard; |
| 234 | 2327 | sjacqu01 | - use of timezone in `TimeTableXYDataset` constructor; |
| 235 | 2327 | sjacqu01 | - duplicate series names in `XYSeriesCollection`; |
| 236 | 2327 | sjacqu01 | - `HistogramDataset` fires a change event in `addSeries()`; |
| 237 | 2327 | sjacqu01 | - check visibility of main chart title before drawing it; |
| 238 | 2327 | sjacqu01 | - fixed serialization of `PowerFunction2D`, `NormalDistributionFunction2D`, and `LineFunction2D`; |
| 239 | 2327 | sjacqu01 | - item label positioning for the `AreaRenderer` class when the plot has an horizontal orientation. |
| 240 | 230 | sjacqu01 | |
| 241 | 2327 | sjacqu01 | ##### Version 1.0.13 (17-Apr-2009) |
| 242 | 230 | sjacqu01 | |
| 243 | 2327 | sjacqu01 | > SPECIAL NOTICE: There will be a birds-of-a-feather session for JFreeChart at this year's JavaOne conference in San Francisco. The session is scheduled for 6.45pm to 7.35pm on Wednesday 3 June.
|
| 244 | 230 | sjacqu01 | |
| 245 | 2327 | sjacqu01 | This release contains: |
| 246 | 230 | sjacqu01 | |
| 247 | 2327 | sjacqu01 | - updates to the `ChartPanel` class to support copying charts to the clipboard, |
| 248 | 2327 | sjacqu01 | panning and mouse-wheel zooming, and an overlay mechanism that supports |
| 249 | 2327 | sjacqu01 | crosshairs; |
| 250 | 2327 | sjacqu01 | - enhancements to the auto-range calculation for axes, providing the ability |
| 251 | 2327 | sjacqu01 | to use subranges only and also to skip hidden series; |
| 252 | 2327 | sjacqu01 | - updates for many of the `CategoryItemRenderer` implementations to ensure that |
| 253 | 2327 | sjacqu01 | they respect the `seriesVisible` flags; |
| 254 | 2327 | sjacqu01 | - an improvement to the `TimeSeries` class so that it is no longer necessary to |
| 255 | 2327 | sjacqu01 | specify the time period type in the constructor; |
| 256 | 2327 | sjacqu01 | - a new `SamplingXYLineRenderer` for improving the performance of time series |
| 257 | 2327 | sjacqu01 | charts with large datasets; |
| 258 | 2327 | sjacqu01 | - the `XYSeries/XYSeriesCollection` classes now cache the minimum and maximum |
| 259 | 2327 | sjacqu01 | data values to improve the performance of charts with large datasets; |
| 260 | 2327 | sjacqu01 | - entities are now created for the chart, data area and axes, allowing mouse |
| 261 | 2327 | sjacqu01 | clicks to be detected for these regions; |
| 262 | 2327 | sjacqu01 | - added a bar alignment factor to the `XYBarRenderer` class; |
| 263 | 2327 | sjacqu01 | - a new `errorIndicatorStroke` field for the `StatisticalLineAndShapeRenderer` and `XYErrorRenderer` classes; |
| 264 | 2327 | sjacqu01 | - added a new `HeatMapDataset` interface, `DefaultHeatMapDataset` implementation, |
| 265 | 2327 | sjacqu01 | and a `HeatMapUtilities` class to make it easier to create heat map charts; |
| 266 | 2327 | sjacqu01 | - there is a new flag to allow an `XYDataImageAnnotation` to be included in the |
| 267 | 2327 | sjacqu01 | automatic range calculation for the axes; |
| 268 | 2327 | sjacqu01 | - additional attributes in the `XYTextAnnotation` class; |
| 269 | 2327 | sjacqu01 | - added a `sampleFunction2DToSeries()` method to the `DatasetUtilities` class; |
| 270 | 2327 | sjacqu01 | - some changes to the `ChartPanel` class that help to work around a regression in |
| 271 | 2327 | sjacqu01 | JRE 1.6.0_10 relating to drawing in XOR mode. Regarding this final point: |
| 272 | 2327 | sjacqu01 | * the default value for the `useBuffer` flag has changed to true, which means |
| 273 | 2327 | sjacqu01 | that all charts will, by default, be rendered into an off-screen image |
| 274 | 2327 | sjacqu01 | before being displayed in the `ChartPanel`; |
| 275 | 2327 | sjacqu01 | * the zoom rectangle is drawn using XOR mode *only* when the `useBuffer` |
| 276 | 2327 | sjacqu01 | flag has been set to false. |
| 277 | 2327 | sjacqu01 | For most usage, this should improve performance (but at the cost of using more |
| 278 | 2327 | sjacqu01 | memory for each `ChartPanel` used in your application); |
| 279 | 230 | sjacqu01 | |
| 280 | 2327 | sjacqu01 | ###### Bug Fixes |
| 281 | 230 | sjacqu01 | |
| 282 | 2327 | sjacqu01 | - 2690293 : Problem with Javascript escape characters; |
| 283 | 2327 | sjacqu01 | - 2617557 : `StandardDialScale` ignored `tickLabelPaint`; |
| 284 | 2327 | sjacqu01 | - 2612649 : `Stroke` selection in plot property editor; |
| 285 | 2327 | sjacqu01 | - 2583891 : `SWTGraphics2D.fillPolygon()` not implemented; |
| 286 | 2327 | sjacqu01 | - 2564636 : `Month` constructor ignores Locale; |
| 287 | 2327 | sjacqu01 | - 2502355 : `ChartPanel` sending multiple events; |
| 288 | 2327 | sjacqu01 | - 2490803 : `PeriodAxis.setRange()` method doesn't take into account that the axis |
| 289 | 2327 | sjacqu01 | displays whole periods; |
| 290 | 230 | sjacqu01 | |
| 291 | 2327 | sjacqu01 | In addition, a bug in the `SlidingCategoryDataset` class has been fixed, the |
| 292 | 2327 | sjacqu01 | correct outline paint is now used by `GradientXYBarPainter`, a new method |
| 293 | 2327 | sjacqu01 | has been added to the `ImageMapUtilities` class to escape special characters |
| 294 | 2327 | sjacqu01 | in Javascript strings to avoid problems with the OverLIB and DynamicDrive |
| 295 | 2327 | sjacqu01 | tooltips, and there are some important fixes in the `LogAxis` class. |
| 296 | 230 | sjacqu01 | |
| 297 | 2327 | sjacqu01 | This release passes 2110 JUnit tests (0 failures) on JRE 1.6.0_12. |
| 298 | 230 | sjacqu01 | |
| 299 | 230 | sjacqu01 | |
| 300 | 2327 | sjacqu01 | ##### Version 1.0.12 (31-Dec-2008) |
| 301 | 230 | sjacqu01 | |
| 302 | 2327 | sjacqu01 | This release adds |
| 303 | 2327 | sjacqu01 | - support for minor tick marks; |
| 304 | 2327 | sjacqu01 | - mapping datasets to more than one axis; |
| 305 | 2327 | sjacqu01 | - an important fix for the `XYSeries` class (relating to the `addOrUpdate()` method); |
| 306 | 2327 | sjacqu01 | - plus numerous other bug fixes. |
| 307 | 230 | sjacqu01 | |
| 308 | 2327 | sjacqu01 | This release passes 1996 JUnit test (0 failures) on JRE 1.6.0_10. |
| 309 | 230 | sjacqu01 | |
| 310 | 2327 | sjacqu01 | ###### API Adjustments |
| 311 | 2327 | sjacqu01 | - `CategoryPlot` : added `mapDatasetToDomainAxes()` and `mapDatasetToRangeAxes()` methods; |
| 312 | 2327 | sjacqu01 | - `Month` : added a new constructor `Month(Date, TimeZone, Locale)` and deprecated `Month(Date, TimeZone)`; |
| 313 | 2327 | sjacqu01 | - `Quarter` : added a new constructor `Quarter(Date, TimeZone, Locale)` and deprecated `Quarter(Date, TimeZone)`; |
| 314 | 2327 | sjacqu01 | - `XYPlot` : added `mapDatasetToDomainAxes()` and `mapDatasetToRangeAxes()` methods; |
| 315 | 2327 | sjacqu01 | - `Year` : added a new constructor `Year(Date, TimeZone, Locale)` and deprecated `Year(Date, TimeZone)`; |
| 316 | 230 | sjacqu01 | |
| 317 | 2327 | sjacqu01 | ###### Bug Fixes |
| 318 | 2327 | sjacqu01 | - 2471906 : `XYAreaRenderer` with dashed outline - performance problem; |
| 319 | 2327 | sjacqu01 | - 2452078 : `StackedAreaChart` has gaps; |
| 320 | 2327 | sjacqu01 | - 2275695 : `NullPointerException` for `SubCategoryAxis` on plot with null dataset; |
| 321 | 2327 | sjacqu01 | - 2221495 : `XYLineAnnotation` with dashed stroke; |
| 322 | 2327 | sjacqu01 | - 2216511 : `SWTBarChartDemo1` throws `RuntimeException`; |
| 323 | 2327 | sjacqu01 | - 2201869 : `DateAxis` tick label position error; |
| 324 | 2327 | sjacqu01 | - 2121818 : Label link lines for very thin `RingPlot`; |
| 325 | 2327 | sjacqu01 | - 2113627 : `XYStepRenderer` item labels; |
| 326 | 2327 | sjacqu01 | - 1955483 : `XYSeries.addOrUpdate()` problem. |
| 327 | 230 | sjacqu01 | |
| 328 | 2327 | sjacqu01 | Also fixed `StackedXYBarRenderer` which was ignoring the `shadowsVisible` attribute. |
| 329 | 230 | sjacqu01 | |
| 330 | 230 | sjacqu01 | |
| 331 | 2327 | sjacqu01 | ##### Version 1.0.11 (18-Sep-2008) |
| 332 | 230 | sjacqu01 | |
| 333 | 2327 | sjacqu01 | This release features: |
| 334 | 2327 | sjacqu01 | - a new chart theming mechanism to allow charts to be restyled conveniently; |
| 335 | 2327 | sjacqu01 | - a new `BarPainter` mechanism to enhance the appearance of bar charts; |
| 336 | 2327 | sjacqu01 | - a new `XYShapeRenderer` class; |
| 337 | 2327 | sjacqu01 | - a scaling facility for the `XYDrawableAnnotation` for drawing images within specific data coordinates; |
| 338 | 2327 | sjacqu01 | - some new classes (`XYTaskDataset`, `XYDataImageAnnotation` and `XYTitleAnnotation`); |
| 339 | 2327 | sjacqu01 | - a modification to the `Year` class to support an extended range; |
| 340 | 2327 | sjacqu01 | - various bug fixes and API improvements. |
| 341 | 230 | sjacqu01 | |
| 342 | 2327 | sjacqu01 | There is an important bug fix for the `StackedBarRenderer3D` class (see bug 2031407). |
| 343 | 230 | sjacqu01 | |
| 344 | 2327 | sjacqu01 | This release passes 1,961 JUnit tests (0 failures) on JRE 1.6.0_07. |
| 345 | 230 | sjacqu01 | |
| 346 | 2327 | sjacqu01 | ###### API Adjustments |
| 347 | 2327 | sjacqu01 | - `AbstractRenderer` - added `clearSeriesPaints()` and `clearSeriesStrokes()` methods; |
| 348 | 2327 | sjacqu01 | - `BarRenderer` - added `shadowPaint` attribute; |
| 349 | 2327 | sjacqu01 | - `CategoryAxis` - added `getCategoryMiddle()` method; |
| 350 | 2327 | sjacqu01 | - `CategoryPlot` - added `getRendererCount()` method; |
| 351 | 2327 | sjacqu01 | - `ChartFactory` - added `get/setChartTheme()` methods; |
| 352 | 2327 | sjacqu01 | - `ChartPanel` - increased default maximum drawing width and height; |
| 353 | 2327 | sjacqu01 | - `ChartTheme` - new interface; |
| 354 | 2327 | sjacqu01 | - `ChartUtilities` - added `applyCurrentTheme()` method; |
| 355 | 2327 | sjacqu01 | - `CompositeTitle` - added `backgroundPaint` attribute; |
| 356 | 2327 | sjacqu01 | - `GradientBarPainter` - new class; |
| 357 | 2327 | sjacqu01 | - `LegendTitle` - added `getWrapper()` method; |
| 358 | 2327 | sjacqu01 | - `OHLCSeriesCollection` - added `xPosition` attribute; |
| 359 | 2327 | sjacqu01 | - `PaintScaleLegend` - new subdivisions field; |
| 360 | 2327 | sjacqu01 | - `PiePlot` - added `autoPopulate` flags, and methods to clear section attributes; |
| 361 | 2327 | sjacqu01 | - `Plot` - added `setDrawingSupplier()` method; |
| 362 | 2327 | sjacqu01 | - `RegularTimePeriod` - the `DEFAULT_TIME_ZONE` field has been deprecated in this release; |
| 363 | 2327 | sjacqu01 | - `RelativeDateFormat` - added methods to control formatting of hours and minutes - see patch 2033092; |
| 364 | 2327 | sjacqu01 | - `StandardChartTheme` - new class; |
| 365 | 2327 | sjacqu01 | - `XYItemRendererState` - new methods; |
| 366 | 2327 | sjacqu01 | - `XYPlot` - added `getRendererCount()` method; |
| 367 | 2327 | sjacqu01 | - `XYShapeRenderer` - new class; |
| 368 | 2327 | sjacqu01 | - `XYTaskDataset` - new class. |
| 369 | 230 | sjacqu01 | |
| 370 | 2327 | sjacqu01 | ###### Patches |
| 371 | 2327 | sjacqu01 | - 1997549 : Status calls to `XYItemRendererState` [Ulrich Voigt]; |
| 372 | 2327 | sjacqu01 | - 2006826 : `CompositeTitle` drawing fix; |
| 373 | 2327 | sjacqu01 | - 2033092 : Additional formatters for `RelativeDateFormat` [Cole Markham]; |
| 374 | 230 | sjacqu01 | |
| 375 | 2327 | sjacqu01 | ###### Bug Fixes |
| 376 | 2327 | sjacqu01 | - 1994355 : `ChartComposite` listener type; |
| 377 | 2327 | sjacqu01 | - 2031407 : Incorrect rendering in `StackedBarRenderer3D`; |
| 378 | 2327 | sjacqu01 | - 2033721 : `WaferMapRenderer`; |
| 379 | 2327 | sjacqu01 | - 2051168 : No key in `LegendItemEntity` for pie charts; |
| 380 | 230 | sjacqu01 | |
| 381 | 2327 | sjacqu01 | Also fixed drawing of alternate grid bands in `SymbolAxis`, the `totalWeight` |
| 382 | 2327 | sjacqu01 | calculation in the `CombinedXXXPlot` classes, a `NullPointerException` in the |
| 383 | 2327 | sjacqu01 | `XYPlot` class when drawing quadrants, outline visibility in the |
| 384 | 2327 | sjacqu01 | `CategoryPlot` class, and auto-range calculations with `XYBarRenderer`. |
| 385 | 230 | sjacqu01 | |
| 386 | 2327 | sjacqu01 | ##### Version 1.0.10 (8-Jun-2008) |
| 387 | 230 | sjacqu01 | |
| 388 | 2327 | sjacqu01 | This release contains various bug fixes and minor enhancements to JFreeChart. |
| 389 | 2327 | sjacqu01 | |
| 390 | 2327 | sjacqu01 | - PiePlot labelling has been enhanced (new curve options, and more robust bounds checking); |
| 391 | 2327 | sjacqu01 | - The BoxAndWhiskerRenderer now has a maximumBarWidth attribute; |
| 392 | 2327 | sjacqu01 | - the XYStepRenderer has a new stepPoint attribute; |
| 393 | 2327 | sjacqu01 | - The RelativeDateFormat class has new options; |
| 394 | 2327 | sjacqu01 | - There are new dataset classes (SlidingCategoryDataset and SlidingGanttDataset) that permit a subset of categories to be plotted, and allow charts based on these datasets to simulate scrolling. |
| 395 | 2327 | sjacqu01 | - There is a new ShortTextTitle class. |
| 396 | 2327 | sjacqu01 | |
| 397 | 2327 | sjacqu01 | This release passes 1,929 JUnit tests (0 failures) on JRE 1.6.0_03. |
| 398 | 2327 | sjacqu01 | |
| 399 | 2327 | sjacqu01 | ###### API Adjustments: |
| 400 | 2327 | sjacqu01 | |
| 401 | 2327 | sjacqu01 | - BoxAndWhiskerRenderer - added maximumBarWidth attribute (see patch 1866446); |
| 402 | 2327 | sjacqu01 | - ChartPanel - the zoomPoint attribute has been changed from Point to Point2D; |
| 403 | 2327 | sjacqu01 | - DatasetUtilities - iterateCategoryRangeBounds() is deprecated, the method has been renamed iterateRangeBounds(CategoryDataset) for consistency; |
| 404 | 2327 | sjacqu01 | - DefaultKeyedValue - the constructor now prevents a null key; |
| 405 | 2327 | sjacqu01 | - LogFormat - now has a 'powerLabel' attribute; |
| 406 | 2327 | sjacqu01 | - ShortTextTitle - a new title class; |
| 407 | 2327 | sjacqu01 | - SlidingCategoryDataset - new class; |
| 408 | 2327 | sjacqu01 | - SlidingGanttDataset - new class; |
| 409 | 2327 | sjacqu01 | - TimeSeriesCollection - getSeries(String) changed to getSeries(Comparable); |
| 410 | 2327 | sjacqu01 | - XIntervalSeriesCollection - added series removal methods; |
| 411 | 2327 | sjacqu01 | - YIntervalSeriesCollection - added series removal methods; |
| 412 | 2327 | sjacqu01 | - XYIntervalSeriesCollection - added series removal methods; |
| 413 | 2327 | sjacqu01 | |
| 414 | 2327 | sjacqu01 | `PublicCloneable` is now implemented by a number of classes that didn't previously implement the interface - this should improve the reliability of chart cloning. |
| 415 | 2327 | sjacqu01 | |
| 416 | 2327 | sjacqu01 | ###### Patches |
| 417 | 2327 | sjacqu01 | |
| 418 | 2327 | sjacqu01 | - 1943021 : Fix for MultiplePiePlot [Brian Cabana]; |
| 419 | 2327 | sjacqu01 | - 1925366 : Speed improvement for DatasetUtilities [Rafal Skalny]; |
| 420 | 2327 | sjacqu01 | - 1918209 : LogAxis createTickLabel() changed from private to protected [Andrew Mickish]; |
| 421 | 2327 | sjacqu01 | - 1914411 : Simplification of plot event notification [Richard West]; |
| 422 | 2327 | sjacqu01 | - 1913751 : XYPlot and CategoryPlot addMarker() methods with optional notification [Richard West]; |
| 423 | 2327 | sjacqu01 | - 1902418 : Bug fix for LogAxis vertical labels [Andrew Mickish]; |
| 424 | 2327 | sjacqu01 | - 1901599 : Fixes for XYTitleAnnotation [Andrew Mickish]; |
| 425 | 2327 | sjacqu01 | - 1891849 : New curve option for pie chart label links [Martin Hilpert]; |
| 426 | 2327 | sjacqu01 | - 1874890 : Added step point to XYStepRenderer [Ulrich Voigt]; |
| 427 | 2327 | sjacqu01 | - 1873328 : Enhancements to RelativeDateFormat [Michael Siemer]; |
| 428 | 2327 | sjacqu01 | - 1871902 : PolarPlot now has angleTickUnit attribute [Martin Hoeller]; |
| 429 | 2327 | sjacqu01 | - 1868745 : Fix label anchor points on LogAxis [Andrew Mickish]; |
| 430 | 2327 | sjacqu01 | - 1866446 : Added maximumBarWidth to BoxAndWhiskerRenderer [Rob Van der Sanden]; |
| 431 | 2327 | sjacqu01 | |
| 432 | 2327 | sjacqu01 | ###### Bug Fixes |
| 433 | 2327 | sjacqu01 | |
| 434 | 2327 | sjacqu01 | - 1932146 - PeriodAxis.setRange() doesn't notify listeners; |
| 435 | 2327 | sjacqu01 | - 1927239 - Fix calculation of cumulative range; |
| 436 | 2327 | sjacqu01 | - 1926517 - Bugs in data range calculation for combined plots; |
| 437 | 2327 | sjacqu01 | - 1920854 - PiePlot3D labels drawn multiple times; |
| 438 | 2327 | sjacqu01 | - 1897580 - Fix for DefaultIntervalCategoryDataset; |
| 439 | 2327 | sjacqu01 | - 1892419 - Wrong default for minor tick count in LogAxis; |
| 440 | 2327 | sjacqu01 | - 1880114 - VectorRenderer doesn't work for horizontal plot orientation; |
| 441 | 2327 | sjacqu01 | - 1873160 - DialPlot clipping issues; |
| 442 | 2327 | sjacqu01 | - 1868521 - Problem saving charts to JPEG format; |
| 443 | 2327 | sjacqu01 | - 1864222 - Error on TimeSeries createCopy() method; |
| 444 | 2327 | sjacqu01 | |
| 445 | 2327 | sjacqu01 | The `DatasetUtilities.sampleFunction2D()` has been changed to sample the correct |
| 446 | 2327 | sjacqu01 | number of points - you should check any code that calls this method. The |
| 447 | 2327 | sjacqu01 | `XYBlockRenderer` class now generates entities. Bugs in the `removeDomainMarker()` |
| 448 | 2327 | sjacqu01 | and `removeRangeMarker()` methods in the `CategoryPlot` and `XYPlot` classes have |
| 449 | 2327 | sjacqu01 | been fixed. A bug in the `TimePeriodValues` range calculation has been fixed. |
| 450 | 2327 | sjacqu01 | Fixes were applied to the `clone()` methods in the `TaskSeries` and |
| 451 | 2327 | sjacqu01 | `TaskSeriesCollection` classes. |
| 452 | 2327 | sjacqu01 | |
| 453 | 2327 | sjacqu01 | ###### New Experimental Features |
| 454 | 2327 | sjacqu01 | |
| 455 | 2327 | sjacqu01 | Two new classes `CombinedCategoryPlot` and `CombinedXYPlot` have been added to the |
| 456 | 2327 | sjacqu01 | 'experimental' source tree - these were contributed by Richard West (see |
| 457 | 2327 | sjacqu01 | patch 1924543). |
| 458 | 2327 | sjacqu01 | |
| 459 | 2327 | sjacqu01 | ##### Version 1.0.9 (4-Jan-2008) |
| 460 | 2327 | sjacqu01 | |
| 461 | 2327 | sjacqu01 | This release contains an important security patch as well as various bug fixes |
| 462 | 2327 | sjacqu01 | and minor enhancements. Regarding the security patch, please see the |
| 463 | 2327 | sjacqu01 | following advisory: |
| 464 | 2327 | sjacqu01 | |
| 465 | 2327 | sjacqu01 | http://www.rapid7.com/advisories/R7-0031.jsp |
| 466 | 2327 | sjacqu01 | |
| 467 | 2327 | sjacqu01 | Note that the fix incorporated in the special JFreeChart 1.0.8a release was |
| 468 | 2327 | sjacqu01 | flawed in that it broke the URLs in the HTML image maps generated by |
| 469 | 2327 | sjacqu01 | JFreeChart. Further amendments have been made in this release to fix this |
| 470 | 2327 | sjacqu01 | problem. |
| 471 | 2327 | sjacqu01 | |
| 472 | 2327 | sjacqu01 | ###### API Adjustments |
| 473 | 2327 | sjacqu01 | |
| 474 | 2327 | sjacqu01 | A number of classes have new methods. Nothing has been removed or deprecated: |
| 475 | 2327 | sjacqu01 | |
| 476 | 2327 | sjacqu01 | - HashUtilities - added hashCode() methods for BooleanList, PaintList and StrokeList; |
| 477 | 2327 | sjacqu01 | - ImageMapUtilities - added htmlEscape(String); |
| 478 | 2327 | sjacqu01 | - IntervalMarker - added new constructor; |
| 479 | 2327 | sjacqu01 | - Range - added intersects(Range) and scale(Range, double); |
| 480 | 2327 | sjacqu01 | - TextTitle - added protected methods arrangeNN(), arrangeFN() and arrangeRN(); |
| 481 | 2327 | sjacqu01 | - XYDataItem - added getXValue() and getYValue() methods; |
| 482 | 2327 | sjacqu01 | - XYPlot - added setFixedDomainAxisSpace(AxisSpace, boolean) and setFixedRangeAxisSpace(AxisSpace, boolean); |
| 483 | 2327 | sjacqu01 | - XYSeriesCollection - added getSeries(Comparable) method. |
| 484 | 2327 | sjacqu01 | |
| 485 | 2327 | sjacqu01 | ###### Bug Fixes |
| 486 | 2327 | sjacqu01 | |
| 487 | 2327 | sjacqu01 | - 1852525 - CandlestickChart.getCategoryPlot() - ClassCastException; |
| 488 | 2327 | sjacqu01 | - 1851416 - testGetFirstMillisecondWithTimeZone fails in 1.0.8a; |
| 489 | 2327 | sjacqu01 | - 1849333 - 1.0.8a breaks URLs in HTML image maps; |
| 490 | 2327 | sjacqu01 | - 1848961 - GroupedStackedBarRenderer works only for primary dataset; |
| 491 | 2327 | sjacqu01 | - 1846063 - Endless loop in paint of XYPlot; |
| 492 | 2327 | sjacqu01 | - 1840139 - Cross-site scripting vulnerabilities in image map code; |
| 493 | 2327 | sjacqu01 | - 1837979 - Background image not shown with SWT; |
| 494 | 2327 | sjacqu01 | - 1460195 - ChartEntity.getImageMapAreaTag() needs nohref; |
| 495 | 2327 | sjacqu01 | - 1400917 - OverLIBToolTipTagFragmentGenerator not escaping single quote; |
| 496 | 2327 | sjacqu01 | - 1363043 - Escape Image Map Data; |
| 497 | 2327 | sjacqu01 | - 1178601 - AbstractRenderer.hashcode() method returns the same value; |
| 498 | 2327 | sjacqu01 | |
| 499 | 2327 | sjacqu01 | In addition, a bug in the constructor for the Week class has been fixed. |
| 500 | 2327 | sjacqu01 | |
| 501 | 2327 | sjacqu01 | ##### Version 1.0.8 (23-Nov-2007) |
| 502 | 2327 | sjacqu01 | This release is primarily a bug fix release: |
| 503 | 2327 | sjacqu01 | - a problem with pie chart labeling; |
| 504 | 2327 | sjacqu01 | - a regression in the `DefaultCategoryDataset` class (and underlying `KeyedValues2D` class); |
| 505 | 2327 | sjacqu01 | - a cloning bug in the `TimeSeries` class. |
| 506 | 2327 | sjacqu01 | |
| 507 | 2327 | sjacqu01 | In addition: |
| 508 | 2327 | sjacqu01 | - the `StatisticalBarRenderer` class has a new `errorIndicatorStroke` field and has been updated to support gradients; |
| 509 | 2327 | sjacqu01 | - the `StandardDialScale` has had some missing accessor methods implemented; |
| 510 | 2327 | sjacqu01 | - an override field in the `StandardXYItemRenderer` class has been deprecated; |
| 511 | 2327 | sjacqu01 | - some warnings reported by FindBugs 1.3.0 have been addressed. |
| 512 | 2327 | sjacqu01 | |
| 513 | 2327 | sjacqu01 | ##### Version 1.0.7 (14-Nov-2007) |
| 514 | 2327 | sjacqu01 | This release features |
| 515 | 2327 | sjacqu01 | - new classes `DialPlot` and `LogAxis` (previously in experimental); |
| 516 | 2327 | sjacqu01 | - initial support for minor tick units; |
| 517 | 2327 | sjacqu01 | - a new anchored zooming option for the `ChartPanel` class; |
| 518 | 2327 | sjacqu01 | - optional simple labeling on pie charts; |
| 519 | 2327 | sjacqu01 | - improvements to the "statistical" datasets and underlying data structures; |
| 520 | 2327 | sjacqu01 | - and numerous bug fixes. |
| 521 | 2327 | sjacqu01 | |
| 522 | 2327 | sjacqu01 | ###### API Adjustments |
| 523 | 2327 | sjacqu01 | |
| 524 | 2327 | sjacqu01 | - `CategoryAxis` - added `getCategorySeriesMiddle()` method; |
| 525 | 2327 | sjacqu01 | - `CategoryPlot` - added methods to remove markers; |
| 526 | 2327 | sjacqu01 | - `ChartPanel` - added `defaultDirectoryForSaveAs` attribute; |
| 527 | 2327 | sjacqu01 | - `DialPlot` - new class, an alternative to `MeterPlot`; |
| 528 | 2327 | sjacqu01 | - `LogAxis` - new class, an alternative to `LogarithmicAxis`; |
| 529 | 2327 | sjacqu01 | - `NumberTick` - new constructor that allows specification of the tick type; |
| 530 | 2327 | sjacqu01 | - `NumberTickUnit` - new constructor to specify the minor tick count; |
| 531 | 2327 | sjacqu01 | - `SymbolAxis` - new methods `get/setGridBandAlternatePaint()`; |
| 532 | 2327 | sjacqu01 | - `TickType` - new class; |
| 533 | 2327 | sjacqu01 | - `TickUnit` - added `minorTickCount` attribute; |
| 534 | 2327 | sjacqu01 | - `ValueTick` - added `tickType` attribute; |
| 535 | 2327 | sjacqu01 | - `StandardPieSectionLabelGenerator` - new constructors accepting a Locale; |
| 536 | 2327 | sjacqu01 | - `StandardPieToolTipGenerator` - likewise; |
| 537 | 2327 | sjacqu01 | - `CategoryPlot` - added `getRangeAxisIndex()`, `zoomDomainAxes()` and `zoomRangeAxes()` methods; |
| 538 | 2327 | sjacqu01 | - `FastScatterPlot` - added new zooming methods; |
| 539 | 2327 | sjacqu01 | - `PiePlot` - new attributes to support simple labeling; |
| 540 | 2327 | sjacqu01 | - `PlotUtilities` - new class; |
| 541 | 2327 | sjacqu01 | - `PolarPlot` - added new zooming methods; |
| 542 | 2327 | sjacqu01 | - `ThermometerPlot` - likewise; |
| 543 | 2327 | sjacqu01 | - `XYPlot` - added methods to remove markers (patch 1823697--same as for `CategoryPlot`), and added new zooming methods; |
| 544 | 2327 | sjacqu01 | - `Zoomable` - added new zooming methods to this interface; |
| 545 | 2327 | sjacqu01 | - `LineAndShapeRenderer` - added `useSeriesOffset` and `itemMargin` attributes; |
| 546 | 2327 | sjacqu01 | - `MinMaxCategoryRenderer` - implemented `equals()`; |
| 547 | 2327 | sjacqu01 | - `XYSplineAndShapeRenderer` - new class; |
| 548 | 2327 | sjacqu01 | - `LogFormat` - new class; |
| 549 | 2327 | sjacqu01 | - `ChartFactory` - new pie and ring chart creation methods that accept a `Locale`; |
| 550 | 2327 | sjacqu01 | - `ChartPanel` - added `zoomAroundAnchor` attribute; |
| 551 | 2327 | sjacqu01 | - `Series` - added `isEmpty()` method; |
| 552 | 2327 | sjacqu01 | - `BoxAndWhiskerItem` - new convenience constructor; |
| 553 | 2327 | sjacqu01 | - `DefaultBoxAndWhiskerCategoryDataset` - new remove methods; |
| 554 | 2327 | sjacqu01 | - `DefaultStatisticalCategoryDataset` - likewise; |
| 555 | 2327 | sjacqu01 | - `MeanAndStandardDeviation` - added new value accessor methods; |
| 556 | 2327 | sjacqu01 | - `TimeTableXYDataset` - added `clear()` method; |
| 557 | 2327 | sjacqu01 | - `Week` - added new constructor; |
| 558 | 2327 | sjacqu01 | - `KeyedObjects` - added `insertValue()` and `clear()` methods; |
| 559 | 2327 | sjacqu01 | - `KeyedObjects2D` - added `clear()` method. |
| 560 | 2327 | sjacqu01 | |
| 561 | 2327 | sjacqu01 | ###### Patches |
| 562 | 2327 | sjacqu01 | |
| 563 | 2327 | sjacqu01 | - 1823724 - updated `XYDifferenceRenderer` to support item labels; |
| 564 | 2327 | sjacqu01 | - 1827829 - fixed possible `NullPointerException` in `XYBarRenderer`; |
| 565 | 2327 | sjacqu01 | |
| 566 | 2327 | sjacqu01 | ###### Bug Fixes |
| 567 | 2327 | sjacqu01 | |
| 568 | 2327 | sjacqu01 | - 1767315 - `GrayPaintScale.getPaint()` uses wrong value; |
| 569 | 2327 | sjacqu01 | - 1775452 - Inverted `XYBarRenderer` does not render margins correctly; |
| 570 | 2327 | sjacqu01 | - 1802195 - `Marker.listenerList` serializable; |
| 571 | 2327 | sjacqu01 | - 1779941 - `StatisticalBarRenderer` NPE; |
| 572 | 2327 | sjacqu01 | - 1766646 - `XYBlockRenderer` can't handle empty datasets; |
| 573 | 2327 | sjacqu01 | - 1763413 - `PeriodAxis` labels fail to display with setInverted; |
| 574 | 2327 | sjacqu01 | - 1737953 - Zoom doesn't work on `LogAxis` (Demo1); |
| 575 | 2327 | sjacqu01 | - 1749124 - `JFreeChart` not added as `TitleChangeListener`; |
| 576 | 2327 | sjacqu01 | |
| 577 | 2327 | sjacqu01 | ##### Version 1.0.6 (15-Jun-2007) |
| 578 | 2327 | sjacqu01 | This release features: |
| 579 | 2327 | sjacqu01 | - a new `VectorRenderer` (previously in experimental); |
| 580 | 2327 | sjacqu01 | - a generalised `XYDifferenceRenderer`; |
| 581 | 2327 | sjacqu01 | - better support for hotspots on legend items; |
| 582 | 2327 | sjacqu01 | - improved performance for time series charts displaying subsets of data; |
| 583 | 2327 | sjacqu01 | - support for `GradientPaint` in plot backgrounds; |
| 584 | 2327 | sjacqu01 | - plus the usual slew of bug fixes and minor feature additions. |
| 585 | 2327 | sjacqu01 | |
| 586 | 2327 | sjacqu01 | ###### API Adjustments |
| 587 | 2327 | sjacqu01 | |
| 588 | 2327 | sjacqu01 | - `CategoryItemEntity` - replaced row and column index attributes with row and column key attributes; |
| 589 | 2327 | sjacqu01 | - `CategoryItemRenderer` - numerous series override settings have been deprecated; |
| 590 | 2327 | sjacqu01 | - `DefaultPieDataset` - added `insertValues()` method; |
| 591 | 2327 | sjacqu01 | - `HexNumberFormat` - new class; |
| 592 | 2327 | sjacqu01 | - `LegendItem` - added dataset and seriesKey attributes; |
| 593 | 2327 | sjacqu01 | - `Plot` - added new `fillBackground()` method to support `GradientPaint`, and added `is/setOutlineVisible()` methods; |
| 594 | 2327 | sjacqu01 | - `QuarterDateFormat` - added `GREEK_QUARTERS` field plus a new constructor; |
| 595 | 2327 | sjacqu01 | - `SimpleHistogramDataset` - added `clearObservations()` and `removeAllBins()` methods; |
| 596 | 2327 | sjacqu01 | - `TimeSeriesCollection` - added `indexOf()` method; |
| 597 | 2327 | sjacqu01 | - `URLUtilities` - new class; |
| 598 | 2327 | sjacqu01 | - `XYItemRenderer` - numerous series override settings have been deprecated; |
| 599 | 2327 | sjacqu01 | - `XYSeriesCollection` - added indexOf() method. |
| 600 | 2327 | sjacqu01 | |
| 601 | 2327 | sjacqu01 | ###### Bug Fixes |
| 602 | 2327 | sjacqu01 | |
| 603 | 2327 | sjacqu01 | - 1735508 - `ClusteredXYBarRenderer` fails with inverted x-axis; |
| 604 | 2327 | sjacqu01 | - 1726404 - `ChartComposite` tooltips; |
| 605 | 2327 | sjacqu01 | - 1713474 - `StackedBarRenderer3D` doesn't fill shadows; |
| 606 | 2327 | sjacqu01 | - 1713401 - `StackedBarRenderer3D` doesn't check `drawBarOutline` flag; |
| 607 | 2327 | sjacqu01 | - 1701822 - `DefaultBoxAndWhiskerCategoryDataset` doesn't follow contracts; |
| 608 | 2327 | sjacqu01 | - 1698965 - NPE in `CombinedDomainXYPlot`; |
| 609 | 2327 | sjacqu01 | - 1690994 - `HideSeriesDemo1` does not work; |
| 610 | 2327 | sjacqu01 | - 1690654 - Bug in `removeValue()` of `DefaultKeyedValues2D`; |
| 611 | 2327 | sjacqu01 | - 1562701 - `LegendItemEntity` needs dataset index; |
| 612 | 2327 | sjacqu01 | - 1486299 - Use `URLEncoder.encode()` for URL generators; |
| 613 | 2327 | sjacqu01 | |
| 614 | 2327 | sjacqu01 | Plus the following bugs that didn't have entries in the database: |
| 615 | 2327 | sjacqu01 | |
| 616 | 2327 | sjacqu01 | - `BarRenderer` - check for series visibility in `getLegendItem()`; |
| 617 | 2327 | sjacqu01 | - `ChartPanel` - use correct insets for painting chart buffer to screen, update UI for popup menu if LookAndFeel changes; |
| 618 | 2327 | sjacqu01 | - `DateAxis` - fixed boundary cases for `previousStandardDate()` method; |
| 619 | 2327 | sjacqu01 | - `LineBorder` - only draw border if area has positive dimensions; |
| 620 | 2327 | sjacqu01 | - `JFreeChart` - should register as a listener with the default legend; |
| 621 | 2327 | sjacqu01 | - `StandardXYItemRenderer` - fixed a problem where chart entities are created for non-visible items; |
| 622 | 2327 | sjacqu01 | - `TimePeriodValuesCollection.getDomainBounds()` now computes the bounds correctly; |
| 623 | 2327 | sjacqu01 | - `XYLineAndShapeRenderer` - fixed a problem where chart entities are created for non-visible items; |
| 624 | 2327 | sjacqu01 | - `XYLine3DRenderer` - `equals()` implemented, and serialization fixed; |
| 625 | 2327 | sjacqu01 | - `XYTitleAnnotation` - fixed `equals()` method; |
| 626 | 2327 | sjacqu01 | - various resource usage bugs in the experimental `ChartComposite` class; |
| 627 | 2327 | sjacqu01 | |
| 628 | 2327 | sjacqu01 | ##### Version 1.0.5 (23-Mar-2007) |
| 629 | 2327 | sjacqu01 | This release features: |
| 630 | 2327 | sjacqu01 | - a new `DeviationRenderer` class; |
| 631 | 2327 | sjacqu01 | - support for item labels in `StackedXYBarRenderer`; |
| 632 | 2327 | sjacqu01 | - tooltips and URLs in the `CategoryStepRenderer`; and |
| 633 | 2327 | sjacqu01 | - many bug fixes. |
| 634 | 2327 | sjacqu01 | |
| 635 | 2327 | sjacqu01 | ###### API Adjustments |
| 636 | 2327 | sjacqu01 | |
| 637 | 2327 | sjacqu01 | - `AbstractCategoryItemRenderer` - added `createState()` method; |
| 638 | 2327 | sjacqu01 | - `StackedXYBarRenderer` - added `get/setRenderAsPercentages()` methods; |
| 639 | 2327 | sjacqu01 | - `XYIntervalSeries` - added `getXLowValue()`, `getXHighValue()`, `getYLowValue()` and `getYHighValue()`; |
| 640 | 2327 | sjacqu01 | - `YIntervalSeries` - added `getYLowValue()` and `getYHighValue()` methods; |
| 641 | 2327 | sjacqu01 | |
| 642 | 2327 | sjacqu01 | ###### Bug Fixes |
| 643 | 2327 | sjacqu01 | |
| 644 | 2327 | sjacqu01 | - 1681777 - `DefaultCategoryDataset` does not clone data; |
| 645 | 2327 | sjacqu01 | - 1672552 - Zoom rectangle is lost when the chart is repainted; |
| 646 | 2327 | sjacqu01 | - 1671645 - `Crosshair` incorrectly positioned in horizontal orientation; |
| 647 | 2327 | sjacqu01 | - 1669302 - Tick labels in vertical symbol axis; |
| 648 | 2327 | sjacqu01 | - 1669218 - `CategoryPlot.setDomainAxisLocation()` ignores parameter; |
| 649 | 2327 | sjacqu01 | - 1667750 - Clip region not restored in `Spider` and `MeterPlot`; |
| 650 | 2327 | sjacqu01 | - 1663380 - OutputStream not closed; |
| 651 | 2327 | sjacqu01 | - 1659627 - `IntervalMarker` with `Double.POSITIVE_INFINITY` bound; |
| 652 | 2327 | sjacqu01 | - 1647269 - `IntervalMarker` with `Double.MAX_VALUE as upper` bound; |
| 653 | 2327 | sjacqu01 | - 1594477 - `XYBarRenderer` does not render bars on `LogarithmicAxis`; |
| 654 | 2327 | sjacqu01 | - 1459958 - Log axis zoom function problem; |
| 655 | 2327 | sjacqu01 | - 880597 - Zooming `ChartPanel` with log axes; |
| 656 | 2327 | sjacqu01 | - 764561 - Dynamic chart zoom buggy. |
| 657 | 2327 | sjacqu01 | |
| 658 | 2327 | sjacqu01 | Also fixed numerous bugs in equals(), cloning and serialization implementations. |
| 659 | 2327 | sjacqu01 | |
| 660 | 2327 | sjacqu01 | ##### Version 1.0.4 (9-Feb-2007) |
| 661 | 2327 | sjacqu01 | |
| 662 | 2327 | sjacqu01 | This release features: |
| 663 | 2327 | sjacqu01 | - a new `XYBlockRenderer` class; |
| 664 | 2327 | sjacqu01 | - URLs for pie chart labels in HTML image maps; |
| 665 | 2327 | sjacqu01 | - a new dataset implementation for open-high-low-close charts; |
| 666 | 2327 | sjacqu01 | - support for gradient paint in `ClusteredXYBarRenderer`, `StackedXYBarRenderer` and legend graphics; |
| 667 | 2327 | sjacqu01 | - a new anchor attribute for `XYImageAnnotation`; |
| 668 | 2327 | sjacqu01 | - improvements to the experimental SWT support; plus |
| 669 | 2327 | sjacqu01 | - a number of additions to the API for usability; and |
| 670 | 2327 | sjacqu01 | - many bug fixes. |
| 671 | 2327 | sjacqu01 | |
| 672 | 2327 | sjacqu01 | ###### API Adjustments |
| 673 | 2327 | sjacqu01 | |
| 674 | 2327 | sjacqu01 | - `DateAxis` - added `get/setTimeZone()` methods; |
| 675 | 2327 | sjacqu01 | - `DefaultXYDataset` - now implements `PublicCloneable`; |
| 676 | 2327 | sjacqu01 | - `StackedXYAreaRenderer2` - added `get/setRoundXValues()` methods; |
| 677 | 2327 | sjacqu01 | - `StandardXYItemLabelGenerator` - added new constructor; |
| 678 | 2327 | sjacqu01 | - `StandardXYToolTipGenerator` - added new constructor; |
| 679 | 2327 | sjacqu01 | - `XYBarDataset` - added `getUnderlyingDataset()` and `get/setBarWidth()` methods; |
| 680 | 2327 | sjacqu01 | - `XYDifferenceRenderer` - added `roundXCoordinates` attribute; |
| 681 | 2327 | sjacqu01 | - `XYImageAnnotation` - added an image anchor attribute, a new constructor, and several accessor methods; |
| 682 | 2327 | sjacqu01 | - `XYSeries` - added `toArray()` method; |
| 683 | 2327 | sjacqu01 | |
| 684 | 2327 | sjacqu01 | ###### Bug Fixes |
| 685 | 2327 | sjacqu01 | |
| 686 | 2327 | sjacqu01 | - 1654215 - `XYPlot` renderer with no corresponding dataset; |
| 687 | 2327 | sjacqu01 | - 1652640 - `RangeMarkers` do not update properly; |
| 688 | 2327 | sjacqu01 | - 1649686 - `Crosshairs` for `StackedXYAreaRenderer`; |
| 689 | 2327 | sjacqu01 | - 1647749 - `IllegalArgumentException` in `SWTAxisEditor`; |
| 690 | 2327 | sjacqu01 | - 1644877 - Replacing series data in `DefaultXYDataset`; |
| 691 | 2327 | sjacqu01 | - 1644010 - `DateAxis.nextStandardDate()` ignores timezone; |
| 692 | 2327 | sjacqu01 | - 1638678 - `DateAxis` code uses the default calendar; |
| 693 | 2327 | sjacqu01 | - 1629382 - Tests fail for jfreechart-1.0.3; |
| 694 | 2327 | sjacqu01 | - 1624067 - `StandardXYToolTipGenerator` missing constructor; |
| 695 | 2327 | sjacqu01 | - 1616583 - Serialize `ChartDeleter`; |
| 696 | 2327 | sjacqu01 | - 1612770 - Popup menu in wrong position for SWT `ChartComposite`; |
| 697 | 2327 | sjacqu01 | - 1611872 - `Minute.previous()` returns null for minute == 0; |
| 698 | 2327 | sjacqu01 | - 1608371 - Tick labels overlap with custom `NumberFormat`; |
| 699 | 2327 | sjacqu01 | - 1606205 - Draw shared axis last on combined plots; |
| 700 | 2327 | sjacqu01 | - 1605207 - `IntervalMarker` exceeds bounds of data area; |
| 701 | 2327 | sjacqu01 | - 1605202 - `SpiderWebPlot` method access; |
| 702 | 2327 | sjacqu01 | - 1599652 - Inverted `StackedBar3D` problem; |
| 703 | 2327 | sjacqu01 | - 1598394 - `XYBarDataset` hiding its proxied object; |
| 704 | 2327 | sjacqu01 | - 1564967 - Crosshairs on `XYDifferenceRenderer`; |
| 705 | 2327 | sjacqu01 | - 1245305 - `NullPointerException` in `writeImageMap()`; |
| 706 | 2327 | sjacqu01 | - 1086307 - Crosshairs on plots with multiple axes. |
| 707 | 2327 | sjacqu01 | |
| 708 | 2327 | sjacqu01 | Also fixed numerous bugs in `equals()` and `clone()` methods throughout the API. |
| 709 | 2327 | sjacqu01 | |
| 710 | 2327 | sjacqu01 | ##### Version 1.0.3 (17-Nov-2006) |
| 711 | 2327 | sjacqu01 | |
| 712 | 2327 | sjacqu01 | This release features: |
| 713 | 2327 | sjacqu01 | - several new `IntervalXYDataset` implementations; |
| 714 | 2327 | sjacqu01 | - some significant refactoring of the time period classes (to improve performance and correctness); |
| 715 | 2327 | sjacqu01 | - modifications to the `PiePlot` class to support reordering of dataset items; |
| 716 | 2327 | sjacqu01 | - a new event mechanism to allow updating of markers, plus |
| 717 | 2327 | sjacqu01 | - many other enhancements, bug fixes and documentation updates. |
| 718 | 2327 | sjacqu01 | |
| 719 | 2327 | sjacqu01 | A new `DialPlot` implementation has been added to the 'experimental' sources. |
| 720 | 2327 | sjacqu01 | We are looking for people to test this code and provide feedback, so that we |
| 721 | 2327 | sjacqu01 | can stabilize the API and add this code to the main JFreeChart API. |
| 722 | 2327 | sjacqu01 | |
| 723 | 2327 | sjacqu01 | ###### API adjustments |
| 724 | 2327 | sjacqu01 | |
| 725 | 2327 | sjacqu01 | The following adjustments have been made to the API: |
| 726 | 2327 | sjacqu01 | |
| 727 | 2327 | sjacqu01 | - `CategoryLabelEntity` - new class; |
| 728 | 2327 | sjacqu01 | - `CategoryPointerAnnotation` - new class; |
| 729 | 2327 | sjacqu01 | - `ChartPanel`: added new public method `doEditChartProperties()`; |
| 730 | 2327 | sjacqu01 | - `ComparableObjectItem`, `ComparableObjectSeries` - new classes; |
| 731 | 2327 | sjacqu01 | - `CrosshairState`: added several new accessor methods; |
| 732 | 2327 | sjacqu01 | - `DefaultPieDataset`: added `sortByKeys()` and `sortByValues()` methods; |
| 733 | 2327 | sjacqu01 | - `Markers`: a change event mechanism has been added to the `Marker` class and its subclasses; |
| 734 | 2327 | sjacqu01 | - `StackedAreaRenderer`: added `get/setRenderAsPercentages()` methods; |
| 735 | 2327 | sjacqu01 | - `XIntervalDataItem`, `XIntervalSeries` and `XIntervalSeriesCollection` - new classes; |
| 736 | 2327 | sjacqu01 | - `XYErrorRenderer`: new class; |
| 737 | 2327 | sjacqu01 | - `XYInterval`, `XYIntervalDataItem`, `XYIntervalSeries` and `XYIntervalSeriesCollection` - new classes; |
| 738 | 2327 | sjacqu01 | - `YInterval`, `YIntervalDataItem`, `YIntervalSeries`, `YIntervalSeriesCollection` and `YWithXInterval` - new classes. |
| 739 | 2327 | sjacqu01 | |
| 740 | 2327 | sjacqu01 | ###### Bug Fixes |
| 741 | 2327 | sjacqu01 | |
| 742 | 2327 | sjacqu01 | - 1578293 - Unused methods in `JDBCXYDataset`; |
| 743 | 2327 | sjacqu01 | - 1572478 - `BoxAndWhiskerRenderer` potential `NullPointerException`; |
| 744 | 2327 | sjacqu01 | - 1569094 - `XYStepRenderer` with horizontal orientation; |
| 745 | 2327 | sjacqu01 | - 1565168 - Crosshair position incorrect; |
| 746 | 2327 | sjacqu01 | - 1564977 - `DateAxis` missing initial tick label; |
| 747 | 2327 | sjacqu01 | - 1562759 - `StatisticalLineAndShapeRenderer` constructor ignores arguments; |
| 748 | 2327 | sjacqu01 | - 1557141 - Bad locale in `ServletUtilities`; |
| 749 | 2327 | sjacqu01 | - 1550045 - `TimeSeries.removeAgedItems()` method problems; |
| 750 | 2327 | sjacqu01 | - 1549218 - Chart not displaying when all data values are the same and large; |
| 751 | 2327 | sjacqu01 | - 1450447 - `Marker.setAlpha()` ignored; |
| 752 | 2327 | sjacqu01 | |
| 753 | 2327 | sjacqu01 | Also fixed URL generation for legend items, tick mark positioning on the |
| 754 | 2327 | sjacqu01 | `DateAxis`, the `equals()` method in the `AreaRenderer` class, hardcoded outline |
| 755 | 2327 | sjacqu01 | attributes in the `XYBubbleRenderer`, and potential `NullPointerExceptions` in the |
| 756 | 2327 | sjacqu01 | `ChartPanel` class. |
| 757 | 2327 | sjacqu01 | |
| 758 | 2327 | sjacqu01 | ##### Version 1.0.2 (25-Aug-2006) |
| 759 | 2327 | sjacqu01 | |
| 760 | 2327 | sjacqu01 | ###### API adjustments |
| 761 | 2327 | sjacqu01 | |
| 762 | 2327 | sjacqu01 | The following adjustments have been made to the API (there should be no breakage of applications coded to the 1.0.0 or 1.0.1 API): |
| 763 | 2327 | sjacqu01 | |
| 764 | 2327 | sjacqu01 | - `CategoryToPieDataset`: added accessor methods for underlying dataset, extract type and index (feature request 1477915); |
| 765 | 2327 | sjacqu01 | - `DefaultXYDataset`: New dataset implementation that uses double[] arrays; |
| 766 | 2327 | sjacqu01 | - `DefaultXYZDataset`: New dataset implementation that uses double[] arrays; |
| 767 | 2327 | sjacqu01 | - `LegendItemBlockContainer`: New container used in legends (enables legend item entities again); |
| 768 | 2327 | sjacqu01 | - `MultiplePiePlot`: Added new fields `aggregatedItemsKey` and `aggregatedItemsPaint`, plus accessor methods - see bug 1190647; |
| 769 | 2327 | sjacqu01 | - `SpiderWebPlot`: Added new fields `toolTipGenerator` and `urlGenerator`, plus accessor methods (see patch 1463455); |
| 770 | 2327 | sjacqu01 | - `StackedBarRenderer3D`: Added new flag (`renderAsPercentages`), plus accessor methods, that controls whether the data items are displayed as values or percentages. Two new constructors are also added (see patch 1459313); |
| 771 | 2327 | sjacqu01 | - `XYPolygonAnnotation`: Added new accessor methods. |
| 772 | 2327 | sjacqu01 | |
| 773 | 2327 | sjacqu01 | ###### Patches |
| 774 | 2327 | sjacqu01 | |
| 775 | 2327 | sjacqu01 | - 1459313 - Add `renderAsPercentages` option to `StackedBarRenderer3D`; |
| 776 | 2327 | sjacqu01 | - 1462727 - Modify `SpiderWebPlot` to support zero values; |
| 777 | 2327 | sjacqu01 | - 1463455 - Modify `SpiderWebPlot` to support mouse clicks, tool tips and URLs; |
| 778 | 2327 | sjacqu01 | |
| 779 | 2327 | sjacqu01 | ###### Bug Fixes |
| 780 | 2327 | sjacqu01 | |
| 781 | 2327 | sjacqu01 | - 1514904 - Background image alpha in `Plot` class; |
| 782 | 2327 | sjacqu01 | - 1499140 - `ClusteredXYBarRenderer` with margin not drawing correctly; |
| 783 | 2327 | sjacqu01 | - 1494936 - `LineAndShapeRenderer` generates entity for non-visible item; |
| 784 | 2327 | sjacqu01 | - 1493199 - NPE drawing `SpiderWebPlot` with null info; |
| 785 | 2327 | sjacqu01 | - 1480978 - `AbstractPieItemLabelGenerator.clone()` doesn't clone `percentFormat`; |
| 786 | 2327 | sjacqu01 | - 1472942 - `DateAxis.equals()` broken; |
| 787 | 2327 | sjacqu01 | - 1468794 - `StatisticalLineAndShapeRenderer` doesn't draw error bars correctly when the plot has a horizontal orientation; |
| 788 | 2327 | sjacqu01 | - `AbstractCategoryItemRenderer` doesn't check `seriesVisibleInLegend` flag before creating new item; |
| 789 | 2327 | sjacqu01 | - 1440415 - Bad distribution of pie chart section labels; |
| 790 | 2327 | sjacqu01 | - 1440346 - Bad manifest entry for JCommon in JFreeChart jar file; |
| 791 | 2327 | sjacqu01 | - 1435461 - `NumberAxis.equals()` ignores `rangeType` field; |
| 792 | 2327 | sjacqu01 | - 1435160 - `XYPointerAnnotation.equals()` ignores x and y fields; |
| 793 | 2327 | sjacqu01 | - 1398672 - `LegendItemEntities` not working; |
| 794 | 2327 | sjacqu01 | - 1380480 - `StandardXYItemRenderer` problems with `Double.NaN`; |
| 795 | 2327 | sjacqu01 | - 1190647 - Legend and section color mismatch for `MultiplePiePlot`. |
| 796 | 2327 | sjacqu01 | |
| 797 | 2327 | sjacqu01 | ###### Miscellaneous Changes |
| 798 | 2327 | sjacqu01 | |
| 799 | 2327 | sjacqu01 | - Updated `CandlestickRenderer`, `CyclicXYItemRenderer`, `HighLowRenderer`, `XYStepAreaRenderer` and `TimeSeriesURLGenerator` to call dataset methods that return double primitive only; |
| 800 | 2327 | sjacqu01 | - Updated `XYPolygonAnnotation`, adding new accessor methods and fixing problems in the `equals()/hashCode()` methods; |
| 801 | 2327 | sjacqu01 | - `ChartFactory.createStackedXYAreaChart()` now uses `StackedXYAreaRenderer2`, for better handling of negative values; |
| 802 | 2327 | sjacqu01 | - Added crosshair support for `XYBarRenderer`. |
| 803 | 2327 | sjacqu01 | |
| 804 | 2327 | sjacqu01 | ###### Experimental Code |
| 805 | 2327 | sjacqu01 | |
| 806 | 2327 | sjacqu01 | In this release, some new (incomplete) classes have been included in the |
| 807 | 2327 | sjacqu01 | `org.jfree.experimental.*` namespace. These classes are not part of the |
| 808 | 2327 | sjacqu01 | standard API, but are included for developers to experiment with and provide |
| 809 | 2327 | sjacqu01 | feedback on. Hopefully in the future, refined versions of these classes will |
| 810 | 2327 | sjacqu01 | be incorporated into the main library. PLEASE NOTE THAT THE API FOR THESE |
| 811 | 2327 | sjacqu01 | CLASSES IS SUBJECT TO CHANGE. |
| 812 | 2327 | sjacqu01 | |
| 813 | 2327 | sjacqu01 | ##### Version 1.0.1 (27-Jan-2006) |
| 814 | 2327 | sjacqu01 | This is primarily a bug fix release. In addition, there are some API |
| 815 | 2327 | sjacqu01 | adjustments (there should be no breakage of applications coded to the 1.0.0 API). |
| 816 | 2327 | sjacqu01 | |
| 817 | 2327 | sjacqu01 | ###### API adjustments |
| 818 | 2327 | sjacqu01 | - `BarRenderer`: added a new flag (`includeBaseInRange`), plus accessor |
| 819 | 2327 | sjacqu01 | methods, that controls whether or not the base value for the bar is |
| 820 | 2327 | sjacqu01 | included in the range calculated by the `findRangeBounds()` method; |
| 821 | 2327 | sjacqu01 | - `BubbleXYItemLabelGenerator`: new class; |
| 822 | 2327 | sjacqu01 | - `Range`: added a new method `expandToInclude(Range, double)`, this is used by |
| 823 | 2327 | sjacqu01 | the `BarRenderer` class; |
| 824 | 2327 | sjacqu01 | - `TaskSeriesCollection`: added two new methods, `getSeries(int)` and |
| 825 | 2327 | sjacqu01 | `getSeries(Comparable)`; |
| 826 | 2327 | sjacqu01 | - `TimeSeriesCollection`: the `domainIsPointsInTime` flag has been deprecated. |
| 827 | 2327 | sjacqu01 | The flag serves no function now that renderers are used to calculate the domain |
| 828 | 2327 | sjacqu01 | bounds, so you can safely delete any calls to the `setDomainIsPointsInTime()` |
| 829 | 2327 | sjacqu01 | method; |
| 830 | 2327 | sjacqu01 | - `XYPlot`: added a new `getAnnotations()` method; |
| 831 | 2327 | sjacqu01 | - `XYSeries`: the `update(int, Number)` method has been deprecated and a new |
| 832 | 2327 | sjacqu01 | method `updateByIndex(int, Number)` has been added; |
| 833 | 2327 | sjacqu01 | |
| 834 | 2327 | sjacqu01 | ###### Bug fixes |
| 835 | 2327 | sjacqu01 | |
| 836 | 2327 | sjacqu01 | - 1243050 - `XYBarRenderer` doesn't show entire range of values for a `TimeSeriesCollection`; |
| 837 | 2327 | sjacqu01 | - 1373371 - `XYBubbleRenderer` doesn't support item labels; |
| 838 | 2327 | sjacqu01 | - 1374222 - `BarRenderer` contains JDK 1.4 specific code; |
| 839 | 2327 | sjacqu01 | - 1374328 - `LegendItem` serialization problem; |
| 840 | 2327 | sjacqu01 | - 1377239 - Bad argument checking in `Quarter` constructor; |
| 841 | 2327 | sjacqu01 | - 1379331 - Incorrect drawing of `TextTitle` at LEFT or RIGHT position; |
| 842 | 2327 | sjacqu01 | - 1386328 - `RingPlot` entity incorrect; |
| 843 | 2327 | sjacqu01 | - 1400442 - Inconsistent treatment of null and zero values in `PiePlot`; |
| 844 | 2327 | sjacqu01 | - 1401856 - Bad rendering for non-zero base values in `BarRenderer`; |
| 845 | 2327 | sjacqu01 | - 1403043 - `NullPointerException` in `CategoryAxis`; |
| 846 | 2327 | sjacqu01 | - 1408904 - `NumberAxis3D` assumes `CategoryPlot`; |
| 847 | 2327 | sjacqu01 | - 1415480 - `XYTextAnnotation` equals() method doesn't check (x, y); |
| 848 | 2327 | sjacqu01 | |
| 849 | 2327 | sjacqu01 | ##### Version 1.0.0 (2-Dec-2005) |
| 850 | 2327 | sjacqu01 | - 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; |
| 851 | 2327 | sjacqu01 | |
| 852 | 2327 | sjacqu01 | ##### Version 1.0.0-rc3 (28-Nov-2005) |
| 853 | 2327 | sjacqu01 | - 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). |
| 854 | 2327 | sjacqu01 | - if no significant problems are reported in the next few days, the 1.0.0 "final" release will be posted on 2-Dec-2005. |
| 855 | 2327 | sjacqu01 | |
| 856 | 2327 | sjacqu01 | ##### Version 1.0.0-rc2 (25-Nov-2005) |
| 857 | 2327 | sjacqu01 | - 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. |
| 858 | 2327 | sjacqu01 | |
| 859 | 2327 | sjacqu01 | ##### Version 1.0.0-rc1 (2-Jun-2005) |
| 860 | 2327 | sjacqu01 | - 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. |
| 861 | 2327 | sjacqu01 | |
| 862 | 2327 | sjacqu01 | ##### Version 1.0.0-pre2 (10-Mar-2005) |
| 863 | 2327 | sjacqu01 | |
| 864 | 2327 | sjacqu01 | ##### Version 1.0.0-pre1 (29-Nov-2004) |
| 865 | 2327 | sjacqu01 | |
| 866 | 2327 | sjacqu01 | ##### Version 0.9.21 (9-Sep-2004) |
| 867 | 2327 | sjacqu01 | - added new axes: `PeriodAxis` and `ModuloAxis`. |
| 868 | 2327 | sjacqu01 | - split `org.jfree.data` and `org.jfree.chart.renderer` into subpackages for 'category' and 'xy' charts. |
| 869 | 2327 | sjacqu01 | - Sun PNG encoder is now used, if available. |
| 870 | 2327 | sjacqu01 | - a new demo application makes it easier to preview the chart types that JFreeChart can create. |
| 871 | 2327 | sjacqu01 | - added a new series visibility flag to the `AbstractRenderer` class. |
| 872 | 2327 | sjacqu01 | - added support for `GradientPaint` in interval markers. |
| 873 | 2327 | sjacqu01 | |
| 874 | 2327 | sjacqu01 | ##### Version 0.9.20 (7-Jun-2004) |
| 875 | 2327 | sjacqu01 | - primarily bug fixes. |
| 876 | 2327 | sjacqu01 | |
| 877 | 2327 | sjacqu01 | ##### Version 0.9.19 (28-May-2004) |
| 878 | 2327 | sjacqu01 | - added methods to `XYDataset` that return double primitives; |
| 879 | 2327 | sjacqu01 | - removed distinction between "primary" and "secondary" datasets, renderers and axes; |
| 880 | 2327 | sjacqu01 | - added fixed legend item options to `CategoryPlot` and `XYPlot`; |
| 881 | 2327 | sjacqu01 | - legend changes by Barek Naveh; |
| 882 | 2327 | sjacqu01 | - removed Log4j dependency; |
| 883 | 2327 | sjacqu01 | - many, many bug fixes; |
| 884 | 2327 | sjacqu01 | |
| 885 | 2327 | sjacqu01 | ##### Version 0.9.18 (15-Apr-2004) |
| 886 | 2327 | sjacqu01 | - new legend anchor options; |
| 887 | 2327 | sjacqu01 | - fixed broken JPEG export; |
| 888 | 2327 | sjacqu01 | - fixed title size problems; |
| 889 | 2327 | sjacqu01 | - various other bug fixes; |
| 890 | 2327 | sjacqu01 | |
| 891 | 2327 | sjacqu01 | ##### Version 0.9.17 (26-Mar-2004) |
| 892 | 2327 | sjacqu01 | - pie chart enhancements for labelling, shading and multiple pie charts (2D or 3D) on a single plot; |
| 893 | 2327 | sjacqu01 | - new `PolarPlot` class added; |
| 894 | 2327 | sjacqu01 | - `XYSeries` can now be sorted or unsorted; |
| 895 | 2327 | sjacqu01 | - `createBufferedImage()` method can now scale charts; |
| 896 | 2327 | sjacqu01 | - domain and range markers now support intervals; |
| 897 | 2327 | sjacqu01 | - item labels are now supported by some `XYItemRenderers`; |
| 898 | 2327 | sjacqu01 | - tooltip and item label generators now use `MessageFormat` class; |
| 899 | 2327 | sjacqu01 | - added new `XYBarDataset` class; |
| 900 | 2327 | sjacqu01 | - added transparency support to PNG export; |
| 901 | 2327 | sjacqu01 | - numerous other small enhancements and bug fixes; |
| 902 | 2327 | sjacqu01 | |
| 903 | 2327 | sjacqu01 | ##### Version 0.9.16 (09-Jan-2004) |
| 904 | 2327 | sjacqu01 | - this release contains bug fixes and some minor feature enhancements (title and category label wrapping, legend shape scaling, enhanced performance for the `DefaultTableXYDataset` class); |
| 905 | 2327 | sjacqu01 | - added Spanish localisation files; |
| 906 | 2327 | sjacqu01 | |
| 907 | 2327 | sjacqu01 | ##### Version 0.9.15 (28-Nov-2003) |
| 908 | 2327 | sjacqu01 | - the focus of this release is bug fixes - quite a number of issues have been resolved, please check the bug database for details; |
| 909 | 2327 | sjacqu01 | - added a new Wafer Map chart type; |
| 910 | 2327 | sjacqu01 | - added a cyclic axis; |
| 911 | 2327 | sjacqu01 | - added localisation files for _ru; |
| 912 | 2327 | sjacqu01 | |
| 913 | 2327 | sjacqu01 | ##### Version 0.9.14 (17-Nov-2003) |
| 914 | 2327 | sjacqu01 | - implemented zooming for the `FastScatterPlot` class; |
| 915 | 2327 | sjacqu01 | - added item label support for stacked bar charts, and new fall back options for item labels that don't fit within bars; |
| 916 | 2327 | sjacqu01 | - modified the `CategoryAxis` class to allow additional options for the alignment and rotation of category labels; |
| 917 | 2327 | sjacqu01 | - addition of the `AxisState` class, used in the drawing of axes to eliminate a bug when multiple threads draw the same axis simultaneously; |
| 918 | 2327 | sjacqu01 | - provided additional attributes in the `DateTickUnit` class to improve labelling on a segmented `DateAxis`; |
| 919 | 2327 | sjacqu01 | - added support for `GradientPaint` in bar charts; |
| 920 | 2327 | sjacqu01 | - updated the `PNGEncoder`; |
| 921 | 2327 | sjacqu01 | - fixes for tick label positioning on axes; |
| 922 | 2327 | sjacqu01 | - various Javadoc updates; |
| 923 | 2327 | sjacqu01 | - numerous bug fixes; |
| 924 | 2327 | sjacqu01 | |
| 925 | 2327 | sjacqu01 | ##### Version 0.9.13 (26-Sep-2003) |
| 926 | 230 | sjacqu01 | - various enhancements to the stacked area XY charts; |
| 927 | 230 | sjacqu01 | - added a completion indicator for the Gantt chart; |
| 928 | 230 | sjacqu01 | - range and domain markers can now be placed in the foreground or the |
| 929 | 230 | sjacqu01 | background; |
| 930 | 230 | sjacqu01 | - more fixes for cloning and serialization; |
| 931 | 230 | sjacqu01 | - fixed mouse event bug for combined charts; |
| 932 | 230 | sjacqu01 | - fixed bugs in the PngEncoder class; |
| 933 | 230 | sjacqu01 | - incorporated .properties files that were missing from the 0.9.12 |
| 934 | 230 | sjacqu01 | distribution; |
| 935 | 230 | sjacqu01 | |
| 936 | 2327 | sjacqu01 | ##### Version 0.9.12 (11-Sep-2003) |
| 937 | 230 | sjacqu01 | - extended box-and-whisker plots to work with the CategoryPlot class |
| 938 | 230 | sjacqu01 | as well as the XYPlot class (based on work by David Browning); |
| 939 | 230 | sjacqu01 | - added a new LayeredBarRenderer (by Arnaud Lelievre); |
| 940 | 230 | sjacqu01 | - added support for stacked area charts with the XYPlot class (thanks |
| 941 | 230 | sjacqu01 | to Richard Atkinson); |
| 942 | 230 | sjacqu01 | - improved HTML image map support (thanks to Richard Atkinson); |
| 943 | 230 | sjacqu01 | - added localized resources for the chart property editors (thanks to |
| 944 | 230 | sjacqu01 | Arnaud Lelievre). Current translations include French and Portugese |
| 945 | 230 | sjacqu01 | (thanks to Eduardo Ramalho); |
| 946 | 230 | sjacqu01 | - added facility for setting all rendering hints; |
| 947 | 230 | sjacqu01 | - improved support for cloning and serialization; |
| 948 | 230 | sjacqu01 | - fixed a bug in the XYSeries class that prevented the TableXYDataset |
| 949 | 230 | sjacqu01 | from functioning correctly; |
| 950 | 230 | sjacqu01 | - improved date axis labelling with segmented time lines; |
| 951 | 230 | sjacqu01 | - fixed several bugs in the secondary dataset/axis/renderer code; |
| 952 | 230 | sjacqu01 | - fixed bugs in the JDBCCategoryDataset class; |
| 953 | 230 | sjacqu01 | - numerous other bug fixes; |
| 954 | 230 | sjacqu01 | |
| 955 | 2327 | sjacqu01 | ##### Version 0.9.11 (8-Aug-2003) |
| 956 | 230 | sjacqu01 | - added support for box-and-whisker plots, thanks to David Browning; |
| 957 | 230 | sjacqu01 | - lots of bug fixes; |
| 958 | 230 | sjacqu01 | |
| 959 | 2327 | sjacqu01 | ##### Version 0.9.10 (25-Jul-2003) |
| 960 | 230 | sjacqu01 | - added support for multiple secondary axes, datasets and |
| 961 | 230 | sjacqu01 | renderers; |
| 962 | 230 | sjacqu01 | - minor feature enhancements and bug fixes; |
| 963 | 230 | sjacqu01 | |
| 964 | 2327 | sjacqu01 | ##### Version 0.9.9 (10-Jul-2003) |
| 965 | 2327 | sjacqu01 | |
| 966 | 2327 | sjacqu01 | PLEASE NOTE THAT MAJOR CHANGES HAVE BEEN MADE IN THIS |
| 967 | 230 | sjacqu01 | RELEASE AND ONE OR TWO FEATURES MAY BE BROKEN. PLEASE REPORT BUGS SO THEY CAN |
| 968 | 230 | sjacqu01 | BE FIXED FOR THE NEXT RELEASE. |
| 969 | 230 | sjacqu01 | |
| 970 | 230 | sjacqu01 | - merged the HorizontalCategoryPlot and VerticalCategoryPlot classes, |
| 971 | 230 | sjacqu01 | into the CategoryPlot class; |
| 972 | 230 | sjacqu01 | - merged the horizontal and vertical axis classes; |
| 973 | 230 | sjacqu01 | - merged the horizontal and vertical renderer classes; |
| 974 | 230 | sjacqu01 | - CategoryPlot and XYPlot now support both horizontal and vertical |
| 975 | 230 | sjacqu01 | orientation via the setOrientation(...) method; |
| 976 | 230 | sjacqu01 | - merged horizontal and vertical methods in the ChartFactory class; |
| 977 | 230 | sjacqu01 | - created new combined plot classes: CombinedDomainCategoryPlot, |
| 978 | 230 | sjacqu01 | CombinedRangeCategoryPlot, CombinedDomainXYPlot and |
| 979 | 230 | sjacqu01 | CombinedRangeXYPlot (these can all be drawn with a horizontal or |
| 980 | 230 | sjacqu01 | vertical orientation); |
| 981 | 230 | sjacqu01 | - Bill Kelemen has enhanced the DateAxis class to handle segmented |
| 982 | 230 | sjacqu01 | timelines. This can be used, for example, to skip weekends for |
| 983 | 230 | sjacqu01 | daily stock price charts; |
| 984 | 230 | sjacqu01 | - Richard Atkinson has updated the ServletUtilities class; |
| 985 | 230 | sjacqu01 | - Bryan Scott has added an XYDatasetTableModel class for presenting |
| 986 | 230 | sjacqu01 | datasets in a JTable; |
| 987 | 230 | sjacqu01 | - modified XYPlot to allow renderers to use multiple passes through |
| 988 | 230 | sjacqu01 | the dataset; |
| 989 | 230 | sjacqu01 | - added new XYDifferenceRenderer; |
| 990 | 230 | sjacqu01 | - added support for colored bands between gridlines in XYPlot; |
| 991 | 230 | sjacqu01 | - added new XYDrawableAnnotation class; |
| 992 | 230 | sjacqu01 | - added a new attribute to control the order of dataset rendering in |
| 993 | 230 | sjacqu01 | a CategoryPlot; |
| 994 | 230 | sjacqu01 | - extended the value label mechanism for the renderers, to allow |
| 995 | 230 | sjacqu01 | better (per series) control over label generation, positioning and |
| 996 | 230 | sjacqu01 | visibility; |
| 997 | 230 | sjacqu01 | - CategoryItemTooltipGenerator has been renamed |
| 998 | 230 | sjacqu01 | CategoryItemLabelGenerator, since it is now being used to generated |
| 999 | 230 | sjacqu01 | item labels as well as tooltips; |
| 1000 | 230 | sjacqu01 | - there is now support for horizontal stacked 3D bar charts; |
| 1001 | 230 | sjacqu01 | - added support for range markers against secondary axis in a |
| 1002 | 230 | sjacqu01 | CategoryPlot; |
| 1003 | 230 | sjacqu01 | - added labels to domain and range markers; |
| 1004 | 230 | sjacqu01 | - added a new HistogramDataset class (contributed by Jelai Wang) to |
| 1005 | 230 | sjacqu01 | make it easier to create histograms with JFreeChart; |
| 1006 | 230 | sjacqu01 | - moved the DrawingSupplier into the plot class, renderers now |
| 1007 | 230 | sjacqu01 | reference the supplier from the plot (parent plot for combined and |
| 1008 | 230 | sjacqu01 | overlaid charts). This means that renderers now share a single |
| 1009 | 230 | sjacqu01 | DrawingSupplier by default, which simplifies the creation of |
| 1010 | 230 | sjacqu01 | combined charts; |
| 1011 | 230 | sjacqu01 | - changed the ColorBarAxis classes that extended the NumberAxis class, |
| 1012 | 230 | sjacqu01 | to a single ColorBar class that wraps a ValueAxis (may have broken |
| 1013 | 230 | sjacqu01 | one or two things in the process); |
| 1014 | 230 | sjacqu01 | - Barak Naveh has contributed new classes MatrixSeries and |
| 1015 | 230 | sjacqu01 | MatrixSeriesCollection, along with demos: BubblyBubblesDemo.java |
| 1016 | 230 | sjacqu01 | and BubblyBubblesDemo2.java; |
| 1017 | 230 | sjacqu01 | - the TextTitle class now has a background paint attribute; |
| 1018 | 230 | sjacqu01 | - the StandardLegend class now generates LegendEntity objects if a |
| 1019 | 230 | sjacqu01 | ChartRenderingInfo instance is supplied to the draw(...) method; |
| 1020 | 230 | sjacqu01 | - extended the CategoryTextAnnotation class to take into account a |
| 1021 | 230 | sjacqu01 | category anchor point. See the SurveyResultsDemo.java application |
| 1022 | 230 | sjacqu01 | for an example; |
| 1023 | 230 | sjacqu01 | - included numerous bug fixes; |
| 1024 | 230 | sjacqu01 | |
| 1025 | 2327 | sjacqu01 | ##### Version 0.9.8 (24-Apr-2003) |
| 1026 | 230 | sjacqu01 | - changed package naming from com.jrefinery.* to org.jfree.*; |
| 1027 | 230 | sjacqu01 | - added new TimePeriodValuesCollection class; |
| 1028 | 230 | sjacqu01 | - added MIME type code to ServletUtilities class; |
| 1029 | 230 | sjacqu01 | - reversed the order of PieDataset and KeyedValuesDataset in |
| 1030 | 230 | sjacqu01 | the class hierarchy; |
| 1031 | 230 | sjacqu01 | - reversed the order of CategoryDataset and KeyedValues2DDataset |
| 1032 | 230 | sjacqu01 | in the class hierarchy; |
| 1033 | 230 | sjacqu01 | - minor bug fixes; |
| 1034 | 230 | sjacqu01 | |
| 1035 | 2327 | sjacqu01 | ##### Version 0.9.7 (11-Apr-2003) |
| 1036 | 230 | sjacqu01 | - added a new ValueDataset interface and DefaultValueDataset |
| 1037 | 230 | sjacqu01 | class, and changed the CompassPlot class to use this instead |
| 1038 | 230 | sjacqu01 | of MeterDataset; |
| 1039 | 230 | sjacqu01 | - added DataUtilities class, to support creation of Pareto |
| 1040 | 230 | sjacqu01 | charts (new demo included); |
| 1041 | 230 | sjacqu01 | - updated writeImageMap method as suggested by Xavier Poinsard |
| 1042 | 230 | sjacqu01 | (see Feature Request 688079); |
| 1043 | 230 | sjacqu01 | - implemented Serializable for most classes (this is likely to |
| 1044 | 230 | sjacqu01 | require further testing); |
| 1045 | 230 | sjacqu01 | - incorporated contour plot updates from David M. O'Donnell; |
| 1046 | 230 | sjacqu01 | - added new CategoryTextAnnotation and XYLineAnnotation |
| 1047 | 230 | sjacqu01 | classes; |
| 1048 | 230 | sjacqu01 | - added new HorizontalCategoryAxis3D class contributed by |
| 1049 | 230 | sjacqu01 | Klaus Rheinwald; |
| 1050 | 230 | sjacqu01 | |
| 1051 | 230 | sjacqu01 | Bug fixes: |
| 1052 | 230 | sjacqu01 | - added a workaround for JVM crash (a JDK bug) in pie charts |
| 1053 | 230 | sjacqu01 | with small sections (see bug report 620031); |
| 1054 | 230 | sjacqu01 | - fixed minor bug in HorizontalCategoryPlot constructor (see |
| 1055 | 230 | sjacqu01 | bug report 702248); |
| 1056 | 230 | sjacqu01 | - added code to ensure HorizontalNumberAxis3D is not drawn if |
| 1057 | 230 | sjacqu01 | it is not visible (see bug report 702466); |
| 1058 | 230 | sjacqu01 | - added small fix for suppressed chart change events (see bug |
| 1059 | 230 | sjacqu01 | report 690865); |
| 1060 | 230 | sjacqu01 | - added pieIndex parameter to tooltip and URL generators for |
| 1061 | 230 | sjacqu01 | pie charts; |
| 1062 | 230 | sjacqu01 | - fixed bug in getLastMillisecond() method for the Second |
| 1063 | 230 | sjacqu01 | class and the getFirstMillisecond() method for the Year |
| 1064 | 230 | sjacqu01 | class (picked up in JUnit tests); |
| 1065 | 230 | sjacqu01 | - in TextTitle, changed width used for relative spacing to fix |
| 1066 | 230 | sjacqu01 | bug 703050; |
| 1067 | 230 | sjacqu01 | |
| 1068 | 2327 | sjacqu01 | ##### Version 0.9.6 (17-Feb-2003) Bug fixes: |
| 1069 | 230 | sjacqu01 | - fixed null pointer exception in DefaultCategoryDataset; |
| 1070 | 230 | sjacqu01 | - fixed update problem for PaintTable, StrokeTable and |
| 1071 | 230 | sjacqu01 | ShapeTable objects; |
| 1072 | 230 | sjacqu01 | - added methods to control colors in PiePlot (these were |
| 1073 | 230 | sjacqu01 | inadvertantly removed in the changes made for 0.9.5); |
| 1074 | 230 | sjacqu01 | - fixed auto-range update problem for secondary axis; |
| 1075 | 230 | sjacqu01 | - fixed missing category labels in the overlaid category plot; |
| 1076 | 230 | sjacqu01 | - fixed constructors for symbolic axes; |
| 1077 | 230 | sjacqu01 | - corrected error in Javadoc generation (Ant script); |
| 1078 | 230 | sjacqu01 | |
| 1079 | 2327 | sjacqu01 | ##### Version 0.9.5 (6-Feb-2003) |
| 1080 | 2327 | sjacqu01 | |
| 1081 | 2327 | sjacqu01 | PLEASE NOTE THAT MAJOR CHANGES TO THE |
| 1082 | 230 | sjacqu01 | JFREECHART API HAVE BEEN MADE IN THIS RELEASE! |
| 1083 | 230 | sjacqu01 | |
| 1084 | 230 | sjacqu01 | - added support for secondary axes, datasets and renderers; |
| 1085 | 230 | sjacqu01 | - added new data interfaces (Value, Values, Values2D, |
| 1086 | 230 | sjacqu01 | KeyedValues and KeyedValues2D) and incorporated these into |
| 1087 | 230 | sjacqu01 | the existing PieDataset and CategoryDataset interfaces. |
| 1088 | 230 | sjacqu01 | - modified the CategoryDataset interface to be more |
| 1089 | 230 | sjacqu01 | symmetrical, data is organised in rows and columns (as |
| 1090 | 230 | sjacqu01 | before) but can now be accessed by row/column index or |
| 1091 | 230 | sjacqu01 | row/column key. |
| 1092 | 230 | sjacqu01 | - added support for reading PieDatasets and CategoryDatasets |
| 1093 | 230 | sjacqu01 | from XML files. |
| 1094 | 230 | sjacqu01 | - created separate packages for the axes |
| 1095 | 230 | sjacqu01 | (com.jrefinery.chart.axis), plots (com.jrefinery.chart.plot) |
| 1096 | 230 | sjacqu01 | and renderers (com.jrefinery.chart.renderer). |
| 1097 | 230 | sjacqu01 | - series attributes (paint, outline paint, stroke and shape) |
| 1098 | 230 | sjacqu01 | are now controlled by the renderer classes using lookup |
| 1099 | 230 | sjacqu01 | tables. Introduced the DrawingSupplier interface (and |
| 1100 | 230 | sjacqu01 | DefaultDrawingSupplier class) which is used to populate the |
| 1101 | 230 | sjacqu01 | lookup tables from a common source (necessary to coordinate |
| 1102 | 230 | sjacqu01 | complex combined charts). |
| 1103 | 230 | sjacqu01 | - the chart legend can now display shapes corresponding to |
| 1104 | 230 | sjacqu01 | series. |
| 1105 | 230 | sjacqu01 | - moved responsibility for category distribution to the |
| 1106 | 230 | sjacqu01 | CategoryAxis class, which tidies up the code in the |
| 1107 | 230 | sjacqu01 | CategoryPlot classes. |
| 1108 | 230 | sjacqu01 | - gridlines are now controlled by the CategoryPlot and XYPlot |
| 1109 | 230 | sjacqu01 | classes, not the axes (included in this change is the |
| 1110 | 230 | sjacqu01 | addition of gridlines for the CategoryPlot domain values). |
| 1111 | 230 | sjacqu01 | - changed the list of titles in the JFreeChart class to a |
| 1112 | 230 | sjacqu01 | title and a list of subtitles. |
| 1113 | 230 | sjacqu01 | - added new renderers for XYPlot (XYBubbleRenderer and |
| 1114 | 230 | sjacqu01 | YIntervalRenderer). |
| 1115 | 230 | sjacqu01 | - modified Gantt chart to display sub-tasks. |
| 1116 | 230 | sjacqu01 | - added ContourPlot class (still experimental) by David |
| 1117 | 230 | sjacqu01 | M. O'Donnell. |
| 1118 | 230 | sjacqu01 | - introduced new MovingAverage class. |
| 1119 | 230 | sjacqu01 | - ChartMouseEvent now includes source chart. |
| 1120 | 230 | sjacqu01 | - numerous bug fixes. |
| 1121 | 230 | sjacqu01 | - lots of Javadoc updates. |
| 1122 | 230 | sjacqu01 | |
| 1123 | 2327 | sjacqu01 | ##### Version 0.9.4 (18-Oct-2002) |
| 1124 | 2327 | sjacqu01 | |
| 1125 | 2327 | sjacqu01 | Added a new stacked area chart (contributed by Dan |
| 1126 | 230 | sjacqu01 | Rivett) and a compass plot (contributed by Bryan Scott). Updated |
| 1127 | 230 | sjacqu01 | the ThermometerPlot class. Added a new XYDotRenderer for scatter |
| 1128 | 230 | sjacqu01 | plots. Modified combined and overlaid plots to use the series colors |
| 1129 | 230 | sjacqu01 | specified in the sub plot rather than the parent plot (this makes it |
| 1130 | 230 | sjacqu01 | easier to align the colors in the legend). Added Regression class |
| 1131 | 230 | sjacqu01 | for linear and power regressions. BasicTimeSeries can now |
| 1132 | 230 | sjacqu01 | automatically drop "old" data. Some clean-up work in the code for |
| 1133 | 230 | sjacqu01 | tooltips and the event listener mechanism. Richard Atkinson has |
| 1134 | 230 | sjacqu01 | incorporated some useful extensions for servlets/JSP developers. |
| 1135 | 230 | sjacqu01 | |
| 1136 | 230 | sjacqu01 | Ran Checkstyle and corrected issues reported for most classes. |
| 1137 | 230 | sjacqu01 | Checkstyle is a free utility that you can download from: |
| 1138 | 230 | sjacqu01 | |
| 1139 | 230 | sjacqu01 | http://checkstyle.sourceforge.net |
| 1140 | 230 | sjacqu01 | |
| 1141 | 230 | sjacqu01 | Fixed bugs and updated documentation. |
| 1142 | 230 | sjacqu01 | |
| 1143 | 230 | sjacqu01 | API changes include: |
| 1144 | 230 | sjacqu01 | - added tickMarkPaint to Axis constructor (also affects |
| 1145 | 230 | sjacqu01 | subclasses); |
| 1146 | 230 | sjacqu01 | - added getLegendItems() to Plot, and deprecated |
| 1147 | 230 | sjacqu01 | getLegendItemLabels(); |
| 1148 | 230 | sjacqu01 | - added getLegendItem(int) to XYItemRenderer and |
| 1149 | 230 | sjacqu01 | CategoryItemRenderer. |
| 1150 | 230 | sjacqu01 | - most 'protected' member variables have been changed to |
| 1151 | 230 | sjacqu01 | 'private'. |
| 1152 | 230 | sjacqu01 | |
| 1153 | 2327 | sjacqu01 | ##### Version 0.9.3 (4-Sep-2002) |
| 1154 | 230 | sjacqu01 | |
| 1155 | 2327 | sjacqu01 | - Added multiple pie charts based on `CategoryDataset`; |
| 1156 | 2327 | sjacqu01 | - Updated logarithmic axes; |
| 1157 | 2327 | sjacqu01 | - Improved URL support for image map generation; |
| 1158 | 2327 | sjacqu01 | - Moved the `com.jrefinery.data` package from JCommon to JFreeChart. |
| 1159 | 2327 | sjacqu01 | - Added simple framework for chart annotations; |
| 1160 | 2327 | sjacqu01 | - Improved control over renderers; |
| 1161 | 2327 | sjacqu01 | - Duplicate x-values now allowed in `XYSeries`; |
| 1162 | 2327 | sjacqu01 | - Optional category label skipping in category axes; |
| 1163 | 2327 | sjacqu01 | - Added `CategoriesPaint` attribute to `AbstractCategoryItemRenderer`; |
| 1164 | 2327 | sjacqu01 | - Added new attributes to `MeterPlot` class; |
| 1165 | 2327 | sjacqu01 | - Updated 3D pie chart to observe start angle and direction, and also foreground alpha < 1.0;
|
| 1166 | 2327 | sjacqu01 | - Improved Javadoc comments; |
| 1167 | 2327 | sjacqu01 | - New demo applications, including: `AnnotationDemo1`, `EventFrequencyDemo`, `JDBCCategoryChartDemo`, `JDBCPieChartDemo`, `JDBCXYChartDemo` and `MinMaxCategoryPlotDemo`. |
| 1168 | 230 | sjacqu01 | |
| 1169 | 2327 | sjacqu01 | Bug fixes: |
| 1170 | 2327 | sjacqu01 | - negative percentages on `PiePlot`; |
| 1171 | 2327 | sjacqu01 | - added listener notification to `setXXXAxis(...)` methods; |
| 1172 | 2327 | sjacqu01 | - fixed `DomainInfo` method name clash; |
| 1173 | 2327 | sjacqu01 | - added `DomainIsPointsInTime` flag to `TimeSeriesCollection` to give better control over auto range on axis for time series charts; |
| 1174 | 2327 | sjacqu01 | - axis margins for date axes are no longer hard-coded; |
| 1175 | 2327 | sjacqu01 | - fix for ordering of categories in `JdbcCategoryDataset`; |
| 1176 | 2327 | sjacqu01 | - added check for `null` axis in mouse click handler. |
| 1177 | 230 | sjacqu01 | |
| 1178 | 2327 | sjacqu01 | The CVS repository at SourceForge has also been restructured to match the distribution directory layout. |
| 1179 | 230 | sjacqu01 | |
| 1180 | 230 | sjacqu01 | |
| 1181 | 2327 | sjacqu01 | ##### Version 0.9.2 (28-Jun-2002) |
| 1182 | 230 | sjacqu01 | |
| 1183 | 2327 | sjacqu01 | - `PiePlot` now has `startAngle` and `direction` attributes; |
| 1184 | 2327 | sjacqu01 | - added support for image map generation; |
| 1185 | 2327 | sjacqu01 | - added a new `Pie3DPlot` class; |
| 1186 | 2327 | sjacqu01 | - added label drawing code to bar renderers; |
| 1187 | 2327 | sjacqu01 | - added optional range markers to horizontal number axis; |
| 1188 | 2327 | sjacqu01 | - added bar clipping to avoid PRExceptions in bar charts; |
| 1189 | 2327 | sjacqu01 | - `JFreeChartDemo` has been modified and now includes examples of the dial and thermometer plots. |
| 1190 | 230 | sjacqu01 | |
| 1191 | 2327 | sjacqu01 | ######Bug fixes |
| 1192 | 230 | sjacqu01 | |
| 1193 | 2327 | sjacqu01 | - auto range for `VerticalNumberAxis` when zero is forced to be included in the range; |
| 1194 | 2327 | sjacqu01 | - fixed null pointer exception in `StackedVerticalBarRenderer3D`; |
| 1195 | 2327 | sjacqu01 | - added get/set methods for min/max chart drawing dimensions in `ChartPanel`; |
| 1196 | 2327 | sjacqu01 | - `HorizontalIntervalBarRenderer` now handles single category; |
| 1197 | 2327 | sjacqu01 | - `verticalTickLabels` now possible in `HorizontalNumberAxis3D`; |
| 1198 | 2327 | sjacqu01 | - removed unnecessary imports; |
| 1199 | 230 | sjacqu01 | |
| 1200 | 230 | sjacqu01 | |
| 1201 | 2327 | sjacqu01 | ##### Version 0.9.1 (14-Jun-2002) |
| 1202 | 230 | sjacqu01 | |
| 1203 | 2327 | sjacqu01 | Bug fixes and Javadoc updates. |
| 1204 | 230 | sjacqu01 | |
| 1205 | 2327 | sjacqu01 | - fixed auto range calculation for category plots; |
| 1206 | 2327 | sjacqu01 | - fixed event notification for `XYPlot`; |
| 1207 | 2327 | sjacqu01 | - fixed auto axis range for Gantt charts; |
| 1208 | 2327 | sjacqu01 | - check for null popup menu in `ChartPanel.mouseDragged`; |
| 1209 | 2327 | sjacqu01 | - new checks for null info in renderers; |
| 1210 | 2327 | sjacqu01 | - range markers now drawn only if in visible axis range; |
| 1211 | 230 | sjacqu01 | |
| 1212 | 230 | sjacqu01 | |
| 1213 | 2327 | sjacqu01 | ##### Version 0.9.0 (7-Jun-2002) |
| 1214 | 230 | sjacqu01 | |
| 1215 | 2327 | sjacqu01 | - new plots including an area chart, a horizontal 3D bar chart, a Gantt chart |
| 1216 | 2327 | sjacqu01 | and a thermometer chart; |
| 1217 | 2327 | sjacqu01 | - combination plots have been reworked to provide a simpler framework, and |
| 1218 | 2327 | sjacqu01 | extends to allow category plots to be combined; |
| 1219 | 2327 | sjacqu01 | - there is now a facility to add a `ChartMouseListener` to the `ChartPanel` |
| 1220 | 2327 | sjacqu01 | (formerly `JFreeChartPanel`); |
| 1221 | 2327 | sjacqu01 | - an interactive zooming feature (experimental at this point) is now available |
| 1222 | 2327 | sjacqu01 | for `XYPlots`; |
| 1223 | 2327 | sjacqu01 | - a new Polish translation has been added; |
| 1224 | 2327 | sjacqu01 | - several fixes have been applied to the default tool tip generators; |
| 1225 | 2327 | sjacqu01 | - a workaround has been added to fix the alignment between time series charts |
| 1226 | 2327 | sjacqu01 | and the date axis; |
| 1227 | 2327 | sjacqu01 | - there are some improvements to the `VerticalLogarithmicAxis` class, and now a |
| 1228 | 2327 | sjacqu01 | corresponding `HorizontalLogarithmicAxis` class; |
| 1229 | 2327 | sjacqu01 | - additional demonstration applications have been added; |
| 1230 | 2327 | sjacqu01 | - fixed the popup menu bug. |
| 1231 | 230 | sjacqu01 | |
| 1232 | 265 | sjacqu01 | |
| 1233 | 2327 | sjacqu01 | ##### Version 0.8.1 (5-Apr-2002) |
| 1234 | 265 | sjacqu01 | |
| 1235 | 2327 | sjacqu01 | - Localised resource bundles for French, German and Spanish languages (thanks to |
| 1236 | 2327 | sjacqu01 | Anthony Boulestreau, Thomas Meier and Hans-Jurgen Greiner for the translations); |
| 1237 | 2327 | sjacqu01 | - an area XY plot and meter chart contributed by Hari; |
| 1238 | 2327 | sjacqu01 | - symbol charts contributed by Anthony Boulestreau; |
| 1239 | 2327 | sjacqu01 | - an improved `CandleStickRenderer` class from Sylvain Vieujot; |
| 1240 | 2327 | sjacqu01 | - updated servlet code from Bryan Scott; |
| 1241 | 2327 | sjacqu01 | - `XYItemRenderers` now have a change listener mechanism and therefore do not |
| 1242 | 2327 | sjacqu01 | have to be immutable; |
| 1243 | 2327 | sjacqu01 | - additional demonstration applications for individual chart types; |
| 1244 | 2327 | sjacqu01 | - minor bug fixes. |
| 1245 | 265 | sjacqu01 | |
| 1246 | 265 | sjacqu01 | |
| 1247 | 2327 | sjacqu01 | ##### Version 0.8.0 (22-Mar-2002) |
| 1248 | 265 | sjacqu01 | |
| 1249 | 2327 | sjacqu01 | - all the category plots are now controlled through the one class (`CategoryPlot`) with plug-in renderers; |
| 1250 | 2327 | sjacqu01 | - added a `ResourceBundle` for user interface items that require localisation; |
| 1251 | 2327 | sjacqu01 | - added a logarithmic axis class contributed by Mike Duffy and some new JDBC and servlet code contributed by Bryan Scott; |
| 1252 | 2327 | sjacqu01 | - updated the JCommon class library to improve handling of time periods in different time zones. |
| 1253 | 265 | sjacqu01 | |
| 1254 | 265 | sjacqu01 | |
| 1255 | 2327 | sjacqu01 | ##### Version 0.7.4 (6-Mar-2002) |
| 1256 | 265 | sjacqu01 | |
| 1257 | 2327 | sjacqu01 | - bug fixes in the JCommon Class Library; |
| 1258 | 2327 | sjacqu01 | - various Javadoc comment updates; |
| 1259 | 2327 | sjacqu01 | - some minor changes to the code; |
| 1260 | 2327 | sjacqu01 | - added new domain name (http://www.object-refinery.com) in the source headers. |
| 1261 | 265 | sjacqu01 | |
| 1262 | 265 | sjacqu01 | |
| 1263 | 2327 | sjacqu01 | ##### Version 0.7.3 (14-Feb-2002) |
| 1264 | 265 | sjacqu01 | |
| 1265 | 2327 | sjacqu01 | Bug fixes. |
| 1266 | 265 | sjacqu01 | |
| 1267 | 265 | sjacqu01 | |
| 1268 | 2327 | sjacqu01 | ##### Version 0.7.2 (8-Feb-2002) |
| 1269 | 265 | sjacqu01 | |
| 1270 | 2327 | sjacqu01 | - integrated the `WindPlot` code from Achilleus Mantzios; |
| 1271 | 2327 | sjacqu01 | - added an optional background image for the `JFreeChart` class; |
| 1272 | 2327 | sjacqu01 | - added an optional background image for the `Plot` class; |
| 1273 | 2327 | sjacqu01 | - added alpha-transparency for the plot foreground and background; |
| 1274 | 2327 | sjacqu01 | - added new pie chart label types that show values; |
| 1275 | 2327 | sjacqu01 | - fixed a bug with the legend that results in a loop at small chart sizes; |
| 1276 | 2327 | sjacqu01 | - added some tooltip methods that were missing from the previous version; |
| 1277 | 2327 | sjacqu01 | - changed the `Insets` class on chart titles to a new `Spacer` class that will |
| 1278 | 2327 | sjacqu01 | allow for relative or absolute insets (the plan is to eventually replace all |
| 1279 | 2327 | sjacqu01 | `Insets` in the `JFreeChart` classes); |
| 1280 | 2327 | sjacqu01 | - fixed a bug in the `setAutoRangeIncludesZero` method of the `NumberAxis` class; |
| 1281 | 2327 | sjacqu01 | - added the instructions that were missing from the copies of the GNU Lesser General Public Licence included with JFreeChart. |
| 1282 | 265 | sjacqu01 | |
| 1283 | 265 | sjacqu01 | |
| 1284 | 2327 | sjacqu01 | ##### Version 0.7.1 (25-Jan-2002) |
| 1285 | 265 | sjacqu01 | |
| 1286 | 2327 | sjacqu01 | - added tooltips, crosshairs and zooming functions, thanks to Jonathan Nash and Hans-Jurgen Greiner |
| 1287 | 2327 | sjacqu01 | for contributing the code that these features are based on; |
| 1288 | 2327 | sjacqu01 | - moved the combination charts into the package `com.jrefinery.chart.combination`; |
| 1289 | 2327 | sjacqu01 | - made a number of other small API changes and fixed some bugs; |
| 1290 | 2327 | sjacqu01 | - removed the Javadoc HTML from the download to save space (you can regenerate it from the source code if you need it). |
| 1291 | 265 | sjacqu01 | |
| 1292 | 265 | sjacqu01 | |
| 1293 | 2327 | sjacqu01 | ##### Version 0.7.0 (11-Dec-2001) |
| 1294 | 265 | sjacqu01 | |
| 1295 | 2327 | sjacqu01 | - new combination plots developed by Bill Kelemen; |
| 1296 | 2327 | sjacqu01 | - added Wolfgang Irler's servlet demo to the standard download; |
| 1297 | 2327 | sjacqu01 | - the About window in the demo application now includes a list of developers that have contributed to the project. |
| 1298 | 265 | sjacqu01 | |
| 1299 | 265 | sjacqu01 | |
| 1300 | 2327 | sjacqu01 | ##### Version 0.6.0 (27-Nov-2001) |
| 1301 | 265 | sjacqu01 | |
| 1302 | 2327 | sjacqu01 | - new plots including scatter plot, stacked bar charts and 3D bar charts; |
| 1303 | 2327 | sjacqu01 | - improved pie chart; |
| 1304 | 2327 | sjacqu01 | - data interfaces and classes moved to the JCommon class library; |
| 1305 | 2327 | sjacqu01 | - new properties to control spacing on bar charts; |
| 1306 | 2327 | sjacqu01 | - new auto-tick mechanism; |
| 1307 | 2327 | sjacqu01 | - `JFreeChartPanel` now incorporates buffering, and popup menu; |
| 1308 | 2327 | sjacqu01 | - Javadocs revised; |
| 1309 | 2327 | sjacqu01 | - fixed numerous bugs from version 0.5.6; |
| 1310 | 2327 | sjacqu01 | - demo application updated. |
| 1311 | 265 | sjacqu01 | |
| 1312 | 265 | sjacqu01 | |
| 1313 | 2327 | sjacqu01 | CONTRIBUTORS |
| 1314 | 2327 | sjacqu01 | ------------ |
| 1315 | 2327 | sjacqu01 | 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: |
| 1316 | 265 | sjacqu01 | |
| 1317 | 2327 | sjacqu01 | - Eric Alexander |
| 1318 | 2327 | sjacqu01 | - Richard Atkinson |
| 1319 | 2327 | sjacqu01 | - David Basten |
| 1320 | 2327 | sjacqu01 | - David Berry |
| 1321 | 2327 | sjacqu01 | - Chris Boek |
| 1322 | 2327 | sjacqu01 | - Zoheb Borbora |
| 1323 | 2327 | sjacqu01 | - Anthony Boulestreau |
| 1324 | 2327 | sjacqu01 | - Jeremy Bowman |
| 1325 | 2327 | sjacqu01 | - Nicolas Brodu |
| 1326 | 2327 | sjacqu01 | - Jody Brownell |
| 1327 | 2327 | sjacqu01 | - David Browning |
| 1328 | 2327 | sjacqu01 | - Soren Caspersen |
| 1329 | 2327 | sjacqu01 | - Thomas A Caswell |
| 1330 | 2327 | sjacqu01 | - Chuanhao Chiu |
| 1331 | 2327 | sjacqu01 | - Brian Cole |
| 1332 | 2327 | sjacqu01 | - Pascal Collet |
| 1333 | 2327 | sjacqu01 | - Martin Cordova |
| 1334 | 2327 | sjacqu01 | - Paolo Cova |
| 1335 | 2327 | sjacqu01 | - Greg Darke |
| 1336 | 2327 | sjacqu01 | - Mike Duffy |
| 1337 | 2327 | sjacqu01 | - Don Elliott |
| 1338 | 2327 | sjacqu01 | - Rune Fauske |
| 1339 | 2327 | sjacqu01 | - Jonathan Gabbai |
| 1340 | 2327 | sjacqu01 | - Serge V. Grachov |
| 1341 | 2327 | sjacqu01 | - Daniel Gredler |
| 1342 | 2327 | sjacqu01 | - Joao Guilherme Del Valle |
| 1343 | 2327 | sjacqu01 | - Hans-Jurgen Greiner |
| 1344 | 2327 | sjacqu01 | - Nick Guenther |
| 1345 | 2327 | sjacqu01 | - Aiman Han |
| 1346 | 2327 | sjacqu01 | - Cameron Hayne |
| 1347 | 2327 | sjacqu01 | - Martin Hoeller (xS+S) |
| 1348 | 2327 | sjacqu01 | - Jon Iles |
| 1349 | 2327 | sjacqu01 | - Wolfgang Irler |
| 1350 | 2327 | sjacqu01 | - Sergei Ivanov |
| 1351 | 2327 | sjacqu01 | - Nina Jeliazkova |
| 1352 | 2327 | sjacqu01 | - Adriaan Joubert |
| 1353 | 2327 | sjacqu01 | - Darren Jung |
| 1354 | 2327 | sjacqu01 | - Xun Kang |
| 1355 | 2327 | sjacqu01 | - Bill Kelemen |
| 1356 | 2327 | sjacqu01 | - Norbert Kiesel |
| 1357 | 2327 | sjacqu01 | - Petr Kopac |
| 1358 | 2327 | sjacqu01 | - Gideon Krause |
| 1359 | 2327 | sjacqu01 | - Dave Law; |
| 1360 | 2327 | sjacqu01 | - Pierre-Marie Le Biot |
| 1361 | 2327 | sjacqu01 | - Simon Legner |
| 1362 | 2327 | sjacqu01 | - Arnaud Lelievre |
| 1363 | 2327 | sjacqu01 | - Wolfgang Lenhard |
| 1364 | 2327 | sjacqu01 | - Leo Leung |
| 1365 | 2327 | sjacqu01 | - David Li |
| 1366 | 2327 | sjacqu01 | - Yan Liu |
| 1367 | 2327 | sjacqu01 | - Tin Luu |
| 1368 | 2327 | sjacqu01 | - Craig MacFarlane |
| 1369 | 2327 | sjacqu01 | - Achilleus Mantzios |
| 1370 | 2327 | sjacqu01 | - John Matthews |
| 1371 | 2327 | sjacqu01 | - Thomas Meier |
| 1372 | 2327 | sjacqu01 | - Jim Moore |
| 1373 | 2327 | sjacqu01 | - Jonathan Nash |
| 1374 | 2327 | sjacqu01 | - Barak Naveh |
| 1375 | 2327 | sjacqu01 | - David M. O'Donnell |
| 1376 | 2327 | sjacqu01 | - Krzysztof Paz |
| 1377 | 2327 | sjacqu01 | - Eric Penfold |
| 1378 | 2327 | sjacqu01 | - Tomer Peretz |
| 1379 | 2327 | sjacqu01 | - Xavier Poinsard |
| 1380 | 2327 | sjacqu01 | - Andrzej Porebski |
| 1381 | 2327 | sjacqu01 | - Viktor Rajewski |
| 1382 | 2327 | sjacqu01 | - Eduardo Ramalho |
| 1383 | 2327 | sjacqu01 | - Michael Rauch |
| 1384 | 2327 | sjacqu01 | - Klaus Rheinwald |
| 1385 | 2327 | sjacqu01 | - Cameron Riley |
| 1386 | 2327 | sjacqu01 | - Dan Rivett |
| 1387 | 2327 | sjacqu01 | - Lukasz Rzeszotarski |
| 1388 | 2327 | sjacqu01 | - Scott Sams |
| 1389 | 2327 | sjacqu01 | - Michel Santos |
| 1390 | 2327 | sjacqu01 | - Thierry Saura |
| 1391 | 2327 | sjacqu01 | - Patrick Schlott |
| 1392 | 2327 | sjacqu01 | - Andreas Schneider |
| 1393 | 2327 | sjacqu01 | - Christoph Schroeder |
| 1394 | 2327 | sjacqu01 | - Jean-Luc SCHWAB |
| 1395 | 2327 | sjacqu01 | - Bryan Scott |
| 1396 | 2327 | sjacqu01 | - Tobias Selb |
| 1397 | 2327 | sjacqu01 | - Darshan Shah |
| 1398 | 2327 | sjacqu01 | - Mofeed Shahin |
| 1399 | 2327 | sjacqu01 | - Michael Siemer |
| 1400 | 2327 | sjacqu01 | - Pady Srinivasan |
| 1401 | 2327 | sjacqu01 | - Greg Steckman |
| 1402 | 2327 | sjacqu01 | - Roger Studner |
| 1403 | 2327 | sjacqu01 | - Gerald Struck |
| 1404 | 2327 | sjacqu01 | - Irv Thomae |
| 1405 | 2327 | sjacqu01 | - Eric Thomas |
| 1406 | 2327 | sjacqu01 | - Rich Unger |
| 1407 | 2327 | sjacqu01 | - Daniel van Enckevort |
| 1408 | 2327 | sjacqu01 | - Laurence Vanhelsuwe |
| 1409 | 2327 | sjacqu01 | - Sylvain Vieujot |
| 1410 | 2327 | sjacqu01 | - Jelai Wang |
| 1411 | 2327 | sjacqu01 | - Mark Watson |
| 1412 | 2327 | sjacqu01 | - Alex Weber |
| 1413 | 2327 | sjacqu01 | - Richard West |
| 1414 | 2327 | sjacqu01 | - Matthew Wright |
| 1415 | 2327 | sjacqu01 | - Benoit Xhenseval |
| 1416 | 2327 | sjacqu01 | - Christian W. Zuckschwerdt |
| 1417 | 2327 | sjacqu01 | - Hari |
| 1418 | 2327 | sjacqu01 | - Sam (oldman) |
| 1419 | 265 | sjacqu01 | |
| 1420 | 2327 | sjacqu01 | It is possible that I have missed someone on this list, if that applies to you, please e-mail me. |
| 1421 | 265 | sjacqu01 | |
| 1422 | 2327 | sjacqu01 | Dave Gilbert (david.gilbert@object-refinery.com) |
| 1423 | 265 | sjacqu01 | |
| 1424 | 2327 | sjacqu01 | JFreeChart Project Leader |