-
Notifications
You must be signed in to change notification settings - Fork 31
/
CHANGES.txt
611 lines (545 loc) · 22.6 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
Version 3.20 (24/04/2023)
------------
- Added support for curved best-fit lines.
- Added support for CSS units in font sizes and line spacing.
Version 3.19 (10/01/2023)
------------
- Added ParetoChart.
- Added fill_under "full" option to always fill to bottom of grid.
- Updated code to work properly under PHP 8.2.
Version 3.18 (02/12/2022)
------------
- Added shading of flat 3D pie graph sides.
- Added support for colouring data labels using "fill" and "fillColour".
- Fixed axis_text structure option on multi-dataset graphs.
- Fixed explode "all" doing nothing on pie graphs with all values equal.
Version 3.17 (16/09/2022)
------------
- Added axis_tightness_x option for removing space at ends of X-axis.
- Added data_label_align option for label text alignment.
- Added tooltip_align option for tooltip text alignment.
- Fixed missing final bar when using axis_ticks_x with bar graphs.
- Fixed data labels from structured data not showing when filter set to "none".
Version 3.16 (29/07/2022)
------------
- Added support for multiple task bars/milestones on Gantt chart rows.
- Added axis_double_x and axis_double_y options for same axis both sides.
- Added axis_pad_* options for adding space between axes and grid.
- Added axis_extend_* options for extending ends of axes.
- Fixed axis with levels on right side of horizontal graph.
Version 3.15 (16/06/2022)
------------
- Added dependency arrow support to Gantt charts.
- Added gantt_units option for tasks in hours and minutes.
- Added grid_clip_overlap_* options for adjusting line graph clipping.
Version 3.14 (02/05/2022)
------------
- Added Gantt chart.
- Added automatic graph height option.
- Added support for best-fit lines on bar and line graphs.
- Added support for using coordinates for legend position.
- Added block_position_markers option.
Version 3.13.1 (11/03/2022)
--------------
- Fixed deprecation warning messages displayed by PHP 8.1.
- Fixed problem with file encoding of Text class.
- Improved accuracy of HSL to RGB conversion.
Version 3.13 (14/02/2022)
------------
- Added curved line graph support with line_curve option.
- Added horizontal 3D bar graph.
- Added horizontal grouped 3D bar graph.
- Added horizontal stacked 3D bar graph.
- Added line_bar option for setting marker positions on bar and line graphs.
- Cylinder graphs now support bar_top_overlay_* options.
- Made conversion of multi-dataset data to structured more robust.
Version 3.12 (10/12/2021)
------------
- Added exploded semi-donut graph.
- Added 3D donut graph.
- Added 3D semi-donut graph.
- Added exploded 3D donut graph.
- Added exploded 3D semi-donut graph.
- Added candlestick graph.
- Added log_axis_x and log_axis_x_base options with logarithmic X-axis support.
Version 3.11 (18/11/2021)
------------
- Added exploded donut graph.
- Added donut_slice_gap option.
- Fixed problem in datetime axis labelling around DST changes.
- Fixed incorrect shape sizes on datetime graph around DST changes.
- Fixed positioning of axis labels on datetime bar graphs.
Version 3.10 (19/07/2021)
------------
- Added support for using text as a shape or figure.
- Fixed angled axis text being badly placed with new limit_text_angle option.
- Fixed guidelines not showing on date/time graphs.
- Fixed some missing date/time tokens in crosshair text.
- Fixed histograms not supporting non-integer values.
- Fixed polar area graphs drawing incorrectly with date/time keys.
Version 3.9 (24/05/2021)
-----------
- Added support for linking legend entries and title.
- Added axis_ticks_x and axis_ticks_y options for specific tick marks.
- Added legend_autohide_opacity option.
- Added autohide and autohide_opacity options for shapes.
- Added grid stroke width options.
Version 3.8 (23/02/2021)
-----------
- Added SteppedLineGraph and MultiSteppedLineGraph graph types.
- Added force_block_label_x option.
- Added axis_zero_y option.
- Added data_label_opacity option.
- Added various line spacing options.
- Added localization of date strings.
- Improved timezone support for date/time values.
- Fixed axis label position on graphs with negative values.
- Fixed date conversion problems in guideline positions.
- Fixed empty legend entry on multi-line graphs with single point in dataset.
Version 3.7 (27/11/2020)
-----------
- Added options for displaying mean average lines.
- Added background shadow support.
- Added graph subtitle options.
- Added alternative Y-axis fitting algorithm with axis_tightness_y option.
- Updated axis_label_position options to support aligning text with axis ends.
- Updated colourRangeHex functions to support more colour options.
Version 3.6 (19/06/2020)
-----------
- Added support for multi-level axis division labels.
- Added axis_font_weight option and its horizontal and vertical options.
- Added axis_text_back_colour option and horizontal, vertical options.
- Fixed display of axis lines when using a gradient.
- Fixed crosshairs not hiding when cursor leaves grid.
- Fixed link_target and link_base options not working.
Version 3.5 (07/03/2020)
-----------
- Added support for saturation, brightness and hue colour filters.
- Added support for using fill colour or style in best-fit lines.
- Added support for using fill colour or style in box and whisker median line.
- Added support for using gradients in patterns.
- Added legend_unique_fields option for preventing duplicate legend text.
- Added legend_entries option callback for more control over legend entries.
Version 3.4 (20/12/2019)
-----------
- Added SVG filter based shadows and options for adjusting them.
- Added legend spacing and padding options.
- Added support for stroking graph, tooltip, legend and label lines using
gradients and patterns.
- Added support for stroking graph lines using fill colour or fill style.
- Added support for filling markers with gradients and patterns.
- Added support for displaying gradients in radar graph grid stripes.
- Added simple Javascript minifier function.
- Fixed 3D bar graphs having spiky corners at the top.
- Fixed histogram X-axis being truncated.
- Fixed 3D pie graph side shading drawing over edges.
- Fixed lousy axis top end calculation when non-zero bottom end specified.
- Fixed legend entries not showing for floating graph bars starting at zero.
Version 3.3 (22/11/2019)
-----------
- Added ArrayGraph type for simple multiple-graph documents.
- Added dataset option support to all graph types.
- Added bar_round option for rounded corners on bar graphs.
- Added median_colour and median_dash options for box and whisker graphs.
Version 3.2 (26/09/2019)
-----------
- Added axis_label_position options.
- Added legend_order option.
- Added axis_fallback_max option for better handling of all-zero value graphs.
- Added dataset option for choosing dataset for pie graphs to draw.
- Fixed legend display for stacked bar and line graphs and population pyramid.
- Fixed legend display for multi-dataset graphs starting with 0 values.
- Fixed magnification of tooltips in subgraphs.
- Fixed incorrect position of crosshairs when magnification enabled.
- Fixed axis text when using force_assoc and value with a key of 0.
- Fixed overlapped tooltips from internal edges of 3D polar area graphs.
Version 3.1 (02/08/2019)
-----------
- Added subgraph support.
- Added magnifier options.
- Added support for using figures as patterns.
Version 3.0.1 (14/06/2019)
-------------
- Added text formatting classes to prevent localised numbers in SVG attributes.
- Fixed data label click show and fade on pages with multiple graphs.
Version 3.0 (14/03/2019)
-----------
- All classes are now in Goat1000\SVGGraph\ namespace.
- PSR-4 autoloader required for loading class files.
- Added autoloader.php for anyone not using a framework with PSR-4 autoloader.
- Values, colours and links must now be set using functions, not directly.
- Added EmptyGraph type for using shapes and labels without data.
- Added use_iconv and use_mbstring options.
- Added line_breaks option for line graphs.
- Split redundant code out into traits.
- Removed compat_events code and option.
- Fixed tooltips going off edge of small graphs on same page as larger graphs.
- Fixed auto tail length for custom labels.
- Fixed edge shading on 3D polar area graphs.
Version 2.30 (04/01/2019)
------------
- Added "image" shape support.
- Added "marker" shape support.
- Added "figure" option for creating predefined shapes.
- Added "figure" shape support.
- Added "figure" marker support.
- Improved axis label positioning.
Version 2.29 (09/10/2018)
------------
- Added context menu options.
- Added "box" division and subdivision style.
- Added axis_text_location option for text position on graphs with negative
values.
- Moved axis measurement and drawing out of GridGraph and subclasses into new
DisplayAxis classes.
- Replaced GetFirst() and ArrayOption() functions with GetOption().
Version 2.28 (23/07/2018)
------------
- Added text measurement class using font metrics and/or character widths.
Version 2.27 (28/03/2018)
------------
- Added support for multiple Y-axes using dataset_axis option.
- Added support for best-fit lines on bubble graphs.
- Added line_figure and line_figure_closed options for drawing shapes on line
graphs.
- Fixed crosshairs being left behind when cursor moved out of document.
- Fixed broken bars when all values in stacked grouped 3D bar and cylinder
graphs negative.
Version 2.26 (10/01/2018)
------------
- Added "auto" option for data label tail length.
- Added data_label_same_size option for more consistent labels.
- Setting data_label_round for line or plain labels now uses a circular
bounding box.
- Added circle, square, linecircle, linebox, linesquare and line2 label styles.
- Added tail end options for new label styles.
- Added no_tspan option for compatibility with renderers that don't support
tspan elements fully.
Version 2.25 (12/10/2017)
------------
- Added 3D polar area graph.
- Added 3D exploded pie graph.
- Added support for datetime keys in shapes and labels.
- 3D pie graph sides are now drawn correctly when end_angle used.
- Improved PHP7 compatibility.
- Moved guideline code into separate file.
- Fixed display of semi-donut graph when there is a single value.
- Fixed display of multi-line axis text on horizontal graphs.
- Fixed multi-line text alignment when minifying is disabled.
- Fixed legend_show_empty behaviour inconsistencies.
- Fixed incorrect legend size when containing numeric strings.
- Fixed missing bar tops on stacked grouped 3D bar graphs.
Version 2.24.1 (21/08/2017)
--------------
- Added stacked bar and line graph.
- 0 values are now labelled on bar graphs.
- Added "nonzero" data label filter to disable showing 0 value labels.
- Added support for associative and datetime keys in X-axis guidelines.
- Fixed axis text callback passing floating point values instead of integers
for array keys.
Version 2.24 (31/01/2017)
------------
- Added semi-donut graph.
- Added associative and datetime key support to shapes, labels and crosshairs.
- Added end_angle and slice_fit options for drawing partial pie graphs.
- Added keep_colour_order option for simpler pie graph slice colouring.
- Added marker_opacity and marker_angle options.
- Added custom marker support.
- Made FetchJavascript work when called statically.
- Fixed minify_js option to support anonymous callback functions.
- Fixed error when array of guidelines contains a single guideline array.
- Fixed bar_total_outline_colour option on horizontal stacked graphs.
- Fixed javascript error in legend_autohide.
- Fixed legend order for graphs with multiple datasets starting at different
key values.
- Improved positioning of exploded pie slices.
Version 2.23.1 (03/08/2016)
--------------
- Added datetime_key_format option.
- Fixed per-dataset stroke_width with a 0 value.
- Fixed default structure missing values with string keys when main key is 0.
- Fixed error when using datetime keys with multiple unstructured datasets.
- Fixed legend autohide not working when no other Javascript options enabled.
- Fixed error in radar graphs when given some dual-Y axis settings.
Version 2.23 (22/06/2016)
------------
- Added date/time axis.
- Added callback function support to logarithmic axis.
- Added exception_throw option to disable catching exceptions.
- Fixed axis callback functions not working with associative data.
- Fixed legend display for line graphs when marker size is 0.
Version 2.22 (05/05/2016)
------------
- Added support for legend entries from structured data.
- Added show_legend option (default true) for disabling legend.
- Added support for multiple lines of text in legend entries and title.
- Added support for using coordinates from second Y-axis in shapes and labels.
- Fixed hex and decimal entities being escaped in text.
Version 2.21 (17/03/2016)
------------
- Added best-fit line support to line graphs.
- Added best_fit_range option for limiting best-fit line.
- Added best_fit_project options for projecting beyond best-fit range.
- Merged code to allow repeated keys in pie graphs.
- Fixed displaying image markers with absolute links.
- Fixed minimum fallback bar width to 1 pixel.
Version 2.20.1 (19/01/2016)
--------------
- Added bar_width_min option.
- Added clip_to_grid option for shapes.
- Fixed shape units calculations when axes not starting in bottom left.
- Fixed error when gradient array contains a single colour.
Version 2.20 (05/12/2015)
------------
- Added stacked grouped 3D bar graph and stacked grouped cylinder graph.
- Added shape options.
- Added custom label options.
- Added svg_class option.
- Added grid_back_opacity and grid_back_stripe_opacity options.
- Added multiple colour stripe support to grid_back_stripe_colour option.
- Added gradient stop support to gradients.
- Added radial gradient support for radar graph backgrounds.
- Fixed pattern definitions not being reused.
- Fixed javascript crosshair coordinates jumping around.
- Fixed problems with autoloading graph classes.
Version 2.19.1 (21/08/2015)
--------------
- Added bar_total_callback option.
- Fixed stacked grouped bar graph height calculations.
- Fixed structured_data to disabled structure when set to FALSE.
Version 2.19 (17/07/2015)
------------
- Added histogram.
- Added shading overlay for 3D bar sides and top.
- Added best_fit_opacity and best_fit_above options.
- Added semantic class for best fit lines.
- Added tooltip and data label callback options.
- Added data_label_min_space option.
Version 2.18 (03/04/2015)
------------
- Added bar and line graph.
- Added data label options for all graph types.
- Added semantic_classes option.
- Added axis text callback options.
- Added detection of mbstring extension. If not available, fall back to basic
string functions.
- Added check for too many divisions being created.
- Fixed broken axis_right option on some multi-dataset graphs.
- Fixed legend dragging.
- Fixed divide by zero error in colour range function.
Version 2.17 (27/11/2014)
------------
- Added fixed axis positioning options.
- Added colour range and set functions.
- Added auto_fit option and resizing support.
- Fixed crosshairs bugs when embedded in HTML.
Version 2.16 (24/09/2014)
------------
- Added stacked grouped bar graph.
- Added image markers support.
- Added skewing of 3D bar side and top.
- Added support for fixed bar width.
- Added option to set the number of decimal digits shown on axis text.
- Added opacity value support for graph background colour.
- Added exception details option for debugging.
- Replaced all @ error handlers with tests for problem values.
- Fixed escaping of text.
- Fixed blank lines in multi-line text being ignored.
- Fixed rendering of graphs with a single value.
Version 2.15.1 (12/05/2014)
--------------
- Added crosshair options.
- Fixed X axis being incorrectly labelled when using large associative dataset.
Version 2.15 (11/03/2014)
------------
- Added donut graph.
- Added polar area graph.
- Added exploded pie graph.
- Added support for dual Y axes.
- Fixed legend dragging when embedded in HTML.
Version 2.14 (05/10/2013)
------------
- Added pattern fill support.
- Added total labels for stacked bar graphs.
- Better validation of structured data.
- Better handling of non-ASCII strings.
- Replaced rgba() values with opacity attributes.
- Fixed compatibility with PHP 5.1.x.
- Fixed drawing of pie graphs containing relatively small values.
- Fixed X axis calculations for negative or non-integral values.
- Fixed structured axis_text when units_label or units_before_label used.
- Fixed position of labels on stacked bar graphs with negative values.
- Fixed legend entries skipping NULL or 0 values.
Version 2.13 (31/07/2013)
------------
- Added PopulationPyramid graph.
- Added units_before_x and units_before_y options for axis text.
- Added units_label and units_before_label options for pie/bar labels.
- Added units_tooltip, units_before_tooltip, units_tooltip_key and
units_before_tooltip_key options for tooltip values.
- Added stroke_dash, minify and minify_js options.
- Added structured data options: marker_type, marker_size, marker_stroke_width,
marker_stroke_colour, stroke_colour, stroke_width and stroke_dash.
- Fixed display of character entities in tooltips.
- Fixed measurement of text containing character entities.
- Fixed dragging of legend over pie graphs.
Version 2.12 (18/05/2013)
------------
- Added log_axis_y and log_axis_y_base options.
- Added decimal and thousands options for number formatting.
- Added grid_back_stripe and grid_back_stripe_colour options.
- Added per-axis font options.
- Added units_x and units_y options for axis text.
- Added show_label_key option for pie graphs.
- 3D pie graphs now calculate a depth when the setting is too great.
- Fixed structure option to take precedence over scatter_2d option.
- Fixed display of small numbers on axes.
- Added workaround for Safari 6 <use/> bug.
Version 2.11 (12/03/2013)
------------
- Added stacked and grouped cylinder graphs.
- Added structured data support.
- Added normal and horizontal floating bar graphs.
- Added bubble graph.
- Added box and whisker graph.
- Added back_round_clip option.
- Added reverse option for radar graphs.
- Added support for negative values on radar graphs.
- Added support for multi-line tooltips.
- Fixed drawing of axes when all values negative.
- Fixed svg node in namespaced XHTML.
- Improved performance.
Version 2.10 (23/10/2012)
------------
- Added cylinder graph.
- Added stacked and grouped 3D bar graphs.
- Added support for gradients in graph element backgrounds.
- Added gradient shaded side to 3D pie graphs.
- Added best fit lines for scatter graphs.
- Added support for drawing associative data on scatter graphs.
- Added show_axis_h and show_axis_v options.
- Added minimum_units_y option.
- Improved axis text label spacing again.
- Better text positioning for radar graphs.
- New default colours.
- Fixed tooltips positioning when embedded in HTML5/XHTML.
- Fixed text being selected when dragging legend.
- Fixed graphs with all values negative not being drawn.
Version 2.9 (29/08/2012)
-----------
- Added bar label options.
- Added axis division and subdivision styles and other options.
- Added diamond, hexagon, octagon, asterisk, star, threestar, fourstar and
eightstar markers.
- Added legend columns option.
- Added guide line opacity, text opacity, font adjust, text align, length and
length in units options.
- Added grid background colour option.
- Added grid line style options.
- Added marker border options.
- Added character encoding option.
- Added gradient stop opacity support.
- Improved subdivision calculations.
- Improved axis text label spacing.
- Removed main clipping path when not using a rounded rectangle background.
- Fixed grid clipping path using non-unique ID.
- Fixed line graphs not reaching right hand side of graph.
- Fixed line graphs drawing vertical line to axis when filling enabled.
- Fixed guide line title line spacing.
- Fixed error caused by empty data sets.
Version 2.8 (27/07/2012)
-----------
- Added stacked line graph.
- Added radar graph and multi-radar graph.
- Added axis_text_space option.
- Added axis_stroke_width option.
- Added force_assoc option.
- Fixed legend dragging without tooltips enabled.
- Fixed display of labels when axes disabled.
- Fixed use of associative array data.
- Added fill to legend display for line graphs.
Version 2.7.1 (02/07/2012)
-------------
- Fixed order of entries in multi-line graphs.
- Fixed script type attribute to match SVG standard.
- Fixed order of legend entries for stacked bar, horizontal bar and
horizontal grouped bar graphs.
- Fixed format of negative decimal numbers.
Version 2.7 (25/05/2012)
----------
- Added guideline options.
- Added axis text rotation.
- Improved HTML embedding.
- Reduced output size of grouped and stacked bar graphs.
Version 2.6 (30/03/2012)
-----------
- Moved all configuration defaults to svggraph.ini.
- Added legend_* options.
- Added label_* options.
- Added graph_title_* options.
Version 2.5.1 (20/02/2012)
-------------
- Fixed bug with 0 values in stacked graphs.
Version 2.5 (09/08/2011)
-----------
- Improved Javascript event handlers.
- Added grid and axis subdivision options.
- Added stroke width option.
- Added more line/scatter marker symbols.
- Added line dash option.
- Added support for per-dataset fill opacity and line width.
- Added pie graph start angle option.
Version 2.4 (07/07/2011)
-----------
- Added multiple scatter graph.
- Added option to use full x,y data for scatter graphs.
- Added support for per-dataset marker options.
- Added support for per-dataset fill_under options.
- Fixed axis options are now available on both axes.
Version 2.3 (26/04/2011)
-----------
- Added horizontal bar graph.
- Added horizontal stacked bar graph.
- Added horizontal grouped bar graph.
- Updated 3D bar graph to support negative values.
- Added fixed axis and division options.
Version 2.2.1 (17/03/2011)
-------------
- Fixed display of graphs with a single data point.
Version 2.2 (21/02/2011)
-----------
- Added background image support.
- Added support for negative numbers on bar/line graphs.
- Updated axis calculations.
- Tooltips are now supported for all graph types.
Version 2.1 (12/01/2011)
-----------
- Added stacked bar graph.
- Added grouped bar graph.
- Added multiple line graph.
- Improved gradient support.
- Made markers mandatory on scatter graph.
Version 2.0 (19/08/2010)
-----------
- Update to PHP 5 OOP syntax.
- Added 3D pie graph.
- Added scatter graph.
- Added tooltips for graph markers.
- Minor improvements.
Version 1.2.1 (11/04/2010)
-------------
- Fixed error shown with E_STRICT.
Version 1.2 (01/05/2009)
-----------
- Added Bar3DGraph graph type.
- Added axis divisions.
Version 1.1 (27/03/2009)
-----------
- Added PieGraph graph type.
- Added title and description options.
- Added namespaced output option.
- Reduced output file size using grouping, symbols.
- Unused gradients are no longer output.
Version 1.0 (16/03/2009)
-----------
- First released version.