UNPKG

214 kBMarkdownView Raw
1# amCharts 4 Changelog
2
3The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
4
5Please note, that this project, while following numbering syntax, it DOES NOT
6adhere to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) rules.
7
8## [4.10.36] - 2023-05-18
9
10### Added
11- New locale: Faroese (fo_FO). Thanks Martin Puge.
12
13### Changed
14- A link object that was created with `linkWith` for `ForceDirectedNode` is pushed to the child node's data items `childLinks` array and also `node.linksWith` list.
15- Removed `xlsx` package (with vulnerability) from dependencies in favor of a bundled hard copy (version 0.19.3) due to their decision not to publish to NPM. ([Issue 4261](https://github.com/amcharts/amcharts4/issues/4261)).
16
17### Fixed
18- In some cases, when a series was removed from a `SerialChart` it was not disposing one of the listeners and could remain in the memory.
19- Grip rollover labels of a vertical `Scrollbar` were showing opposite values.
20
21
22## [4.10.35] - 2023-03-21
23
24### Fixed
25- RTL text was not being truncated correctly.
26- Removed chart producing an error on longpress on touch devices in some cases.
27- In some cases, when a series was removed from a Serial chart, it was not disposing one of the listeners and could remain in the memory.
28
29
30## [4.10.34] - 2023-02-09
31
32### Fixed
33- Fixed an accessibility warning `MapChart`.
34- Bullet positions on a `PieSeries` was sometimes off.
35- Legend with `scrollable = true` was scrolling even if scrollbar was not visible at that moment.
36
37
38## [4.10.33] - 2023-01-02
39
40### Fixed
41- `DateAxis` with data grouping enabled could go into infinite loop of switching between period in some specific data setups.
42
43
44## [4.10.32] - 2022-12-14
45
46### Fixed
47- Image export was broken in some cases since 4.10.31.
48
49
50## [4.10.31] - 2022-12-13
51
52### Fixed
53- When exporting chart with external elements (e.g. external legend), export would leave some stray canvas elements in the DOM.
54- `PieSeries`'s labels were arranged incorrectly in some cases, if `maxWidth` and `wrap` was set on the label template.
55
56
57## [4.10.30] - 2022-11-14
58
59### Changed
60- Upgraded `xlsx` package to version 0.18.5.
61
62### Fixed
63- Stacked series were not being displayed correctly if it was hidden during data update.
64
65
66## [4.10.29] - 2022-10-11
67
68### Changed
69- Panning an `XYChart` with a `CategoryAxis` using mouse wheel will snap to categories so that after the pan full axis cell at the beginning and end of the axis will be visible.
70
71
72## [4.10.28] - 2022-09-19
73
74### Added
75- `"p"` number formatting modifier added. Works the same way as `"%"` except it treats numbers as absolute values and does not multiply them by 100.
76
77### Changed
78- `"%"` number formatting modifier will now consider locale when choosing whether percent sign goes before or after the number. At this moment only `tr_TR` (Turkish) locale is placing percent sign before number.
79
80### Fixed
81- Pressing ENTER while `PieSeries` was focused would not toggle it.
82- `SankeyLink` middle line was not drawn in it was a straight line.
83- Legend's scrollbar was not adjusting thumb size if the div of a chart changed its height.
84
85
86## [4.10.27] - 2022-08-18
87
88### Added
89- Slovak locale/translation.
90
91### Changed
92- All D3 libraries are updated to the latest version.
93
94### Fixed
95- Fixed degrading performance with updating data on data-heavy charts with Responsive enabled.
96- "Week of year" was not being calculated properly for the tunr-of-the-year week in some cases.
97- Vertical `ValueAxis` was not respecting `maxZoomFactor`.
98- Changes to `strokeOpacity` on `PercentSeries` elements were not propagating to legend marker.
99
100
101## [4.10.26] - 2022-07-09
102
103### Fixed
104- Setting `html` on a `Label`, then resetting it, was leaving the old content.
105- Updating HTML label's `fill` was not updating the color of the actual label right away.
106- `SliceGroper` plugin will now handle negative values correctly.
107
108
109## [4.10.25] - 2022-04-19
110
111### Added
112- `baseValue` added to `ForceDirectedSeries` (default: `0`). Used for calculating node radius.
113
114### Fixed
115- `focusFilter` property was not being cloned.
116- Setting `tabindex` to a negative value was not working properly.
117
118
119## [4.10.24] - 2022-02-14
120
121### Changed
122- When auto-wrapping labels, text will no longer break on dots to prevent fractional numbers from wrapping.
123
124### Fixed
125- Multiple square bracket and apostrophe escaping was not working properly.
126
127
128## [4.10.23] - 2021-11-25
129
130### Added
131- New `NumberFormatter` setting: `forceLTR`. If set to `true` will force all numbers to be formatted as LTR, even if RTL is enabled.
132
133### Changed
134- Using minified version of `xlsx` library for XLSX exports.
135
136### Fixed
137- If chart queuing was enabled and chart was disposed quickly before it had a chance to initialize, it was resulting in a critical error.
138- In some cases (after programmatic hover) tapping on a touch device could produce an error in `MapChart`.
139- JSON config: in some cases items in `children` were not being created.
140- Mouse wheel zooming was not working properly in recent versions of Firefox.
141- Fixing security vulnerability ([`CVE-2021-3807`](https://nvd.nist.gov/vuln/detail/CVE-2021-3807)) with `venn.js` dependency.
142- Tweaking hover styles for `ExportMenu` CSS so they do not get invoked unless hovered on chart's container.
143- Reader labels were not being updated on Scrollbar elements when data in chart was updated.
144- `Annotation` plugin will now not go into edit mode after `data` is set.
145- In some cases wrapped and center-aligned axis labels could get a bit offset.
146- In some cases toggling series on and off was not updating related value axis scale on lazy-loaded charts.
147
148
149## [4.10.22] - 2021-08-20
150
151### Changed
152- `package.json` for ES2015 package was properly updated with new version dependencies.
153
154### Fixed
155- Another issue with label text with a lot of in-line formatting not wrapping properly fixed.
156- ForceDirectedTree was not updating label `maxWidth` on zoom.
157- Legend's `position = "absolute"` was not working.
158
159
160## [4.10.21] - 2021-08-08
161
162### Added
163- Export: new setting in CSV options: `addBOM` (default `true`).
164
165### Changed
166- `userClassName` now supports multiple class names separated by space.
167- Exporting CSV will now have add BOM code to exported file.
168- Upgrading to `pdfmake 0.2.2` to work around security issues in older version.
169- Upgrading to `xlsx 0.17.0` to work around security issues in older version.
170
171### Fixed
172- In some cases axis labels could be hidden across multiple data updates.
173- Fixed issue with stacked/clustered negative values.
174- `MapChart` now respects `home*` zoom/position with externally loaded geodata.
175- Sizing/positioning of 3D charts with titles fixed.
176- RangeSelector plugin: fixed zoom range resetting issues.
177- Issue with inverted radial axis fixed.
178- Axis with `snapToSeries` set was snapping to hidden series.
179- Using timezone was causing `DateAxis` tooltips to show incorrect time in some cases.
180- Issue with label text with a lot of in-line formatting not wrapping properly fixed.
181
182
183## [4.10.20] - 2021-06-17
184
185### Fixed
186- In-line formatting of labels was triggering errors on pages with strict CSP rules.
187
188
189## [4.10.19] - 2021-06-08
190
191### Fixed
192- Export: dynamic CSS `<style>` added by `Export` was not applying global `nonce` option.
193- `RangeSelector` plugin: some pre-set period buttons were behaving incorrectly when there was no animated theme enabled.
194- In some cases labels for `ValueAxis` were prone to a floating-point issue.
195- `OverlapBuster` plugin. Was not always working properly without animated theme.
196- Minor tweak to multiple series tooltip arrangements.
197- JSON config: sometimes items pushed to `children` were not being created.
198- Truncation of Legend's labels sometimes were being knocked off by the `XYCursor` activities.
199
200
201## [4.10.18] - 2021-04-21
202
203### Fixed
204- `SliceGrouper` was not working when chart was a child of another `Container`.
205- `SliceGrouper` was not updating properly when `am4core.options.queue = true` was set.
206- `DateAxis` labels were showing zeros instead of proper milliseconds in IE.
207- In some cases hidden link in `SankeyDiagram` could cause rollover tooltip to appear.
208- Stroke of the slices in a `FunnelChart` was not being drawn complete.
209- JSON config: value list of the `List` element was not being properly truncated to supplied lenght.
210- JSON config: event list as array was not working properly.
211- Using `timezone` setting in some timezones could offset Series' bullets.
212- Absolute pixel `width` in `RadarColumn` was being ignored.
213
214
215## [4.10.17] - 2021-03-19
216
217### Added
218- New setting for `Export`: `webFontFilter`. Allows it to set to a regular expression. If set only those external fonts that their URL match regular exporession will be loaded.
219- New setting for `ForceDirectedSeries`: `showOnTick` (default `10`). Render series hidden until Xth tick.
220- New setting for `XYCursor`: `snapOnPan` (default `true`). Indicates whether to "snap" zoom selection to equal periods when panning by cursor ends.
221
222### Fixed
223- Zooming of chart with multiple vertical axes of which one was inverted was incorrect.
224- `minZoomCount` was not being taken into account when zooming with mouse wheel.
225- JSON config: `exporting.dataFields` setting was being ignored.
226- Creating chart before its container is ready, was resulting in extra element in DOM in some cases.
227
228
229## [4.10.16] - 2021-03-03
230
231### Fixed
232- In some rare cases an critical error could happen on hoverable objects on touch-only displays.
233- Zooming and drag-rotating a resized `MapChart` could throw off the map position.
234- It was possible to continue zooming the chart using mouse wheel even when max zoom was reached.
235- Zooming "inverted" horizontal axis was incorrect.
236- Updating data on `SankeyDiagram` in some cases could result in an SO.
237- `TreeMap` was showing incorrectly sized nodes with empty children array.
238- Sometimes wrapping long strings were causing punctuation at the end of the word to wrap into the next line.
239- Dynamically switching `logarithmic` setting for a `ValueAxis` was not updating its scale properly in some cases.
240- `SliceGrouper` plugin was not updating properly when manipulating data and/or series.
241
242
243## [4.10.15] - 2021-02-03
244
245### Fixed
246- Fixed issue with toggling multiple `ColumnSeries3D` (introduced in last version).
247
248
249## [4.10.14] - 2021-02-02
250
251### Added
252- Exporting: all adapters related to XLSX export, will now have `xslx` property holding reference to processor, that needs to be used in order to modify actual workbooks for export.
253
254### Fixed
255- `StepLineSeries` might get "stuck" during zoom/data updates in some cases.
256- `ColumnSeries3D` was not staying hidden across data updates.
257- Columns on `DateAxis` were not being positioned properly when changing `firstDayOfWeek`.
258- RangeSelector plugin: YTD was not working properly when data was being grouped to years.
259- Disposing chart on a click of a custom `ExportMenu` item was resulting in JS errors.
260- In some setups "ghost paper" (invisible div) was influencing document layout.
261- In charts where Series had very small amplitude of values, related `ValueAxis` could get end up in a dead loop.
262- HTML tooltips were not being sized properly in some cases.
263
264
265## [4.10.13] - 2020-12-18
266
267### Added
268- Export: PDF export options now support `scale`, `minWidth`, `minHeight`, `maxWidth`, and `maxHeight` options.
269
270### Changed
271- Setting `ignoreZeroValues = true` on `PieSeries`/`PyramidSeries` will now hide `null`-value slices, too.
272
273### Fixed
274- Inserting a new bullet into an initialized Series will now invalidate it cause the new bullet to appear immediately.
275- Using `timezone` might shift axis label values by one day in some cases.
276- `"i"` input date format was not properly parsing formats with no milliseconds and with timezone offset, e.g. (`"...+10:30"`).
277- Export: `normalizeSVG()` method was producing wrong SVG width/height in output if scale parameter was not being passed in.
278- RangeSelector plugin: "YTD" pre-defined period was not working properly with some data-grouping setups.
279
280
281## [4.10.12] - 2020-11-26
282
283### Changed
284- `DateAxis` setting `timezone` is being deprecated. Please consider setting `timezone` on chart or axis `dateFormatter`. `DateAxis` will now properly place grid in time zones that use non-whole hour fractions, e.g. ("Australia/Adelaide").
285- Accessibility: Roles and tabindexes in `ExportMenu` elements has been altered to better comply with ARIA standards.
286
287### Fixed
288- Scrollbar could act funky when repeatedly clicking on its grips.
289- A minor conflict with Google Charts lib on IE fixed.
290- Improved performance of `ValueAxis` scale calculation.
291- Setting `min` and `max` on a `DateAxis` could result in excessive overzoom and an empty grid in some cases.
292- Overzooming `DateAxis` coul dresult in some extra space shown on it.
293- Legend was dynamically adding items on a Treemap chart when drilling-down.
294- When Legend's labels' `width` were set in percent, they were not being properly sized.
295
296
297## [4.10.11] - 2020-11-13
298
299### Added
300- New setting `reverseGeodata` (default: `false`) on `MapChart` and `MapSeries`. amCharts requires polygon coordinates to be in clockwise order. Some map data have them in counter-clockwise. If your custom map appears garbled, try setting this to `true`.
301- New global option: `am4core.options.pixelPerfectPrecision` (default: `0`). Precision (number of decimal points) to be used when rounding point x/y for elements that have `pixelPerfect = true` set.
302
303### Fixed
304- `XYChartScrollbar` was not inheriting `inputDateFormat` from the chart properly.
305- Clicking on a chart on mobile devices could sometimes make them document scroll a bit.
306- Accessibility: pressing ENTER while there is a focused element with `showTooltipOn = "hit"` will not display its tooltip.
307- RangeSelector (plugin) was not properly removing its elements after `dispose()` it will now auto-dispose when related axis is disposed.
308- In some cases a console error could be displayed when using `XYCursor` over chart when data was being updated.
309- Very long labels with `wrap = true` may have been wrapping incorrectly in some cases.
310- JSON config: `rgb(...)` and `rgba(...)` syntax was not recongnised in `ColorSet`'s `baseColor`.
311
312
313## [4.10.10] - 2020-11-03
314
315### Changed
316- License check for `MapChart` was not working. If you are using commercial `MapChart`, make sure you use `addLicense()` for both Charts and Maps products.
317
318### Fixed
319- Better dispose check for delayed `"out"` event.
320- Applying accessibility to some labels with only numeric information was resulting in error.
321- Chart could result in an SO in some rare cases.
322- Using `strictMinMax` with `includeRangesInMinMax` sometimes could caulse wrong zooms.
323- In some cases Legend's item labels were being truncated when cahrt container was shrinking, but were not being restored to their full width once it was enlarged back.
324
325
326## [4.10.9] - 2020-10-23
327
328### Changed
329- Export: API functions like `getCSV`, `getSVG`, `getJSON`, `getExcel` will not error out if no opeionts or format identifier is passed in.
330
331### Fixed
332- Better invalidation of charts with `am4core.options.queue = true` enabled.
333- A slice in `PieSeries` remained enlarged (as hovered) after subsequent taps on it on a touch device.
334- In some rare cases, on mobile devices a JS error could be invoked when disposing series/axes.
335- Vertical `ValueAxis` was not auto-zooming in some cases.
336
337
338## [4.10.8] - 2020-10-19
339
340### Added
341- New `Tooltip` property `ignoreBounds` (default `false`). If set to `true`, will not try to contain tooltips within the boundaries of the chart.
342
343### Fixed
344- Export: Invoking export's `getSVG()` method without passing in options as a second parameter was resulting in error.
345- Series' actual value was not being properly updated in all cases when used with `gropuDataItem` adapter.
346- Series with with extremely small value range could result in an SO.
347- Resetting data to an empty data set on an `XYSeries` witth bullets and a data grouping enabled, could result in bullets being left on the screen.
348
349
350## [4.10.7] - 2020-10-10
351
352### Fixed
353- `numberFormatter` inheritance was broken for `XYSeries` elements like bullets since last version.
354- Chart with a `CategoryAxis` and `XYCursor` was erroring when number-based categories were used in data.
355
356
357## [4.10.6] - 2020-10-09
358
359### Added
360- SVG export options now support `scale`, `minWidth`, `minHeight`, `maxWidth`, and `maxHeight`.
361- New `ExportMenu` property: `element` (a reference to menu's top element).
362
363### Fixed
364- `readerTitle` and `readerDescription` were not being properly populated with data on Map objects.
365- Setting `includeRangesInMinMax = true` on `ValueAxis` in some cases was messing up the chart.
366- Export: Printing via iframe in IE11 was distorting the chart aspect ratio.
367- Export: Exporting in IE11 was leaving behind a stray `<canvas>` element afterwards.
368- Auto-zoom on `ValueAxis` was not working properly with multiple series with incomplete data.
369
370
371## [4.10.5] - 2020-10-02
372
373### Changed
374- Inline curly-bracket data placeholders now support dot-separated data context names as literal strings, e.g. `"my.custom.property"`.
375- A bunch of dependencies were updated to latest versions.
376
377### Fixed
378- Toggling `rtl` value on an existing `Label` was (still) not working properly.
379- `showSystemTooltip` was being ignored since last version (4.10.4).
380- `chart.cursor.snapToSeries` was not causing cursor to snap in wrong place if `groupData` was enabled.
381- Bullet tooltip was being hidden even if it had to stay when cursor moved out of the plot area.
382
383
384## [4.10.4] - 2020-09-22
385
386### Changed
387- Accessibility: `ExportMenu` top item has now role `menubar` rather than `menu`.
388- Accessibility: `ExportMenu` will now set `aria-expanded` attributes for selected menu items/branches.
389
390### Fixed
391- Enabling `groupData` was causing some series not to appear in some cases (since 4.10.3).
392- Toggling a legend item was adding a hidden element outside chart container area, which was sometimes causing scrollbars to appear on the web page.
393- Toggling `rtl` value on an existing `Label` was not working properly.
394- Accessibility: setting `rederTitle` or `itemReaderTitle` was not setting `aria-label` but rather adding `<desc>` tag and `aria-describedby` attirubute. It now will use `aria-label` for `readerTitle` and `<desc>` for `readerDescription`.
395- Accessibility: there was no way to override hard-coded `role` of the slices or columns in series.
396- Accessibility: navigating `ExportMenu` with arrow keys will not scroll web page anymore.
397
398
399## [4.10.3] - 2020-09-19
400
401### Added
402- RangeSelector plugin: a new event `periodselected` added to `DateAxisRangeSelector`.
403- `DateFormatter` now supports quarter format (code: `"q"`).
404
405### Changed
406- More prompt translations to Indonesian locale (`id_ID`).
407
408### Fixed
409- JSON config: Some axis' `title` property was being overwritten if it wasn't last option in the properties list.
410- SliceGrouper plugin was sometimes not functioning properly when used with `options.queue = true`.
411- Scrollable legend was not resetting back to top if its height changed.
412- `TreeMap` with `binaryTree` algorithm was producing a JS error if no initial data was set on chart.
413- If data grouping on `DateAxis` was enabled and there were more than one series in the chart, the second and other series were rendered with data ungrouped in the background before rendering them correctly and thiswas causing performance issues.
414- Vertical `CurvedColumnSeries` with non-inversed `CategoryAxi`s were not positioned properly.
415
416
417## [4.10.2] - 2020-09-08
418
419### Fixed
420- Some `SankeyDiagram` charts were broken after last release.
421- `4.10.0` caused some bullet adapters to kick in earlier which in turn was resulting in critical errors if those adapters relied on `dataItem` to be present without checking.
422
423
424## [4.10.1] - 2020-09-07
425
426### Added
427- New `DateAxis` property: `timezone`. Allows setting timezone to recalculate data in, e.g. `"Australia/Sydney"`. Make sure not to set this on both axis and date formatter.
428- New `DateFormatter` property: `timezone`. Allows setting timezone to recalculate date objects to before applying the format, e.g. `"Australia/Sydney"`.
429- New global option: `am4core.options.disableHoverOnTransform` (`"never"` (default), `"touch"`, `always`)). Allows disabling all hover activity when some element is being dragged or resized. [More info](https://www.amcharts.com/docs/v4/concepts/touch/#Hover_functionality).
430
431### Changed
432- Now `SankeyLink` that points "backwards" will be applied `"backwards"` state (if created) so you can style it differently than regular links.
433
434### Fixed
435- Accessibility: data placeholder population was not working on bullets if Animated theme was not enabled.
436- Tapping on a chart with `Cursor` was triggering an on-screen keyboard on some mobiles devices.
437- Some TypeScript warnings were fixed.
438- A chart with `DateAxis` and `groupData = true` could result a JS error if a series had bullets and a lots of data points.
439- In a chart with `DateAxis` and `groupData = true`, if a series was hidden when zoomed-in, then zoomed-out, and then unhidden, the related `ValueAxis` was not updating it's min/max to available value range.
440- In some cases a heat rule could result in infinity value which would lead to drawing errors.
441- Errors when cloning a `RadarChart` from a template fixed.
442- `SankeyDiagram` used to produce stack owerflow error if data contained backward links. Now it will correctly draw a link.
443
444
445## [4.10.0] - 2020-09-01
446
447### Added
448- New `LineSeries` property: `smoothing` (`"bezier"` (default), `"monotoneX"`, and `"monotoneY"`) - indicates algorithm to use for smoothing the lines. Monotone algos are better suited for irregularly-spaced data. [More info](https://www.amcharts.com/docs/v4/chart-types/xy-chart/#Alternate_smoothing_algorithm).
449- `ForcedDirectedTree`: new property `zoomable` (default: `false`). If set to `true`, the chart will be zoomable/draggable using mouse, touch, or API. [More information](https://www.amcharts.com/docs/v4/chart-types/force-directed/#Zooming).
450- `ForcedDirectedTree`: zoom related properties added. `mouseWheelBehavior` (`"zoom"`, `"none"`) - controls what happens when mouse wheel is used over chart; `zoomStep` (default: `2`) - step to increase zoom level my each zoom in; `zoomOutButton` - an instance of button which is shown when chart is zoomed in.
451- `ForcedDirectedTree`: new zoom-related methods: `zoomToPoint(point, level, center)` and `zoomToDataItem(dataItem, level, center)`;
452- New global function: `am4core.createDeferred(callback, scope, ...parameters)`. Can be used to create multiple charts in a truly safe daisy-chain (next chart starts to be instantiated only when previous triggers a `ready` event). Returns a `Promise` with chart instance. [More information](https://www.amcharts.com/docs/v4/concepts/performance/#Deferred_daisy_chained_instantiation);
453- New global option: `am4core.options.deferredDelay` (default `100`). Specifies time-gap in milliseconds between deferred chart instantiations.
454
455### Changed
456- Added date ordinal translations for Chinese locales.
457
458### Fixed
459- Accessibility: `readerTitle` was not being properly populated with data on `Label`.
460- Accessibility: `readerDescription` was not being populated with data.
461- Now works with Angular Universal SSR. Please refer to our [Angular doc](https://www.amcharts.com/docs/v4/getting-started/integrations/using-angular2/) for instructions on how to structure your app for SSR to work properly.
462- When `MapChart` was panned with inertia and a polygon with `zoomToObject()` hit event was clicked when the map was still moving, the map was zooming into a wrong position.
463
464
465## [4.9.37] - 2020-08-21
466
467### Fixed
468- Colors for markers in Legend with `useDefaultMarkers = true` were broken since last release.
469
470
471## [4.9.36] - 2020-08-20
472
473### Added
474- New adapter on `XYSeries`: `groupDataitem`. When data grouping occurs, each aggregate data item will be passed through this adapter, where you can modify its aggregate value. [More info](https://www.amcharts.com/docs/v4/tutorials/using-custom-functions-for-data-item-grouping/).
475- Two new `MapPolygonSeries` properties: `sortPolygonsBy` ( `"area"` (default), `"name"`, `"longitude"`, `"latitude"`, `"id"`, and `"none"`) and `sortPolygonsReversed` (default `false`).
476
477### Fixed
478- Export: `fontSize` option was being ignored when exporting data in PDF.
479- Better format object type checks in `DateFormatter` and `NumberFormatter`.
480- Older (non-Chromium) EDGE browser was not showing patterns in the legend markers.
481- If a stacked series was hidden with data item grouping enabled and then axis zoomed in or zoomed out so that group perdiod changes, series were stacked on the wrong position.
482- `CircularAxis` line was flickering while start/end angle was animating.
483
484
485## [4.9.35] - 2020-08-12
486
487### Added
488- New adapter on `XYSeries`: `groupValue`. It's now possible to apply custom aggregate value calculation functions for grouped data items. [More info](https://www.amcharts.com/docs/v4/tutorials/using-custom-functions-for-data-item-grouping/).
489- New adapter on `Cursor`: `cursorPoint`. Use it to custom-position chart cursor using your own logic.
490
491### Changed
492- Accessibility: Now if ENTER is pressed when object with an enabled `"hit"` event is focused, that event will be triggered automatically.
493- Clicking anywhere on the plot area with `XYCursor` will now trigger blur on any focused element on the page (consistent to clicking anywhere else on the document).
494
495### Fixed
496- RangeSelector plugin was not properly inheriting chart's locale.
497- `"x"` (timestamp) in `inputDateFormat` was not working properly.
498- If all values of `SankeyDiagram` were `0` (zero), nodes were not being arranged and their rectangles were not being displayed.
499- First `CategoryAxis` label was not visible if `minGridDistance` was set to `0` (zero).
500- Old series bullets of an `XYSeries` remained visible when data was updated and data grouping was enabled on related `DateAxis`.
501- `Utils.random()` function was not returning value in proper from/to range.
502- Stacking now works only between series of the same type. Previously a `LineSeries` between two stacked `ColumnSeries` could mess up stacking for the latter.
503- Zooming in on a part of `LineSeries` which had `strokeDashArray` enabled via `propertyFields` was making the whole line dashed.
504- On a chart with `XYCursor` hovering on category with a null value for some series, used to display a tooltip for a different category in some cases.
505
506
507## [4.9.34] - 2020-07-31
508
509### Added
510- New bullet `ShapeBullet` in `Bullets` plugin. Please refer to [this documentation article](https://www.amcharts.com/docs/v4/tutorials/plugin-bullets/) for more info.
511- `treatZeroAs` added to `ValueAxis`. Use it to work around zero-value restriction on a logarithmic scale.
512- `stackToNegative` (default: `true`) added to `XYSeries`. Determines whether negative values in a stack will stack in relation to base (zero) line (`true`; default) or in relation to the previous value in the stack (`false`).
513
514### Changed
515- [xlsx](https://www.npmjs.com/package/xlsx) dependency was updated from `0.15.4` to `0.16.4`.
516- Tooltip snapping on `DateAxis` now takes Series' location into account.
517
518### Fixed
519- Regression plugin: `reorder` option was not working properly.
520- `snapToSeries` was not working properly if there was a hidden Series with exactly the same value as the other visible Series.
521- `TreeMap` and `ForceDirectedTree` with a single data item and no children were not working properly with chart legend.
522- Horizontal (X) Axis tooltip in a very small document was sometimes positioned with an offset.
523- `zoomToRectangle()` method of `MapChart` with `deltaLongitude` was not working properly if a rectangle crossed the 180 meridian.
524
525
526## [4.9.33] - 2020-07-23
527
528### Fixed
529- If an item from a chart with `CategoryAxis` was removed and then a new item with the same category name was added, chart was not rendering the new item.
530- A chart with multiple series starting/ending not at the same position could result in wrong zoom on `ValueAxis`
531- Last bullet/column from `XYSeries` could disappear if end date was not exact as last data items date.
532- `LineSeries` could skip a point in case distance between data points was very small, resulting in incorrect line series.
533
534
535## [4.9.32] - 2020-07-23
536
537- Nothing here. Version number snafu.
538
539
540## [4.9.31] - 2020-07-21
541
542### Changed
543- Global adapters are being deprecated due to performance reasons. They will still work on some properties, but may be turned off at some future version. If you are using `am4core.globalAdapter`, please consider refactoring your code in some other way.
544- If `groupInterval` is manually set, `DateAxis` now prepares all intervals. Normally, the chart does not prepare data sets for time intervals longer than the span of dates in the data. This causes problem in case user sets these intervals manually using `groupInterval`. Note, the groupInterval must be set initially, before data parsing in order data to be grouped into all groupIntervals.
545
546### Fixed
547- "Year of week" (`YYYY`) was not being calculated correctly by `DateFormatter`.
548- Regression plugin was not working correctly in an all-`ValueAxis` scenarios.
549- `ColumnSeries` were not working with `dropFromPreviousState`.
550- If data was changed on a chart which was zoomed and there were less data items in the new data than there was before, a JS error was triggered.
551- Sometimes a chart with `XYChartScrollbar` with series in it could produce a JS error if series has its `fillOpacity > 0`.
552- Series in an `XYChartScrollbar` was not being shown if `options.onlyShowOnViewport = true`.
553- `zoomToRectangle()` call was resulting in an error if called after the `MapChart` was rotated.
554- `CurvedColumnSeries` columns were not being filled with proper color (black was being used instead).
555- A chart with multiple series starting/ending not at the same position could result in wrong zoom on `ValueAxis`.
556- `DateAxis` with millisecond `baseInterval` sometimes could show one millisecond less than actual data point in its tooltip.
557
558
559## [4.9.30] - 2020-07-10
560
561### Added
562- `am4core.options.suppressWarnings` global option added (default: `false`). If set to `true`, the charts won't output any warnings into console (e.g. "Chart was not disposed").
563
564### Fixed
565- Drill-down map with `geodataSource` problem fixed (since last release only).
566- Issues with cursor/tooltip and other element positioning fixed, when chart was being initialized outside of DOM (no container on init).
567
568
569## [4.9.29] - 2020-07-09
570
571### Changed
572- Export: data exported as HTML will now have `<thead>` and `<tbody>` tags.
573- `XYChart.getClosest()` method is now public.
574- Accessibility: Now pressing ENTER while there's a `MapChart` element focused (using TAB key) will invoke its `hit` event, if set.
575
576### Fixed
577- JSON: heat rules referring to series' bullets were not working, e.g. `target: "bullet[0].circle"`.
578- IE: More fixes to polyfill overriding.
579- `ColorSet` method `next()` would fail if `currentStep` was bigger than `minColors`, affecting `SliceGrouper` plugin setups with a lot of slices in particular.
580- On `MapChart` settings `minZoomLevel` and `maxZoomLevel` were being ignored when pinch-zooming.
581- Syncing of axes improved, especially when series of one axis were hidden/shown.
582- If a `MapSeries` had its geodata loaded via `geodataSource`, the map used to disappear after div size changed.
583- Legend had a `maxWidth` set to `200` and this could result labels to be truncated even if there was enough space for them to fit in.
584- Ticks/grid could disappear if `ValueAxis` had `min`/`max` set and data of a chart changed.
585
586
587## [4.9.28] - 2020-06-29
588
589### Added
590- New adapter `xlsxWorkbook` in `Export`. Will allow decorating a Workbook object before it is exported.
591- `chart.exporting` text-based API functions (`getSVG()`, `getCSV()`, `getJSON()`, `getHTML()`) now have third parameter (boolean). If set to `false` they will return a raw output, rather than data:uri.
592- `zoomable` property added to all axes (default: `true`). Setting it to `false` will make axis not react to zoom events from scrollbar/cursor.
593
594### Changed
595- Removed `focusable` from map chart background series.
596- Polyfills in `.js` file will now only load on-demand, making it with some frameworks that override default objects.
597
598### Fixed
599- Regression plugin: the regression line was not being drawn correctly on a chart with horizontal `ValueAxis`.
600- Export: images exported on zoomed-out pages sometimes were showing visual artifacts.
601- If a chart cursor was visible (because of soft or hard `triggerMove()` calls) but the real mouse was out of the plot area, the cursor used to react to clicks even though it shouldn't have.
602- `ForceDirectedNode`'s `fill` and `stroke` adapters were not working properly if nodes were initially collapsed.
603- `Sprite.hitTest()` method was not working properly with `nonScaling = true`.
604- If a `MapChart` had geodata loaded via `geodataSource.url`, the map used to disappear after div size changed.
605- If a legend of a `MapChart` was disposed, a JS error might happen in some cases.
606
607
608## [4.9.27] - 2020-06-18
609
610### Added
611- `ExportMenu` item definition can now have `title` property. If set, it will be added to item's `title` property, which should show a system tooltip on hover.
612
613### Changed
614- Hex color parser now supports RGBA format which includes alpha value, e.g. `"#FF000080"` will produce a 50% transparent red.
615
616### Fixed
617- Fixed performance issue with a logarithmic `ValueAxis` with `strictMinMax` set to `true`.
618- Calculated value of `sum` in the selection of an `XYChart` could include one extra data item, not visible in the selection.
619- Pie slices with 0 values were sorted incorrectly in FF.
620
621
622## [4.9.26] - 2020-06-07
623
624### Fixed
625- Series with `showOnInit = false` were not shown on a chart initially (since last release only).
626
627
628## [4.9.25] - 2020-06-06
629
630### Added
631- Global option `am4core.options.autoDispose` added (default `false`). If set to `true`, when chart is being created in a container that has already existing chart, instead of "Chart was not disposed" warning in console, the chart being overwritten will be disposed.
632- New plugin: [Range Selector](https://www.amcharts.com/docs/v4/tutorials/plugin-range-selector/). Collection of controls for adding alternative zoom controls for axes.
633
634### Changed
635- Disabled callbacks will now carry over to a clone when cloning an Adapter.
636
637### Fixed
638- Export: Sometimes background was improperly clipped when upscaling exported image.
639- Export: If chart's `data` was updated open `ExportMenu` was forcibly being closed.
640- `"Z"` and `"ZZ"` indicators in `inputDateFormat` were being ignored.
641- If series had `sequencedInterpolation = true` set and it was hidden via legend, its legend item lost disabled color when chart was resized.
642- `bullet.locationX` and `bullet.locationY` was being ignored on a `ColumnSeries` with `CategoryAxis`.
643- If a chart's Legend was disposed, it could result in JS errors if chart had an `XYCursor` enabled.
644
645
646## [4.9.24] - 2020-05-29
647
648### Added
649- Export: New image export options: `minWidth`, `minHeight`, `maxWidth`, and `maxHeight`. Control minimum and maximum dimensions of the target image.
650- Chart can now be initialized without target container (`am4core.create(undefined, ...)`) then, when needed placed into container using `chart.moveHtmlContainer(target)` (where `target` can either be id or a reference of DOM element).
651- `groupInterval` property added to `DateAxis`. You can use it to force certain grouping internal when `groupData = true` instead of one chosen dynamically.
652
653### Changed
654- `stroke`/`fill` settings will now accept values as RGB objects (e.g.: `{ r: 255, g: 0, b: 0 }`).
655- Export: `scale` now scales source SVG before converting to image, instead of resampling target image.
656- Chart will no longer error out if target container by supplied id is not available at the moment of chart's instantiation. It will still error if such container is not available when DOM is ready. This allows placing chart code before actual chart target markup.
657- If Axis has `syncWithAxis = true` set, it is excluded from common zoom range for better syncing.
658
659### Fixed
660- Sometimes responsive rules were not being applied on chart load in Angular apps.
661- `XYCursor` setting `snapToSeries` now uses better precision in placing cursor lines/axis tooltips.
662
663
664## [4.9.23] - 2020-05-19
665
666### Added
667- `removedfromqueue` event added to `Sprite`. It is invoked when `am4core.options.queue = true` or `am4core.options.onlyShowOnViewport = true` and the Sprite (chart) is removed from queue (appears on the screen).
668- `groupperiodchanged` event added to `DateAxis`. It is invoked when data grouping is on and grouping period is changed.
669
670### Fixed
671- JSON: Array value in `snapToSeries` on `XYCursor` was resulting in error.
672- `RadarChart` was resulting in an error if used as a column or bullet template in some other chart.
673- `AxisRendererRadial.innerRadius` was ignored if set in percent and `RadarChart.innerRadius` was not set.
674- Wide charts were being cut off in the middle when printing.
675
676
677## [4.9.22] - 2020-05-14
678
679### Changed
680- Export: Now using forked version of `canvg` until underlying issues are fixed in source library.
681
682### Fixed
683- `queue` and `onlyShowOnViewport` were not working properly on regular `Container` instances.
684- Export: Garbled IE image exports fixed.
685- Some tooltips were reappearing on `MapChart` after their `showToolipOn` was reset back to `"hover"` from `"always"`.
686
687
688## [4.9.21] - 2020-05-13
689
690### Fixed
691- Latest version of `canvg` was causing issues in some Angular setups. Downgraded to `3.0.0`.
692- The legend marker for `LineSeries` with circle bullet was not properly centered.
693
694
695## [4.9.20] - 2020-05-11
696
697### Changed
698- `hit` and `up` events on nested objects will now respect correct bubbling up order.
699- If `rtl` is not set directly on the `Label`, it will now take `rtl` value not from its parent but from `baseSprite` (performance enhancement).
700- `<desc>` element with amCharts attribution removed from generated SVG.
701
702### Fixed
703- Export: PDF export will now fallback to regular fonts if bold fonts don't exist.
704- Export: Advanced PDF exports with extra content were broken since last release.
705- Export: Image export was essentially broken in IEs.
706- `options.nonce` was not working properly on EDGE.
707- Event `selectedned` was not dispatched by `Cursor` if released outside the chart div and behavior was set to `select*`.
708- If all series were removed and then added quickly to the chart with a legend it could result a JS error.
709- Setting `data` directly on a series not right after it was created could result `series.data` array to be shown as empty.
710- It was impossible to set `SwitchButton` as active initially.
711- Fixed snapping cursor to series when data was missing: if series had gaps in data and `cursor.snapToSeries` was set, the snapping was not working properly.
712- When adding data to `XYSeries` which was `XYCharScrollbar`'s series, the raw data was incorrectly modified.
713
714
715## [4.9.19] - 2020-04-30
716
717### Added
718- Export: Two new PDF export options added: `font` and `extraFonts` which enable specifying non-default font to use when exporting PDF. [More info](https://www.amcharts.com/docs/v4/concepts/exporting/#PDF_and_non_Latin_languages).
719
720### Changed
721- Third party resize sensor replaced with a home-brewed, which is faster and more reliable.
722- `svgContainer.resizeSensor` replaced with a dummy object. Make sure you remove all references to it in your code. Calling it's `reset()` method will now generate a warning in console.
723
724### Fixed
725- Inline text formatting blocks now accept quote-enclosed values, e.g. `[font-family: 'Segoe UI']`.
726- Fills for columns in `RadarColumnSeries` were black (since last release).
727- With Chrome 81 disposing the chart in with DevTools open was very slow.
728- Performance optimizations when showing/hiding series with a lot of data.
729- Tooltip was flickering at 0,0 position if animated theme was not enabled.
730
731
732## [4.9.18] - 2020-04-28
733
734### Added
735- Heatmaps can now be logarithmic (set `logarithmic = true` in the heat rule config).
736
737### Fixed
738- Preloader label was misaligned when RTL was enabled.
739- Double "hit" event invocation on `MapPolygon` fixed.
740- Regression plugin: "processed" event was triggered twice on initial chart load.
741- SliceGrouper plugin: if slice templats had any "hit" events set, `clickBehavior = "break"` was not working.
742- IE was not displaying series in `XYChartScrollbar`. On IE now gray fill/stroke is used instead of desaturate filter.
743- IE was not displaying series with filters. Remnoved filters if IE.
744- Fixed issue with zero-value nodes drill-down `SankeyDiagram`.
745- When animations were disabled through options, showing `XYSeries` and `FunnelSeries` after it was hidden was not working.
746- It was not possible to add `MapImages` to `MapImageSeries` directly from the GeoJSON geodata.
747- `maxWidth` set on Legend's label was being ignored.
748- Layout was not being redrawn when `minGridDistance` was set after chart initialization.
749- If `sprite.showTooltipOn = "hit"` and no animated theme was used, tooltip used to flicker at old position before shown in the correct one.
750- EDGE was not showing `ColumnSeries` gradients if gradient was set on series, not on directly on column template.
751
752
753## [4.9.17] - 2020-04-20
754
755### Added
756- Global option `am4core.options.nonce` added. If set, amCharts will use this as a nonce-parameter for all dynamically created stylesheets, so it can be addressed in `Content-Security-Policy` headers.
757- New `Popup` property: `dynamicResize`. If set to `true` (default) and contents contains unloaded images it will resize itself when those finish loading.
758- `gradientUnits` added to `LinearGradient`. If you're setting gradient on a perfectly straight line, set it to `userSpaceOnUse`.
759- `filterUnits` added to `Filter`. If you're setting gradient on a perfectly straight line, set it to `userSpaceOnUse`.
760- `startLocation` and `endLocation` added to `CategoryAxisBreak`. Can use to indicate where exactly within category break should start and end.
761
762### Changed
763- `Popup` now will size itself to accommodate images inside it as they are being loaded. To disable, set `Popup`'s `dynamicResize = false`. Also make sure you enable `maxWidth`/`maxHeight` in your CSS to avoid unreasonably large popups for unsized images.
764
765### Fixed
766- Week number in date format (`"ww"`) was not accounting for daylight saving.
767- Pressing ENTER on a focused Legend item will no longer toggle related series if legend's item containers are sett to be not togglable.
768- Exporting to SVG no longer breaks if chart contains `foreignObject` elements with SVG's in them.
769- Line smoothing (`tensionX` / `tensionY`) now drops out duplicate points to avoid weird loops on overlapping data items.
770- Chart was zooming incorrectly, when data was added directly to stacked series and one of the series was hidden.
771- Some performance issues with `XYCursor` and a lot of series fixed.
772- `LinearGradient` fill was not working on `LineSeries` under EDGE.
773
774
775## [4.9.16] - 2020-04-14
776
777### Fixed
778- Fixed error when compiling Angular app (since 4.9.14).
779
780
781## [4.9.15] - 2020-04-13
782
783### Fixed
784- Straightening of `RadarChart` was not working properly after last update.
785
786
787## [4.9.14] - 2020-04-13
788
789### Added
790- Global options setting added `am4core.options.animationsEnabled` (default `true`). Set it to `false` to **disable all animations on all charts**. Can be used to toggle animations on and off dynamically.
791- `SliceGrouper` plugin: new setting `limit` added. If set to a number, will ignore `threshold` but will show only first X slices and will group the rest.
792- New PDF format option for `Export`: `align`. Available options: `"left"` (default), `"center"`, and `"right"`.
793- New `ValueAxis` property: `adjustLabelPrecision` (default: `true`). `true` means that **all** labels on `ValueAxis` (except zero) will maintain the same number of decimals, e.g. `1.0`, `1.5`, `2.0` versus `1`, `1.5`, `2`. Enabling it will ignore number of active decimals set via `numberFormat`.
794- `DateFormatter` is now exposing list of various named time units: `months`, `monthsShort`, `weekdays`, and `weekdaysShort`. You can now resolve numeric value to an English name (e.g. `chart.dateFormatter.weekdaysShort[2]`) or to your active locale (`chart.dateFormatter.language.translate(chart.dateFormatter.weekdaysShort[1])`).
795
796### Changed
797- New property `adjustLabelPrecision` hsa a default of `true`, which means that all labels will now have same number of decimals on `ValueAxis`. Set `adjustLabelPrecision = false`, to disable and revert behavior to how it was before this update (`1`, `1.5`, `2`).
798- `am4core.options.viewportTarget` now accepts array of references if you have multiple scrollable containers holding charts and have `onlyShowOnViewport` enabled.
799- Default `DateAxis.periodChangeDateFormats` for `"hour"` changed from `"_date_hour"` to `"_date_day"` so that the format would differ for midnight (hour 00:00).
800
801### Fixed
802- Parsing short month names (`"MMM"`) from string-based dates was failing on May.
803- When exporting chart to PDF, on narrow charts, sometimes the whole chart would go to the next page.
804- Having `null` values in data was causing `maxTooltipDistance == -1` to show multiple tooltips instead of one.
805- It was impossible to have individual `innerRadius` for `AxisRendererRadial` and `AxisRendererCircular` - the `RadarChart`'s `innerRadius` was overriding them.
806- Removing axis ranges from an axis could result in a JS error.
807- In some cases, when `DateAxis` properties `startLocation` and `endLocation` were not defaults (0 and 1), the chart might flicker from one grouped data period to another continously. It was only happening with some particular `groupCount` values and data item counts, though.
808
809
810## [4.9.13] - 2020-04-05
811
812### Added
813- Global options setting added `am4core.options.suppressErrors` (default `false`). Set it to `true` to disable error-invoked modal display.
814
815### Fixed
816- Setting `locale` as string (e.g. `locale: "fr_FR"`) in JSON config was not working.
817- `ValueAxis.min` and `ValueAxis.max` now accept `undefined`.
818- `NumberFormatter` and `DateFormatter` will not longer critically fail if invalid `Intl` data is passed to them. Instead they will return `"Invalid"` string.
819- Responsive: Sometimes objects were being revealed after coming back from responsive mode when thet shouldn't.
820- `locations` setting of the `SeriesDataItem` were not being copied to grouped data items (when `DateAxis.groupData = true`).
821- Shadow DOM: Made some changes to eliminate errors in IE11.
822- Shadow DOM: `ExportMenu` and `Popup`/`Modal` CSS was not being properly applied causing those elements to lose styling and positioning.
823
824
825## [4.9.12] - 2020-03-26
826
827### Added
828- New mouse cursor style added: `am4core.MouseCursorStyle.text`.
829- Export `formatOptions` now accessible via public property, e.g. `chart.exporting.formatOptions.getKey("csv").disabled = true`.
830
831### Changed
832- Using date format `"i"` to parse ISO dates now supports unlimited number of milliseconds. It was failing before if more than three digits were used for milliseconds.
833
834### Fixed
835- If `Label` had its interactions disabled then re-enabled, its `selectable` property was being ignored.
836- `Modal` with `closable = false` could still be closed via curtain click.
837- `openModal()` ignored title (second parameter).
838- Pushing child elements in `Label` which has `textValign` set was resulting in error.
839- `cursor.snapToSeries` was not working properly with `CategoryAxis`.
840- Firefox was not measuring labels properly if a chart was lazy-loaded using `onlyShowOnViewport`.
841
842
843## [4.9.11] - 2020-03-24
844
845### Added
846- Export: Added `disabled` property to all format options so you can disable each particular export format easily, e.g.: `chart.exporting.getFormatOptions("csv").disabled = true`.
847- New property on all `Sprite` elements: `userClassName`. If set, will also set element's `class` accordingly. Works directly, and via `propertyFields`.
848
849### Fixed
850- Fixed error with Angular Server Side Rendering (Angular Universal).
851- Accessibility: minor role issue fixed for items in `ExportMenu`.
852- It was impossible to change heat rule's min and max values after the rule was added.
853- Changing category of axisRange after it was alrady added to axis was not working.
854
855
856## [4.9.10] - 2020-03-19
857
858## Added
859- `SwitchButton` class added.
860- `width` field and adapter added to `ColumnSeriesDataItem`. Allows having variable column width via data binding.
861
862
863## [4.9.9] - 2020-03-16
864
865### Fixed
866- Fixed again: if chart had stacked axes and series with bullets, the bullets were not masked properly. Now you can set `series.maskBullets = true` to solve this.
867- `TimeLine` series bullets were not updating position when Y axis was zoomed.
868- Tooltips of `TimeLine`/`RadarChart` series were hidden on some parts of the chart (sice 4.9.7).
869
870
871## [4.9.8] - 2020-03-14
872
873### Fixed
874- Bullets on `RadarChart` were being masked incorrectly (since 4.9.7).
875- Background on `TimeLine` axis could be filled incorrectly in some cases (since 4.9.7).
876- `TimeLine` could error out in some cases (since 4.9.7).
877
878
879## [4.9.7] - 2020-03-14
880
881### Added
882- Export has now additional setting `dataFieldsOrder`. It's an array. Push field names into it and exported data will try to maintain field order like this.
883- A read-only property `tooltipDate` added to `DateAxis`. Will holde `Date` object of the last shown axis tooltip.
884
885### Fixed
886- In charts with series loading their own external data with responsive features enabled, they were starting as pre-hidden.
887- Axes in `XYChartScrollbar` (both value and date) were not reseting min/max if series of the chart changed. This could result scrollbar's series incorrectly displayed.
888- `PyramidSeries` and `FunnelSeries` with very small values were not animating properly on chart init.
889- `PyramidSeries` and `FunnelSeries` with data items with `value = 0` could show small rectangle at top/left corner.
890- `PyramidSeries` with data items with `value = 0` was not rendered properly.
891- Tooltip on a horizontal axis was "shaking" when cursor was very near plot area.
892- Performance improved of adding series to an already build `XYChart`.
893- Map was not drawn with certain initial `deltaLongitude` values (e.g. 30, 60, etc).
894- Removing series with a lot of data, `DateAxis` with grouping enabled, and zoomed-in chart could cause a stack overflow.
895- Removing series could cause error (if removed while initial animation was still playing out).
896- Sometimes, if a series was added after chart was inited and data grouping of `DateAxis` was enabled, the `ValueAxis` was not fully zoomed out.
897- A newly added series after the chart was inited was not showing initial animation.
898- Violating logarithmic axis scale no longer results in critical / chart-stopping error. The modal can be closed and chart recovered.
899- If chart had stacked axes and series with bullets, the bullets were not masked properly. Now you can set `series.maskBullets = true` to solve this.
900- Series tooltip is no longer shown if data item is outside plot area.
901- Perfectly straight line series in `XYChartScrollbar` were not displayed.
902
903
904## [4.9.6] - 2020-03-05
905
906### Changed
907- Setting `maxTooltipDistance` to `-1` on `XYCursor` will force only one tooltip to always be displayed, even if there are multiple data items in exact same spot.
908
909### Fixed
910- Responsive: changing data on a chart with active responsive rules was causing for those rules not to be re-applied when chart was updated.
911- If Legend item was clicked or tapped, subsequently pressing ENTER anywhere on the page was toggling it.
912- Series of `MapChart` and their children were inherinting main locale.
913- `ExportMenu` was freezing the whole chart is hovered (since `4.9.5`).
914
915
916## [4.9.5] - 2020-03-03
917
918### Added
919- Third paramterer - `force` - added to `ChartCursor.triggerMove`. If set to `true` it will trigger all actions associated with the move even if the cursor is already at the same coordinates.
920
921### Fixed
922- Exporting from ExportMenu will now prevent cursor (and releated tooltips) from appearing just before export so they are not included in exported image.
923- Panning on a `MapChart` with `panBehavior = "rotateLongLat"` was not working properly since `4.9.3`.
924- Disposed series was not being properly removed from `XYChartScrollbar` if it was used there.
925- Sprites with `dx`/`dy` set and `rotation != 0` were not displaying fixed-position tooltip in correct position.
926- Changing `tooltipText` was causing the tooltip to hide if it was already visible and `tooltipPosition` was set to `"pointer"`.
927- `XYChart` with legend positioned to right/left was not positioning `valueLabels` properly (if aligned to right).
928- `TreeMap` legend was not functioning properly.
929
930
931## [4.9.4] - 2020-02-26
932
933### Fixed
934- `MapChart` was erroring out if `homeGeoPoint` was set.
935- Bullets hovered by `XYCursor` were not being reset back if cursor left plot area.
936
937
938## [4.9.3] - 2020-02-25
939
940### Changed
941- `MapChart` will not perform its pan behavior (e.g. drag) if some other interactive element is being currently dragged. Good if you have a Scrollbar on top of the map for example.
942
943### Fixed
944- Fixed issue with `snapToSeries`.
945
946
947## [4.9.2] - 2020-02-25
948
949### Added
950- Accessibility: New method for chart's `svgContainer`: `readereAlert(text)`. When called, will force screen reader to read out certain text.
951- `velocityDecay` added to `ForceDirectedSeries`. Increase the number to slow down node dynamics.
952
953### Changed
954- Accessibility: If screen reader is enabled, it will notify user when a) legend item is triggered; b) `MapChart` zoom level changes.
955- `XYCursor.snapToSeries` now accepts an array of series and will snap to most close data point from any series present in the array.
956
957### Fixed
958- Now charts will properly disengage dragged elements when mouse cursor leaves iframe.
959- Fixed a typos in French, Portuguese translations.
960- Added more translated prompts to Korean translation.
961- When series which was being used in an `XYChartScrollbar` local data was being updated, the clone used in Scrollbar was not being updated.
962- `Series.autoDispose` setting was being ignored.
963- Fixed "The precision is out of range" errors on some browsers (Safari, IE) when very small numbers are used.
964- Accessibility: Setting of `tabindex` value was basically not working.
965- Funnel slice with `null` values showed small black rectangle at the top/left corner and legend item was not showing a marker.
966- Syncing between multiple `ValueAxis` improved.
967
968
969## [4.9.1] - 2020-02-14
970
971### Added
972- `precision` added to `MapLine` (default `0.1`). If line has `shortestDistance = true` set, it will be bent according to to projection. If `precision` is larger than the distance (degrees) between line's end points, no such bending will occur. Set it to large number for perfectly straight lines.
973- `precision` added to `MapPolygon` (default `0.5`). Polygon's side lines are bent according to to projection. If `precision` is larger than the distance (degrees) between side's end points, no such bending will occur. Set it to large number for perfectly straight lines.
974
975### Fixed
976- JSON config: referring to a `parent` by id is now not dependent on order of elements.
977- Series elements (e.g. columns) were not dispatching "over" event when `XYCursor` was being used.
978- When `Legend` was triggering hover over `PieSeries` slice (or other `PercentSeries`), the slice did not dispatch `"over"` event.
979- Hidden `ForceDirectedNode` (if hidden using API) was not showing if legend item was clicked to show it again.
980- `path` adapter was not working on `Sprite`.
981- Adding `data` to a `XYChart` with an `XYChartScrollbar` with a series was sometimes resulting JS error (if some data was missing).
982- Adding `AxisBreak` to `CategoryAxis` could result JS error.
983- `groupFields` were not copied to series in `XYChartScrollbar`, or any other cloned series.
984- If a bullet was already disabled when `disabled` property field was set, that bullet did not update correctly after data change.
985
986
987## [4.9.0] - 2020-02-09
988
989### Added
990- New plugin: [Venn Diagram](https://www.amcharts.com/docs/v4/chart-types/venn/).
991- `ForceDirectedSeries.dragFixedNodes` property added (default `false`).
992- `ForceDirectedSeriesDataItem.percent` getter added.
993
994### Fixed
995- Mouse interactions were not working properly in very old (pre-59) FireFox.
996- Dynamically changing `ForceDirectedSeriesDataItem.fixed` was not working.
997- `CirclePattern` was not being globally exported.
998- Setting `expoirtable = false` on some elements that are invisible sometimes caused them to become visible after export.
999
1000
1001## [4.8.9] - 2020-02-07
1002
1003### Added
1004- Scrollbar.isBusy getter added, which is true when user interacts with Scrollbar.
1005- RadarColumnSeries now support two category axes.
1006- angleToPosition(angle) added to AxisRendererCircular.
1007- currentPosition getter added to ClockHand.
1008
1009### Fixed
1010- Export on IE (and other setups with `simplifiedExport = false`) was broken since upgrading canvg version.
1011- When DateAxis had grouped set to true, in some cases the value axis was zoomed incorrectly after Data update.
1012- In some specific cases XYScrollbar with series could produce JS error when adding data to the chart.
1013- Funnel Series sliceLink could loose it's color after data update.
1014
1015
1016## [4.8.8] - 2020-02-05
1017
1018### Fixed
1019- When zooming `CategoryAxis` with sorted columns, some columns were not being displayed.
1020
1021
1022## [4.8.7] - 2020-02-05
1023
1024### Added
1025- `sortBySeries` property added to `CategoryAxis`. If you set it to an instance of a `ColumnSeries`, the axis will automatically sort its categories by actual series' values.
1026
1027### Fixed
1028- Labels with extra line breaks at the end could sometimes inherit content from previous version of multi-text, e.g. in dynamically updated tooltips.
1029
1030
1031## [4.8.6] - 2020-01-31
1032
1033### Fixed
1034- Tree map with data items with value = 0 resulted error
1035- ZoomToDates of DateAxis with grouped data was not always working properly.
1036- colors ColorSet of PercentSeries were not cloneed when clonging series so clonned series used single Colorset which resulted different colors.
1037- dateAxis.timezoneOffset was not working properly with value 0. Default value changed from 0 to undefined.
1038
1039### Added
1040cloneTooltip flag (default value true) added to Sprite. When cloning a sprite, if the template has it's own tooltip assigned, this tooltip is also cloned by default. This is not good
1041for cpu and sometimes you might only need one single tooltip for all clones. Set cloneTooltip to false in order not to clone tooltip.
1042
1043
1044## [4.8.5] - 2020-01-29
1045
1046### Fixed
1047- Reverted old behavior of DateFormatter.timezoneOffset, because the fix introduced in 4.8.3 was not correct. Use dateAxis.timezoneOffset instead.
1048- it was possible to make fixed only nodes of the first level of ForceDirectedSeries.
1049- when series is added/removed to a Serial chart, it adds/removes items only the specific item to/from the legend (if available), previously it used to invalidate entire legend which was not good for performance.
1050
1051### Added
1052- timezoneOffset property added to DateAxis. Us it instead of DateFormatter.timezoneOffset if your dates are timestamps in your data and you want the chart to display the same dates no matter at which timezone the chart viewer is.
1053
1054- If `ValueAxis` has its `calculateTotals = true` set, the axis will calculate not only `total` and `totalPercent` for related series' data items but also `sum` which is mathematical sum of source the values, rather than their absolute values.
1055
1056
1057## [4.8.4] - 2020-01-25
1058
1059### Fixed
1060- Downgraded to TypeScript 3.6 to avoid the [breaking change](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html#class-field-mitigations) in troduced in TS 3.7.
1061
1062
1063## [4.8.3] - 2020-01-24
1064
1065### Added
1066- New `ValueAxis` setting: `extraTooltipPrecision`. Set it to a number of extra decimal places to use for numbers in axis tooltip on top of current axis label precision. Default is `0`.
1067
1068### Fixed
1069- Syncing of `ValueAxis` grid improved.
1070- Using `timezoneOffset` was incorrectly affecting labels of `DateAxis`.
1071- If `MapChart` was initialized in a hidden container, subsequent `zoomToMapObject()` calls were zooming incorrectly.
1072
1073
1074## [4.8.2] - 2020-01-23
1075
1076### Added
1077- `TreeMap.homeDataItem` getter added.
1078
1079### Fixed
1080- Sometimes labels were not being truncated properly.
1081- `ValueAxis` with values <1 might not display labels (since `4.8.1` only).
1082- Axis syncing was not working on initial view if no animated theme was used.
1083- Sometimes undefined variables were being restored with default state where they shouldn't. This was introduced in `4.8.1`.
1084
1085
1086## [4.8.1] - 2020-01-22
1087
1088### Added
1089- New setting `syncWithAxis` added to `ValueAxis`. Use it to sync grid between two or more axes. Set it to a reference of another `ValueAxis`, the one you need to sync grid with. [More info](https://www.amcharts.com/docs/v4/concepts/axes/value-axis/#Synchronizing_grid).
1090
1091### Changed
1092- When default state is restored it will not set properties with `undefined` values as well. It used to ignore those.
1093- `XYCursor` will now take its `behavior` logic into account when calculating if it has moved or not. For example, if `behavior == "zoomX"` it will only measure horizontal distance when determining if cursor has moved or not.
1094
1095### Fixed
1096- `Annotation` plugin: setting `currentTool` property was not working for `"line"` and `"arrow"`.
1097- Sometimes element properties were not being restored to their original values when responsive rules were applied.
1098- Sometimes some bullets on a `TreeMap` were not being shown back on after drilling bacup to top level.
1099- Setting `fontSize` on a `ValueAxis` was resulting in an error.
1100
1101
1102## [4.8.0] - 2020-01-16
1103
1104### Added
1105- `scrollable` (default: `false`) property added to `Legend`. If the legend is positioned left/right and items do not fit in the available height, the scrollbar will appear automatically. In case legend is positioned at the top/bottom, you must set `maxHeight` for the legend and if items do not fit in this height, the scrollbar will appear.
1106- `Annotation` plugin: added new property `useMenu`. If set to `false`, plugin will not add any items to or create export menu. It means that annotation functionality will be available only via its API.
1107- `Annotation` plugin: added arrow tool support.
1108
1109### Changed
1110- Layout algorithm of `Legend`'s' item changed and made better. Labels are properly truncated if they do not fit. Alignment of value works fine.
1111- When `Legend`'s position is `"left"` or `"right"` it no longer fixes its width at 200px width, but sets `maxWidth` to 220. This means that legend will take only as much width as it is necessary to accommodate its contents, which usually results in more space for chart itself. Set `maxWidth` to `undefined` if you want all the labels to be displayed and not to be truncated if they don't fit.
1112- When `Legend`'s position is `"left"` or `"right"` it automatically sets `maxColumns` to `1` (one) so that legend items would be arranged in one column only. You can change this setting if you need more columns (you should do this after the position is set).
1113- Setting `focusable = true` on an element will now automatically set `tabindex = 0`. This is required for some browsers (FF) for elements to be focusable. This means that a bunch of elements that are focusable by default (legend items, grips, buttons, etc.) will now have `tabindex` set automatically as well.
1114- Default for `Label.ellipsis` (used when truncating texts) was changed from "..." (three dots) to "…" (
1115Unicode Character 'HORIZONTAL ELLIPSIS'; U+2026).
1116- `Label` wrapping will now try not to split strings on dots where there are no whitespace afterwards, e.g. "55.5%".
1117
1118### Fixed
1119- Axis fills were not measured properly after chart was resized and this could result in a tooltip to be displayed in an incorrect position.
1120- `valueLabels` of a `Legend` were not displayed if set directly on `valueLabels.template.text`. They were dispalyed only if set on `series.legendSettings.itemValueText`.
1121
1122
1123## [4.7.21] - 2020-01-10
1124
1125### Added
1126- `updateStacking()` method added to `XYSeries`. Must be called if some stacking properties are changed by `stacked` stays at `true`.
1127- `"hidden"` added to `SunburstChart`'s `dataFields` to enable pre-hiding certain slices.
1128
1129### Fixed
1130- Disabled series' legend marker was being reset to default view if related series visual settings changed.
1131- Changing data on chart with hidden stacked series was resulting in incorrect stacking.
1132- `XYChart` was not updating value axis' `min`/`max` if series was removed.
1133- If a cursor was moved via API using `"hard"` sticking option, the cursor could animate to some wrong position if clicked outside plot area.
1134- Animating from `Percent` to number or vice versa was not working at all, e.g. when state was being applied. It will now just flip to the final value without animation.
1135
1136
1137## [4.7.20] - 2020-01-08
1138
1139### Fixed
1140- Changing data for a chart with `DateAxis` and `groupData = true` and custom `baseInterval` was resulting the grouping not to working.
1141- Changing colors and some other visual properties of a series after the chart was inited was not affecting `LineSeries` and `ColumnSeries`, as well as their legend markers.
1142- Sometimes the active tooltip of the chart was hidden even though it should remain visible (if some other sprite was hidden at the moment).
1143
1144
1145## [4.7.19] - 2020-01-07
1146
1147### Added
1148- `Annotation` plugin: Added experimental setting `autoSize` (default: `false`). If set to `true`, it will try to relocated annotations relatively to chart size when it changes.
1149
1150### Fixed
1151- Changing `fill`/`stroke` property with a `Color` with non-integer alpha was resulting in either fully opaque or fully transparent color.
1152- Sometimes ordering of columns of `ColumnSeries3D` was off.
1153- `XYSeries` on super-wide/tall charts (more than 100K pixels) were being distorted.
1154- `Regression` plugin: Updating data directly for regression series was not being properly invalidating it.
1155- Toggling `groupData` on `DateAxis` from initial `false` to `true` after the chart was inited was not working.
1156- Toggling `groupData` on `DateAxis` from initial `false` to `true` was resulting in icorrect `ValueAxis` scale.
1157- A tooltip used to remain visible after disposing sprite, if it had a tooltip shown because of `alwaysShowTooltip = true`.
1158- Events `datavalidated` and `beforedatavalidated` were not being fired if data was being updated to an empty array.
1159- Toggling `stacked` from `true` to `false` on `XYSeries` was not working properly.
1160- `Component.removeData()` was causing all the data to be invalidated which caused some wrong behavior.
1161- If some format changed (number formatter) you must now call `invalidateLabels()` in order for the new format to be applied.
1162- `DurationAxis` now animates newly added data in the same way as `DateAxis` does.
1163- Adding/removing multiple series at once to/from `XYChartScrollbar` could result error.
1164
1165
1166## [4.7.18] - 2019-12-24
1167
1168### Added
1169- New property `maxTooltipDistance` added to `XYCursor`. Set it to a numeric value to limit display of tooltips from closest series only.
1170
1171### Fixed
1172- Tooltips were not displayed on non-measured sprites.
1173
1174
1175## [4.7.17] - 2019-12-22
1176
1177### Added
1178- `maskBullets` added to `XYSeries` for a possibility to set it on individual series rather on all chart.
1179
1180### Changed
1181- Changed `am4core.type.is` to `am4core.is`. This fixes a circular dependency issue.
1182- `centerMapOnZoomOut` of `MapChart` will kick in on `zoomLevel < 1.5` for a better UX.
1183
1184### Fixed
1185- Mouse wheel behavior on `XYChart` improved.
1186- Stacked series of a chart with multiple `ValueAxis` were not properly sorted.
1187- Some issues with hiding tooltips while chart is zooming fixed.
1188- Chart with rotated axis labels of Y axis could go into SO in some rare cases.
1189- `SankeyDiagram` with a single level and animated theme was not displaying links.
1190- Some min/max issues with grouped data on `DateAxis` fixed.
1191
1192
1193## [4.7.16] - 2019-12-18
1194
1195### Added
1196- `hideTooltipWhileZooming` (default `true`) property added to `XYSeries` and `Axis`. It will hide respective tooltips while chart zoom animation is playing.
1197- `customValue` data field added to `XYSeries`. Useful if you want to show (in a tooltip for example) some custom value when data is grouped and you need an aggregated numeric value that is not other than one of the Series' data fields.
1198- All the custom fields from chart's raw data are copied into grouped data item's `dataContext`. This allows referencing to custom fields via text placeholders even in aggregate data items when data grouping is enabled.
1199
1200### Changed
1201- Accessibility: Default `role` for chart changed to `region`.
1202
1203### Fixed
1204- Accessibility: `Scrollbar` and its elements now set required attributes like `aria-orientation`, `aria-controls`, `aria-valuenow`, `aria-valuetext`, `aria-valuemin`, and `aria-valuemax`.
1205- Annotation plugin: The elements that went outside of the chart area were not being properly clipped.
1206- `XYChartScrollbar` was not inheriting locale from parent chart.
1207- Sometimes grid lines (and some other lines) were blurry.
1208- Tooltips of an `XYChart` with stacked axes could be positioned incorrectly.
1209
1210
1211## [4.7.15] - 2019-12-16
1212
1213### Added
1214- `notAllowed` added to [`MouseCursorStyle`](https://www.amcharts.com/docs/v4/reference/mousecursorstyle/).
1215- `PieSeries`, `FunnelSerries`, `PyramidSeries`, and `PictorialStackedSeries` will now use absolute values for their slices (good if you have negative values).
1216- [`positionToCoordinate()`](https://www.amcharts.com/docs/v4/reference/axis/#positionToCoordinate_method) method added to `Axis`.
1217- Added `index` as second parameter to [`List.each()`](https://www.amcharts.com/docs/v4/reference/list/#each_method) method.
1218- `min` and `max` adapters added to `ValueAxis`.
1219
1220### Changed
1221- Icons in `ExportMenu` now have `box-sizing: border-box` set in default CSS to make icons play nice(er) with external CSS.
1222- Popup now has a tiny strip on top of it which can be used to drag it (much like regular windows in your OS), instead of the whole body of popup being draggable.
1223- Popup will now use theme colors for backgrounds/text.
1224
1225### Fixed
1226- The `List.each` method was missing an `index` argument for the callback.
1227- Links and other interactive elements in popups are now clickable.
1228- Labels in `PieSeries` could sometimes overlap if animated theme was not used.
1229- `DateAxis` with `groupData = true` and `"average"` as group field was now shown properly if data had gaps.
1230- `AxisRendererRadial` (`RadarChart` uses it) was not paying attention to `tick.location` property.
1231
1232
1233## [4.7.14] - 2019-12-10
1234
1235### Fixed
1236- valueAxis could be shown zoomed-in if series were added later in some rare cases.
1237- strokeLinecap and strokeLinejoin was not copied to Legend markers from Series.
1238- Some charts were not displaying after css-element-queries dependency update, temporary downgraded css-element-queries.
1239- Sometimes if using imagesToConnect with MapLine of MapLineSeries, the lines were not drawn if the imagesToConnect was set initially and not after the series initialized.
1240
1241### Added
1242- A possibility to set individual startAngle and endAngle on Pie Series added.
1243- You can now use baseValue adapter on ValueAxis.
1244
1245## [4.7.13] - 2019-12-07
1246
1247### Fixed
1248- Since last release only - min and max were not updated when scrolling chart with CategoryAxis.
1249- Map could zoom to incorrect rectangle when using chart.zoomToRectangle() method.
1250- DateAxis with groupData = true could hide series when zoomed in (when using big count of baseInterval, a very rare scenario).
1251- Tooltips of stacked series could show up in incorrect order in FireFox.
1252- Horizontal cone series could cut off part of the cone.
1253- If series were prehidden initially and shown later, the min/max was not adjusted.
1254- Grid/fills of the axis set as above were in wrong positions on stacked axes charts.
1255- ForceDirectedSeries now behaves better when nodes are hidden.
1256- In some cases connect = false set on StepLineSeries resulted error.
1257- If zoom-out button was initially disabled and enabled later, it was not shown.
1258
1259### Added
1260- FunnelSeries ticks now will have horizontal part, consistent with PieSeries.
1261- heatLegend now supports reversedOrder = true.
1262- You can now set custom tooltipText on CategoryAxis.
1263
1264
1265## [4.7.12] - 2019-12-04
1266
1267### Fixed
1268- Export menu was still shown data download options for HTML and PDF even if chart had no data.
1269- 3D columns with horizontally or vertically stacked axes were not positioned properly.
1270- Setting tooltipText on MapLine resulted stack overflow when hovered over line.
1271- Force-directed links were not showing tooltips.
1272- coordinateToPosition of AxisRendererY was not working properly if axis was zoomed-in.
1273- Value axes of a XY chart might appear zoomed-in after chart.invalidateData() was called or after series were added to the chart after init.
1274
1275### Added
1276- horizontalMouseWheelBehavior with options "zoomX" | "zoomY" | "zoomXY" | "panX" | "panY" | "panXY" | "none" added to XYChart. Will work with both horizontal scrollers (if available) and two finger-horizontal swipe on the touchpad.
1277- centerMapOnZoomOut added to MapChart, with default value true.
1278
1279
1280## [4.7.11] - 2019-11-26
1281
1282### Fixed
1283- Visual glitch with `ColumnSeries3D` used in a stacked axis scenario fixed.
1284- `PercentSeries` was sometimes jumping over 2 colors in `ColorSet`.
1285- Fixed possible compilation issues with some configurations.
1286
1287
1288## [4.7.10] - 2019-11-15
1289
1290### Added
1291- Global method `am4core.system.softInvalidate(chart)` added. Call this method if you update data or config of a chart that is in hidden container, after revealing the container, so that labels and possibly other elements can correctly arrange themselves.
1292
1293### Fixed
1294- JSON config `MapChart` was breaking on geodata parsing since last release (4.7.9).
1295- Sometimes `MapChart` used to zoom to a wrong position when using `zoomToMapObject()` method (happened if pan inert animation was not finished at the moment of the function call).
1296- `Container`'s "grid" layout was incorrectly positioning items if one of its children was disabled.
1297- Creating a standalone series object (without assigning it to a chart) was resultin in a JS error.
1298
1299
1300## [4.7.9] - 2019-11-14
1301
1302### Added
1303- New `Sprite` property: `showTooltipOn`. Available options: `"hover"` (default), `"hit"`, and `"always"`.
1304- `ignoreZeroValues` added to `PercentSeries` (default: `false`). If set to `true` it will not show slices with zero values.
1305
1306### Changed
1307- `Sprite` property `alwaysShowTooltip` is now being deprecated in favor of `showTooltipOn = "always"`.
1308- In `WordCloud` words connected with a dash without spaces will not be treated as a single word, e.g. "76-ers" is now a single word rather than two separate words "76" and "ers".
1309- JSON config based charts will now fail with a critical error if there's incorrect `type` specified for one of the objects.
1310
1311### Fixed
1312- Initial chart responsive rules were sometimes not being applied.
1313- When `MapChart` was zoomed/panned, "always-on" tooltip were remaining in the same place.
1314- HTML labels with `maxWidth` and `wrap` set were not being sized correctly.
1315- Sides of `Column3D` were not being colored properly when `fill` was being set via `propertyFields` and string-based hex color codes were used in data.
1316- After click on chart with `XYCursor` that `behavior = "select*"` its `xRange` and `yRange` was not being reset and could show ranges from previous selection.
1317- `XYCursor` will now respect order of series when showing their tooltips if they share the same value.
1318- Tooltip position of rotated and/or scaled sprites was incorrect.
1319- Changing series of `XYChartScrollbar` was not working properly (old series could remain or new series were not appearing).
1320- `PictorialSeries`, and `PyramidSeries` were not working properly with slices with `<= 0` values.
1321- When removing data from a chart using `addData(data, removeCount)`, chart was rmeoving data items from series which had data set explicitly.
1322- Bullets on a `RadarChart` could be displayed in wrong positions when zooming/hiding series.
1323- When minimizing series they could animate to incorrect minimum values and adjust min/max values.
1324
1325
1326## [4.7.8] - 2019-11-05
1327
1328### Added
1329- `itemIndex` added to `AxisDataItem`. Shows current index of data item on the axis.
1330
1331### Changed
1332- `extremeschanged` is now dispatched by `DateAxis` when the `min`/`max` are animating.
1333
1334### Fixed
1335- Setting `maskBullets` on an `XYChart` will toggle on or off bullet masking dynamically.
1336- In some particular cases some Sankey nodes were drawn out of bounds.
1337- `behaviorcanceled` event of `ChartCursor` was not being fired.
1338- Regression plugin was failing when added to Series object that was not yet attached to a Chart.
1339- JSON config was failing where Label's `text` or `html` properties were being set to percent value.
1340- Toggling of `DateAxis.skipEmptyPeriods` was not working after the chart was already inited.
1341
1342
1343## [4.7.7] - 2019-11-02
1344
1345### Added
1346- `NumberFormatter` now supports `numberFormat` in [Intl.DateTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat) objects. E.g. `chart.numberFormatter.numberFormat = { style: "decimal", minimumFractionDigits: 3 }`. [More info](https://www.amcharts.com/docs/v4/tutorials/formatting-date-time-and-numbers-using-intl-object/).
1347- New built-in pattern: `CirclePattern`.
1348- `PictorialStackedSeries` now supports `align`/`valign` settings, allowing controlling its position inside chart container.
1349
1350### Changed
1351- Default pattern list in `PatternSet` is expanded and revamped for better look and increased contrast.
1352- Pattern elements are now centered, so they work better with `rotation`.
1353- `MapChart` now will shift zoom towards center gradually when zooming out.
1354
1355### Fixed
1356- `getIndex()` method of `PatternSet` was always returning current pattern, not particular index.
1357- Sometimes Export's user-added `"data"` adapter was kicking in before amCharts built-in adapter, causing data edits to be overwritten.
1358- Built-in adapters (e.g. for export `"data"`) sometimes were being added multiple times.
1359- Export no longer errors out on pages with missing external CSS files.
1360- Using `addData()` on `PercentChart` was reusing colors from the beginning for the newly added slices.
1361- `SliceGrouped` on `PercentSeries` when used on a chart with responsive fetures enabled, could display labels of the hidden slices after chart resize.
1362- Issue with zooming `DateAxis` with single data item fixed (the single item used to disappear in certain cases).
1363
1364
1365## [4.7.6] - 2019-10-29
1366
1367### Added
1368- Added more pre-set patterns to `PatternSet`, including one with circles.
1369
1370### Changed
1371- Using `patterns` theme will no longer reset Series' colors.
1372- Using `patterns` theme now respects series' `fillOpacity` setting to set pattern background transparency.
1373
1374### Fixed
1375- Formatted strings were being cut off at specific `\]]` character combination.
1376- `LineSeries` with `RectPattern` for a fill was failing on chart with a legend.
1377
1378
1379## [4.7.5] - 2019-10-26
1380
1381### Added
1382- New theme: `microchart`. Automatically adapts all charts for very small containers.
1383- New theme: `patterns`. Automatically fills `ColumnSeries` and `PercentSeries` with distinctive patterns.
1384- New object `PatternSet` used in conjunction with `XYChart` or `PercentSeries` to auto-assign distinctive pattern fills.
1385- New property `patterns` on `XYChart` and `PercentSeries`.
1386
1387### Changed
1388- `tooltipX` and `tooltipY` properties now can be set in `Percent` for relative positioning.
1389
1390### Fixed
1391- Cursor on all-`ValueAxis` setups and behavior set to "zoomXY" was not working properly.
1392
1393
1394## [4.7.4] - 2019-10-22
1395
1396## Added
1397- New global option: `am4core.options.viewportTarget`. If you are placing charts into a scrollable container and using `onlyShowOnViewport`, set this option to a reference to the container. The system will monitor both window and individual scroll of the container to know where to reveal the lazy-loaded chart.
1398- New `MapChart` property: `geodataNames`. It can now be used to automatically translate country names into multiple languages. Check out [usage instructions](https://www.amcharts.com/docs/v4/tutorials/using-map-country-name-translations/).
1399- `hideParentColumns` property added to `TreeMap`. If set to `true` columns of the parent series will be hidden when user drills-down into deeper levels.
1400
1401### Fixed
1402- `ColorSet` was starting to generate grayscale colors at some point.
1403- Accessibility: Series that has items with roles "menuitem" will now have its role set to "menu" automatically.
1404- Series bullets were dislocated on `XYChart` with `DateAxis` and `dateFormatter.utc = true`.
1405- In some specific cases 3D columns used incorrect `zIndex`.
1406- Index of dataItem of `PercentSeries` could be `-`1 after first render.
1407- `yRange` of `XYCursor` was inversed.
1408
1409
1410## [4.7.3] - 2019-10-18
1411
1412### Fixed
1413- `ColumnSeries` with `simplifiedProcessing = true` setting was sometimes producing visual glitches.
1414
1415
1416## [4.7.2] - 2019-10-18
1417
1418### Added
1419- `RadarColumn` now supports `width` adapter (the adapter should return `Percent` object).
1420
1421### Changed
1422- `minWidth`/`minHeight` set on Axis to 0.0001 to avoid ready event to be not called on super small divs.
1423
1424### Fixed
1425- A link between two fixed `ForcedDirectedTree` nodes was not visible.
1426- If `maxZoomCount` was set on a series which was used for `XYChartScrollbar`, scrollbar series was zoomed-in.
1427- `PercentChart`'s legend, if placed to an external div could loose text formatting after data update.
1428- `gridType = "polygons"` of `RadialAxis` was not working.
1429- Label of `PinBullet` was not being cloned.
1430- `rangeChangeEasing` function was not being passed to `ValueAxis` min/max animation which resulted in some unwanted animation effects when min/max of the axis changed.
1431
1432
1433## [4.7.1] - 2019-10-16
1434
1435### Added
1436- Two additional auto-calculated values (used in `valueXShow` and `valueYShow` data fields) added: `startChange` and `startChangePercent`. Shows change from starting value of the first data item in series.
1437
1438### Changed
1439- Animated theme: Default values for `rangeChangeDuration` and `interpolationDuration` changed to `500` (was `700`). Makes zooming animations more snappy.
1440
1441### Fixed
1442- Data item grouping was sometimes producing visual anomalies when multiple data sets were being loaded /set to chart/series asynchronously.
1443
1444
1445## [4.7.0] - 2019-10-14
1446
1447### Added
1448- Dynamic data item grouping capabilities added to `XYSeries` in `DateAxis` + `ValueAxis` setups. [More details](https://www.amcharts.com/docs/v4/concepts/axes/date-axis/#Dynamic_data_item_grouping).
1449- Export: Two new data export options "HTML" and "PDF" (exports data as a table in PDF).
1450- Export: Ability to include data table into PDF export (`addData` option in PDF options).
1451
1452### Fixed
1453- Regression plugin: Plugin was not generating proper regression lines if data was loaded via `dataSource`.
1454- Fixed number formatting for data exports on non-default-locale charts.
1455- `min`/`max` of `ValueAxis` was not always correct when series showed not actual but calculated values using `valueYShow`/`valueXShow` data fields like `"sum"`, `"change"`, or `"changePercent"`.
1456
1457
1458## [4.6.9] - 2019-10-08
1459
1460### Fixed
1461- Accessibility: `itemReaderText` on `XYSeries` (and all inheriting series types) now respects value set from user code.
1462- Accessibility: Default `role` for chart changed to `widget`.
1463- Accessibility: `Axis` has now `readerHidden = true` set by default, to prevent screen readers from reading out useless numbers.
1464- Accessibility: `readerTitle` was not being populated by data item data via curly bracket data placeholders.
1465- Accessibility: Bullets were ignoring Series' `skipFocusThreshold` setting.
1466
1467
1468## [4.6.8] - 2019-10-07
1469
1470### Added
1471- New `Export` property: [`validateSprites`](https://www.amcharts.com/docs/v4/reference/export/#validateSprites_property). It's an array you can push any `Sprite` to it. When export starts, it will check if those elements are not invalid and will await for them to be ready. This is useful if you need to do any modifications to your chart for export.
1472- New option for CSV and XSLX export options: `pivot`. If set to `true`, will "pivot" the data so that firsst column is field names with values lined up horizontally in rows.
1473- New property on `NumberFormatter`: `smallNumberThreshold` (default `1`). You can now set what is considered a "small number" when applying small number prefixes if `"a"` format modifier is used.
1474
1475### Fixed
1476- If `ForceDirectedTree` was used with `am4core.options.onlyShowOnViewport = true`, the forces on links were not being calculated properly, resulting in incorrect layout.
1477- JSON: String dates will now be correctly parsed using `DateFormatter` in axis ranges' `date` and `endDate` properties.
1478- `WordCloud` was not properly parsing Korean text.
1479- If `MapChart` was zoomed in while still playing pan inertia animation, it produced a jerky effect.
1480
1481
1482## [4.6.7] - 2019-10-05
1483
1484### Added
1485- `paddingRadius` added to `ForceDirectedNode`. Allows having some extra free space around bubbles.
1486- New event on all `Sprite` elements: `parentset`. Triggers whenever element's `parent` is set.
1487
1488### Fixed
1489- `MapChart` background was not being updated if map projection was changed after init.
1490- Axis' tooltip was not changed if user rolled over the axis, rolled out and then rolled over it again on the same axis item.
1491
1492
1493## [4.6.6] - 2019-10-04
1494
1495### Fixed
1496- Language setting was being ignored in `DateAxis` after previous release.
1497
1498
1499## [4.6.5] - 2019-10-02
1500
1501### Fixed
1502- Position of the bullets of a series with date-based axis could be incorrect in some sepecific cases.
1503- Some minor performance improvements.
1504- Map polygon was not updated if `mapPolygon.multiGeoPolygon` was changed after the series was already inited.
1505- Some minor issue with `XYCursor` panning fixed.
1506
1507
1508## [4.6.4] - 2019-09-29
1509
1510### Added
1511- Ukrainian translation (uk_UA).
1512- `DataSource` now supports binary loading using `responseType = "blob"`.
1513
1514### Fixed
1515- Setting `exporting.dateFormat` resulted in "Invalid date" as a column name for date/time columns when exporting to XLSX.
1516- Performance improved, especially data-parsing.
1517- When panning `XYChart`, the chart will round selections respecting `startLocation` and `endLocation` values of the Axis.
1518- First bullet of a series with `CategoryAxis` could be positioned incorrectly.
1519- Conflict between Annotation plugin and amCharts 3 Export plugin fixed.
1520
1521
1522## [4.6.3] - 2019-09-26
1523
1524### Fixed
1525- `ColorSet` was now skipping the first (base) color if no theme or list of colors was specified.
1526- Setting axis `title` to a new `Label` object will now remove the previous title label.
1527
1528
1529## [4.6.2] - 2019-09-25
1530
1531### Added
1532- New plugin: [OverlapBuster](https://www.amcharts.com/docs/v4/tutorials/plugin-overlap-buster/). Allows automatically "exploding" overlapping items such as bullets or markers for easier access to them.
1533- New property: `maxZoomCount` on `Component`. Use it to limit how many items such as categories or base intervals on axes can be shown at the same time.
1534- Added `riseFromOpenState`, `riseFromPreviousState`, `dropFromOpenState`, and `dropFromPreviousState` setters to `ColumnSeries`. You can use them to set states to `undefined` if you don't want them to be used.
1535- A possibility to make "fixed" `ForceDirectedTree` nodes added (via `dataFields.fixed`). Also it is possible to set `x` and `y` of such nodes using `series.nodes.template.propertyField.x` and `y`. [More info](https://www.amcharts.com/docs/v4/chart-types/force-directed/#Fixed_nodes).
1536
1537### Changed
1538- Removed "GIF" option from the Export menu. Browsers don't know how to convert canvas to GIF, so it was falling back to exporting as PNG, making GIF option redundant.
1539
1540### Fixed
1541- If chart's data source was initialized (which would happen by only accessing chart's `dataSource` property) and its `url` was not set, it was still trying to load and resulting in error.
1542- Formatting number with "b" modifier, was causing all numbers up to 1024 become zero.
1543- `ColorSet` with default (no) theme was generating colors from second in the list from `4.6.1`.
1544- Bullet positions were incorrect on `ValueAxis` with `baseValue` set to other than zero.
1545- Bullet positions with `DateAxis` could be incorrect in some cases.
1546- Title position of a cloned Axis was nor being positioned properly.
1547- Cursor was flickering if axis of a cursor had some padding set.
1548- Tooltip position of `MapImage` elements with `nonScaling = true` could be incorrect in some specific cases.
1549- Vertical axis break's fill might get out of sync with break lines if the width of a break was small.
1550- `RadarCursor` could show incorrect label if the chart had `CategoryAxis` with only 3 categories.
1551- Series was not redrawing properly if its axis range value changed.
1552- `PieChart` could show some labels out of chart area in some specific cases.
1553
1554
1555## [4.6.1] - 2019-09-18
1556
1557### Added
1558- New property `unselectedOverlay` added to `XYChartScrollbar`. It contains a reference to `Sprite` element used as a "curtain" on unselected areas of the scrollbar. Use it to control dimming effect by using its `fill` and `fillOpacity` properties.
1559- Export: New option `crop` (default: `false`) added to `extraSprices` interface `IExportCanvas`. If set to `true`, it will crop extra elements to match height/width of the main chart being exported.
1560- Wherever "date format" can be set it now accepts in [Intl.DateTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat) format. E.g. `chart.dateFormatter.dateFormat = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }`.
1561- New property `intlLocales` on `DateFormatter`. Specifies list of locales to use if date formates are specified as `IntlDateTimeFormatOptions`.
1562- JSON: You can now set `parent` property of the elements by their `id` in JSON configs. E.g.: `scrollbarX: { parent: "aa1" }`.
1563- JSON: You can now set easing functions as strings in JSON config, e.g. `transitionEasing: "ease.cubicInOut"`.
1564
1565### Fixed
1566- `TreeMapSeries` and `SunburstSeries` were not inheriting `numberFormatter` propertly from the chart.
1567- Removed a leftover `console.log()` call.
1568- Exporting no longer temporarily modifies the site's styles.
1569
1570
1571## [4.6.0] - 2019-09-12
1572
1573### Added
1574- New plugin: [Timeline](https://www.amcharts.com/docs/v4/chart-types/timeline/). Please note it's a commercial plugin, which will need a separate license purchase if you want to remove the branding link on it, even if you have amCharts 4 license.
1575
1576### Fixed
1577- `chart.svgContainer.autoResize = false` was being ignored.
1578- If data of chart with `CategoryAxis` had data items without a category value, the chart used to create one extra empty "category".
1579
1580
1581## [4.5.16] - 2019-09-04
1582
1583### Fixed
1584- Data sources were not being disposed properly when chart was disposed.
1585- Adding series to an already inited chart was not showing the series.
1586- Fixed `StepLineSeries` glitch where base axis was not `CategoryAxis`/`DateAxis`.
1587- Title of a cloned X axis was being drawn above the axis labels.
1588- If all values of a `ValueAxis` data wehere the same and negative, the chart zoomed in incorrectly after init.
1589- Center-alignment of axis labels was not working.
1590- `maxWidth`/`maxHeight` set on column template of a `ColumnSeries` was not working properly if the size of a cell was less than `maxWidth`/`maxHeight`.
1591
1592
1593## [4.5.15] - 2019-08-23
1594
1595### Added
1596- `hideSeriesTooltipsOnSelection` added to `XYCursor`. If set to `true` it will automatically hide cursor-initiated series tooltips when selecting with cursor (e.g. for a zoom).
1597- Properties `numberFields`, `numberFormatter`, and `numberFormat` properties to `Export`. Allows forcing certain number format for values listed in `numberFields` effectively converting them into strings.
1598- `snapToSeries` now supports `XYChart` setups where both X and Y axes are `ValueAxis`.
1599
1600### Changed
1601- `ZoomControl`'s plus and minus button will not be exported to images anymore.
1602
1603### Fixed
1604- When the chart with external data source and reload frequency set was disposed, the data source kept reloading the data.
1605- When Tooltip's `keepTargetHover` was enabled and hover moved from an element with tooltip content to an element without one, an empty tooltip was being shown.
1606- `SankeySiagram` with a lot of nodes was performing poorly on initial load.
1607- `TreeMap` could show bullets of multiple levels which could result overapping of bullets/labels.
1608- `MapLineSeries` with `imagesToConnect` were not updating if images changed their positions.
1609
1610
1611## [4.5.14] - 2019-08-11
1612
1613### Added
1614- `mouseOptions` added to `Interactions`. For now it contains only wheel sensitivity setting, e.g. `mapChart.interactions.mouseOptions.sensitivity = 0.4`.
1615- `getPositionX()` and `getPositionY()` methods added to all axes. Returns relative position of a series data item on axis.
1616
1617### Changed
1618- Series with `DateAxis` not as a base axis of a series (like gantt) will now animate similar to other charts.
1619- `SlicedChart` hidden labels arrangements adjusted.
1620
1621### Fixed
1622- `ValueAxis` was incorrectly choosing min/max values for the data with very small values.
1623- `StepLineSeries` with `connect = false` and `autoGapCount > 1` was showing regular line series, not a step series.
1624- Chart with `DateAxis` which was not a base axis of a series and dates older than Unix Epoch (January 1st, 1970 at UTC) was incorrectly showing base of a series.
1625- `DateAxis` was not animating smoothly when adding more data.
1626- `ValueAxis` pre-zoom (on `ready` event) was not working properly.
1627- `fullWidth` cursor line was not reverting back if set to `true` and then back to `false`.
1628
1629
1630## [4.5.13] - 2019-08-06
1631
1632### Fixed
1633- Sometimes `requestAnimationFrame` was being invoked even if all charts were disposed.
1634- Base grid was not displayed if `axis.renderer.inside = true`.
1635- Last tooltip might not be shown on `DateAxis` if it had multiple series and some of the series did not have data at the last date.
1636- Legend values were showing value of the pervious hovered data item on the dates which did not have any data.
1637- Changing base value of `ValueAxis` was not making the series to be redrawn.
1638- Sometimes `ValueAxis` was not adjusting `min`/`max` when a part of the `DateAxis` with series having no data at the selected period was selected.
1639- Sometimes columns or step line series could overlap if `baseInterval.unit = "day"` and `baseInterval.count > 1`.
1640- `XYChartScrollbar` axes were not handling changes of `min`/`max` of chart axes.
1641- Panning of `CategoryAxis` could result incorrect zoom in some cases.
1642- FireFox issue with multiple `PictorialStackedSeries` on the same chart solved.
1643- Cursor selection was disappearing when mouse was released (with `selectX`/`selectY`/`selectXY` cursor behavior).
1644- Tooltip of clustered columns was positioned incorrectly (always showing in the middle of a cell).
1645
1646
1647## [4.5.12] - 2019-08-02
1648
1649### Added
1650- Now prints a warning if you do not dispose of the chart properly.
1651- New `am4core.disposeAllCharts` function.
1652
1653### Changed
1654- JSON: Config processor will not overwrite target object if the `type` of the object set in config and one already existing matches.
1655
1656### Fixed
1657- Fixing "Could not find root" error.
1658- JSON: declaring `hands` array before `axes` on a `GaugeChart` will not result in error anymore. This relates to JSON config only. In object-based setups, clock hands must still be defined **after** axes.
1659
1660
1661## [4.5.11] - 2019-07-31
1662
1663### Added
1664- New `AxisDataItem` properties: `minPosition` and `maxPosition`. Enable controlling visibility of associated axis element (e.g. label, tick, grid). Overrides `minLabelPosition` and `maxLabelPosition`.
1665
1666### Fixed
1667- `NumberFormatter` was sometimes susceptable to floating-point error when formatting percent formats (`#%`);
1668- Cursor hover was not working with shadow DOM.
1669- `DateFormatter` could sometimes parse string-based dates wrong when in UTC mode.
1670
1671
1672## [4.5.10] - 2019-07-29
1673
1674### Fixed
1675- Sometimes setting `fill`/`stroke` to a non-opaque `Color`, alpha setting was being ignored.
1676- `PinBullet` (from Bullets plugin) was distorted if used with image since last release.
1677- Fabric dependency was causing errors on installation under some setups.
1678
1679
1680## [4.5.9] - 2019-07-24
1681
1682### Added
1683- `above` property added to `AxisTick`, `Grid`, and `AxisFill`. Allows putting individual elements on top of the series even if all the other grids/ticks/axis fills are below them.
1684- `bullet` property added to `AxisDataItem`. Allows adding bullets to the axes. You can have both `AxisBullet` (new class) or a simple `Sprite` there.
1685- New element class `AxisBullet`. Use `AxisBullet` which is a container with a `location` property in case you want to adjust bullet location within cell.
1686
1687### Fixed
1688- JSON: Series-bound axis ranges were breaking whole chart in JSON-based setups.
1689- In some rare cases `NumberFormatter` was suffering from floating point number precision issue when calculating big number prefixes.
1690- Updating data was causing Annotation menu item to duplicate.
1691- Exporting `extraSprites` with different positions didn't work.
1692- Responsive rules were not always kicking in on first load if there were multiple charts on the same page.
1693
1694
1695## [4.5.8] - 2019-07-19
1696
1697### Added
1698- `wavedRight`, `wavedLeft`, `wavedTop`, and `wavedBottom` properties added to `WavedRectangle`. Allows to specify which sides of rectangle should be waved.
1699
1700### Changed
1701- You can now avoid creating unused bullet for each data item of a series by setting `bullet.disabled = true` and then specifying `bullet.propertyFields.disabled = "fieldName"` where `fieldName` would be a field in your data specifying which bullets should not be disabled (`false` value).
1702
1703### Fixed
1704- `FlagBullet` was overriding colors inside its class.
1705- `FlagBullet` now supports negative `poleHeight` (turns the flag upside down).
1706- Background of a `Container` did not have access to Container's data item so it was impossible to define background properties via `propertyFields`.
1707
1708
1709## [4.5.7] - 2019-07-18
1710
1711### Added
1712- New plugin: [Bullets](https://www.amcharts.com/docs/v4/tutorials/plugin-bullets/). It's a collection of configurable shapes (stars, pins, flags, etc.) that you can use as chart bullets, map markers, and anywhere else.
1713- New `Tooltip` property: `showInViewport` (default `false`). if set to `true` it will not hide tooltips that point to an off-viewport location. It will be glued to the closes viewport edge instead.
1714
1715### Changed
1716- Tooltip for `MapPolygonSeries` now has `showInViewport = true` set by default.
1717
1718### Fixed
1719- Exporting to CSV with `dateFormat` set was causing "Invalid date" to appear instead of date column names (since 4.5.6).
1720- When `MapPolygonSeries` had only one item set in its `include` array, it was causing map to come up as empty in some cases.
1721- Charts were not accounting for their container padding/borders when measuring their own size, causing bigger charts then necessary.
1722
1723
1724## [4.5.6] - 2019-07-16
1725
1726### Added
1727- New property on `Annotation` plugin: `data`. Allows getting serialized annotation data object, as well as setting it back to load annotations.
1728
1729### Changed
1730- Annotation plugin will not create full Export menu if it wasn't explicitly created before.
1731- Tweaked CSS for `ExportMenu` to protect from icons getting small becuase of the page-wide CSS.
1732- When exporting data on chart with `exporting.dateFormat` set, the date/time fields in data will be formatted according to the set format.
1733
1734### Fixed
1735- `XYChartScrollbar` with series attached to different `ValueAxis` were using same axis scale in the scrollbar.
1736- Using `wrap = true` on horizontal axis labels was resulting weird behavior when zooming in some cases.
1737- Export was not prioritizing menu item's specific options over generic format options.
1738- Auto-wrapped text was not retaining square bracket escaping (double bracket) for each subsequent line.
1739
1740
1741## [4.5.5] - 2019-07-12
1742
1743### Added
1744- New property `updateCurrentData` added to `DataSource`. If set to `true` it will try to overwrite values (resulting in smooth animations) in current data rather than overwriting whole data set.
1745- Feature added back: Support of queued chart initialization. If enabled (`am4core.options.queue = true`) the chart will not start initializing until previous chart finishes.
1746- Feature added back: Support for delayed rendering. If enabled (`am4core.options.onlyShowOnViewport = true`) the chart will start rendering itself only when scrolled into view.
1747- New plugin: [Annotation](https://www.amcharts.com/docs/v4/tutorials/plugin-annotation/). Allows annotating charts using UI.
1748
1749### Fixed
1750- Accessibility: The screen reader description for column/bullet/slice was not being added properly every time.
1751- On `RadarChart` data updates sometimes `ValueAxis` scale was not being calculated corrently.
1752- `alwaysShowTooltip` was not working properly in some cases.
1753
1754
1755## [4.5.4] - 2019-07-08
1756
1757### Added
1758- `alwaysShowTooltip` property added to `Sprite`. Allows tooltip to be shown without the need for hovering/selecting an element.
1759- `NumberFormatter` now supports `"!"` modifier which works in conjunction with `"a"` and `"b"` modifiers. If used, formatter will force application of a prefix/suffix for values that do not fit into any of the defined prefix lists. This is useful in cases you want to format all of the values using same prefix, e.g. "B" and want even small values to be formatted as such (`500,000` formatted as `"0.5B"`).
1760
1761### Fixed
1762- `CategoryAxis` tooltip could show incorrect category if its `renderer.tooltipLocation` was set to `0`.
1763- Memory leak which happened when disposing a chart with `XYChartScrollbar` with series added to it fixed.
1764- Some series stacking issues fixed.
1765- Issue with `baseDuration.timeUnit = "yyyy"` and `StepLineSeries` fixed.
1766- In some cases `DateAxis` tooltips would show empty near edge of the plot area.
1767- `CategoryAxis.indexToPosition` adjusted to work better with no default `startLocation` and `endLocation` values.
1768- `WordCloud` could go into stackoverflow if `minWordLenght` was set to a number which resulted in no words to appear at all.
1769- `ForceDirectedSeries` were resulting in JS error if inited in a hidden container.
1770- If an axis range was made invisible by setting its `visible = false`, and then visibility was set back to `true` again, axis range was not shown.
1771- JSON: entries of type `OrderedListTemplate` or `SortedListTemplate` was not being processed correctly as templated lists.
1772- Legend items were still focusable/togglable via keyboard even if `clickable`/`focusable` on their respective containers were set to to `false`.
1773
1774
1775## [4.5.3] - 2019-06-18
1776
1777### Added
1778- `"up"`, `"down"`, `"left"` and `"right"` options added to `Tooltip.pointerOrientation`. Allows forcing constant position/orientation of the Tooltip. Note, the tooltip might go out of div/screen boundaries when using these new orientations.
1779- New property added to `SliceGrouper`: `groupProperties`. It's an object comprising by key/value pairs to apply to a "group slice", e.g. `grouper.groupProperties.fill = am4core.color("red")`.
1780- It was impossible to reuse single pattern for multiple `Sprite` elements, as disposing one was resulting in pattern to be disposed as well.
1781
1782### Fixed
1783- `hideOversized` was being ignored for HTML-based labels.
1784- `PieChart` series' `legendSettings` were shared across all series; it was impossible to set different `valueText`.
1785- `CategoryAxis` with HTML labels could in result excessive white space at the bottom of the chart.
1786- In some cases patterns set as `Sprite`'s fills using `fill` adapter were not displayed.
1787- When calculating totals on a Series with all zero values, `percent` was not being calculated. It will now have a zero.
1788
1789
1790## [4.5.2] - 2019-06-14
1791
1792### Changed
1793- Deferred/queued chart initialization functionality is disabled completely for now as it's causing issues in some setups. Functionality will be re-introduced at some later version.
1794
1795
1796## [4.5.1] - 2019-06-14
1797
1798### Changed
1799- Initial animations for charts with deferred initialization (`am4core.options.onlyShowOnViewport = true`) will not be played for now. Another fix is coming.
1800
1801### Fixed
1802- In some HTML configurations layout of the labels might be off since last update.
1803
1804
1805## [4.5.0] - 2019-06-14
1806
1807### Added
1808- Support of queued chart initialization. If enabled (`am4core.options.queue = true`) the chart will not start initializing until previous chart finishes.
1809- Support for delayed rendering. If enabled (`am4core.options.onlyShowOnViewport = true`) the chart will start rendering itself only when scrolled into view.
1810
1811### Changed
1812- Default CSS for a `Popup` now has text color set to ensure it is visible on default background.
1813
1814### Fixed
1815- `dataContext` of `ForceDirectedNodeDataItem` was not being populated correctly.
1816- `MapPolygonSeries` was not being displayed properly if GeoJSON contained a single very small polygon.
1817- Tooltips now work correctly when a chart is contained within the shadow DOM.
1818- `rtl` inheritance was not working properly on some elements, e.g. axis tooltips.
1819- None of the `Responsive` events were being triggered.
1820- JSON: It was not possible to set `XYSeries.baseAxis` using axis' `id`.
1821- `LineSeries` was being cut off if div of a chart was more than 20K pixels width/height.
1822- When axis was disabled (`axis.disabled = true`) its ticks and grid remained visible.
1823- If a chart had series with bullets and `minBulletDistance` set and the chart was resized so that bullets had to be hidden, some of the bullets remained visible.
1824- `openCategoryX` and `openCategoryY` data fields were not working properly on `XYSeries`.
1825- If `XYChart` had stacked series and series had both possitive and negative numbers, series were stacked incorrectly if some of the series were hidden.
1826- `MapChart` was not adjusting its size to the container in some specific cases.
1827- Some performance improvements with `series.connect = false` and a lot of missing values.
1828- `Rectangle3D` was not copying side's properties when cloning.
1829- `ForceDirectedLink`'s data item was not properly set. It is set to target's data item now.
1830- `MapChart` was not displaying maps of very small countries properly.
1831
1832
1833## [4.4.10] - 2019-05-28
1834
1835### Fixed
1836- Disposing top-most stacked series was causing a JS error.
1837- If `TreeMap` top level had one node only, zoom-out button was not shown after drill-down.
1838- Bullets were not shown on series on initial render if no animated theme was used (since last release only).
1839
1840
1841## [4.4.9] - 2019-05-28
1842
1843### Added
1844- `startIndex` property added to `ColorSet`. This allows to specify from which color charts like `PieChart` should start when picking colors for slices.
1845- `excludeFromTotal` property added to `XYSeries` (default: `false`). Allows excluding values of particular series when caluclating totals.
1846- `includeRangesInMinMax` property added to `ValueAxis`.
1847
1848### Changed
1849- The chart will now error out if trying to instantiate generic classes like (`Chart`, `Axis`, `Series`).
1850- Legend in `TreeMap` was completely revamped. Previously it used series as data, but as series were not always created, it failed to render items in some cases. Now it uses `TreeMapDataItem` of `TreeMap`.
1851- `TreeMap` legend will now show items of first level which has more than one data item.
1852- `dataContext` of `ForceDirectedNodeDataItem` will now have the same object as target node's.
1853
1854### Fixed
1855- `responsive.useDefault = false` was being ignored.
1856- `DateAxis` with hourly-based data could render some of the labels using date formatter of a changed period even if the period didn't actually change.
1857- In some cases `MapChart` could interfere with event objects of other charts on the same page, even when not directly interacting with it.
1858- If `baseInterval` of `DateAxis` didn't have `count` set, the chart failed to render.
1859- Setting data on hidden Series resulted tooltips on invisible bullets to be shown.
1860- `WordCloudSeries` with single label or several labels with the same values was displaying labels using `minFontSize`.
1861- `axis.createSeriesRange()` was not working with `RadarColumnSeries`.
1862- When data was added to a chart, series could flicker at incorrect position before rendering properly. Also the same could happen when zooming chart (it was only visible if animated theme was not in use).
1863
1864
1865## [4.4.8] - 2019-05-23
1866
1867### Added
1868
1869- `linkWithStrength` added to `ForceDirectedSeries`.
1870- `linkWith(node, strength)` method added to `ForceDirectedNode`. Allows adding links without revalidating whole data.
1871- `unlinkWith(node)` method added to `ForceDirectedNode`.
1872- `expandAll` property added to `ForceDirectedNode` (default: `true`). If set to `false`, only a single level of children will be expanded on click/tap.
1873
1874### Fixed
1875- Links created using `linkWith` data field were not using any strength setting, affecting the layout.
1876- Some problems with `maxLevels` on `ForceDirectedSeries` solved.
1877
1878
1879## [4.4.7] - 2019-05-21
1880
1881### Changed
1882- Export: Children columns on hierarchical charts (`TreeMap`, `Sunburst`, `ForceDirectedTree`) are no longer exported to "flat" formats (CSV, XLSX).
1883
1884
1885### Fixed
1886- `keepTargetHover` was hiding tooltip when transiting hover from one `Sprite` to another.
1887- Firefox was not displaying texts along paths on a page with `base href` set, due to Firefox [bug](https://bugzilla.mozilla.org/show_bug.cgi?id=455986).
1888- `SunburstSeries` with 0 values were producing a JS error.
1889- Width (or height if vertical) of `Scrollbar`/`Slider` was always 100%, even if it was set to less than 100%.
1890- `WordCloud` with long labels that did not fit into container could get into infinite loop and never get drawn.
1891- If a lot of `GaugeChart` instances with axis bands were rendered on a single page, stack owerflow error could happen.
1892- Adding data to a chart with `XYChartScrollbar` and series in the scrollbar forced full-redraw of scrollbar chart which was making it blink.
1893- Z-indexing of `ColumnSeries3D` columns was incorrect in some cases.
1894- Tooltip of a 3D slice was not in the center of a slice.
1895- Changing of Series' name was not propagating to legend.
1896
1897
1898## [4.4.6] - 2019-05-14
1899
1900### Fixed
1901- Vertical/horizontal bullet positions on `ColumnSeries` were broken since `4.4.5`.
1902
1903
1904## [4.4.5] - 2019-05-13
1905
1906### Changed
1907- Exporting chart data to JSON format now respects `dataFields` setting.
1908
1909### Fixed
1910- Setting `showSystemTooltip = false` on a `Scrollbar` now correctly disables tooltips on its thumb and grips.
1911- When data for `ForceDirectedSeries` was changed for the second time, the old links remained visible.
1912- Initial scatter of `ForceDirectedSeries` nodes reduced. Results in a better initial animation.
1913- Adding data using `addData()` method to a chart with `XYChartScrollbar` was resulting data to be added twice.
1914- With some special combination of axes config `XYChart` sometimes could fall into infinite loop.
1915- Some JS error when converting coordinates out of bounds of AlbersUSA projection fixed.
1916- Tooltip bounds were not being copied when cloning a `Tooltip`.
1917
1918
1919## [4.4.4] - 2019-05-08
1920
1921### Fixed
1922- When data for `ForceDirectedSeries` was changed the old links remained visible.
1923- Legend with custom data was causing a JS error.
1924- Changing data during `rangechangeended` with `skipEmptyPeriods` enabled was triggering "Cannot read property 'getTime[ of undefined" exception.
1925- Slices of `SunburstSeries`, and columns of `TreeMapSeries` were not taking `propertyFields`/`configField` from data.
1926
1927
1928## [4.4.3] - 2019-05-06
1929
1930### Added
1931- `Regression` plugin: two new settings - `simplify` (simplifies output data for faster performance) and `reorder` (orders data in a horizontal linear fashion for scatter plots).
1932- `arrangestarted`, `arrangeended`, and `arrangeprogress` events added to `WordCloudSeries`. Allows showing preloader while building the chart.
1933
1934### Changed
1935- `keepSelection` behavior extended. Now it will keep `ValueAxis` selection while scrolling a perpendicular `DateAxis` or `CategoryAxis`.
1936
1937### Fixed
1938- `Regression` plugin: fixed issue with gaps in data.
1939- Panning chart with `CategoryAxis` out of range, the axis could pan back with one less category in the range when released.
1940- In some cases labels with `bent = true` on `AxisLabelCircular` were positioned incorrectly on `RadarChart`'s Axis ranges.
1941- Safari was not displaying base grid of Y axis in some cases.
1942- Chart could freeze if there was a very small difference between minimum and maximum values of `ValueAxis` (less than 0.00000001).
1943- If `WordCloud` was hidden while arranging words, and then unhidden, the words would overlap in some cases. Arranging of words now stops if container is hidden during the process and resumes when it is unhidden.
1944- 3D columns were cut off on IE if the size of Chart container changed after the chart was already build.
1945- In some setups with `<base href>` some elements were being drawn incorrectly.
1946
1947
1948## [4.4.2] - 2019-05-02
1949
1950### Added
1951- New property for `Label`: `baseLineRatio` (default `-0.27`) controls how "base line" for a label is calculated, and affects positioning of text. The default might not work for all fonts, so this setting can be used to adjust it for precise positioning.
1952- New event for `Sprite`: `"dragged"`. It kicks in right after `"drag"` and can be used to manipulate or correct element's position, which might not be possible using `"drag"` which has built-in position-altering handlers.
1953
1954### Fixed
1955- Export to SVG was not working on Firefox.
1956- Some touch issues wit iOS Safari fixed.
1957- `ValueAxis` could display non-rounded numbers (caused by floating point problem) sometimes.
1958- `maxPanOut` of `MapChart` was being ignored.
1959- Chart scrollbar was not being zoomed out when data of a chart changed.
1960- `RadarChart` with multiple `RadarColumnSeries` with Y as base axis was displaying columns of a 2nd+ series from wrong position.
1961- `chart.dispose()` with a lot of data was very slow. Now it's super fast.
1962- Zoom with mouse wheel was buggy when zooming already zoomed-in `XYChart`.
1963- Gant chart was not updating columns when `chart.invalidateRawData()` was called.
1964- Issue with some `propertyFields` set on a `LineSeries` with no data fixed.
1965- Reseting `relativeRotation` of `AxisLabelCircular` to `undefined` didn't work.
1966
1967
1968## [4.4.1] - 2019-04-22
1969
1970### Changed
1971- Now when using `CSVParsing` for parsing external data, `skipRows` will kick in first, removing X rows from the beginning of data, then `useColumnNames` will use the first row of what's left.
1972
1973### Fixed
1974- JSON: Specifying language locale as string (i.e. "fr_FR") now works in JS setups, provided appropriate language file is loaded.
1975- Grab/Grabbing cursor was not appearing on Scrollbars on Firefox.
1976- `MapChart` used to pan itself when it was zoomed in, `tapToActivate` enabled, and was tapped.
1977- Hovering mouse cursor over an `XYChart` while it was initializing could sometimes result in a JS error.
1978- Issue with `DateAxis` and `Series` not having dates at certain data items fixed. It was cousing problems with multiple date axes mostly.
1979
1980
1981## [4.4.0] - 2019-04-17
1982
1983### Added
1984- Charts now have new property - `tapToActivate` (default: `false`). If set to `true` it will not react to touch drag gestures until user taps on the chart. [More info](https://www.amcharts.com/docs/v4/concepts/touch/).
1985- New element on charts: `dragGrip`. It's a grip that, when enabled, will allow scrolling the page even if the chart functionality does not permit it, e.g. with chart cursor or `MapChart`. [More info](https://www.amcharts.com/docs/v4/concepts/touch/).
1986
1987### Fixed
1988- `NumberFormatter` in charts was ignoring locale settings.
1989- `TreeMap` could crash across data update.
1990- In some situations `XYCursor` with `"panX"` behavior would not allow panning the chart completely to the edge of data.
1991
1992
1993## [4.3.15] - 2019-04-16
1994
1995### Added
1996- `startendchanged` event added to `Component`. Fired when `start` or `end` is changed. Unlike `startchanged`/`endchanged` this event is fired not immediately but at the end of a cycle.
1997
1998### Changed
1999- `Sunburst` chart's defaalt `radius` set to `95%`.
2000
2001### Fixed
2002- `TreeMap` could produce a JS error if data was changed during interaction with the map.
2003- If `Component.addData()` called before chart was initialized, error happened.
2004- 3D columns with reversed base axis had wrong z-indexes.
2005- `DateAxis`-based chart with single data item got into infinite loop if `startLocation` and `endLocation` were set to `0.5` or `strictMinMax` was set to `true`.
2006- Tooltips of series could overlap if series used different `DateAxis` axes.
2007- Chart with multiple `DateAxis` and no animated theme was not properly zooming with scrollbar.
2008- Implemented a workaround for MSIE which was not updating series masks on chart resize.
2009- Disposing `XYCursor` will now remove series/axes tooltips that might be currently displayed because of it.
2010
2011
2012## [4.3.14] - 2019-04-13
2013
2014### Added
2015- New `SliceGrouper` setting: `syncLegend` (default `false`). If set to `true` the legend will be updated dynamically to show only those slices that are currently visible.
2016- Plugin `Regression`: new property `result` will store all the results including formula and caculated points.
2017- Plugin `Regression`: plugin now has `events` which can be used to attach event handlers such as `"processed"`.
2018
2019### Fixed
2020- `Animation` was failing when source value was string (i.e. "auto") and target value was number (i.e. 10).
2021- JSON: Object entries in a `List` were not being their properties set.
2022- `MapChart` sometimes could place Map images at incorrect positions.
2023
2024
2025## [4.3.13] - 2019-04-10
2026
2027### Fixed
2028- Using `propertyFields.url` was forcing pointer cursor on all objects from the same template, even if they did not have url set.
2029- Memory leak with dynamic changes of data on `TreeMap`.
2030- `getPoint()` method of `XYSeries` is now public.
2031- Setting `startAngle`/`endAngle` before adding `PieSeries` was causing it to not be drawn.
2032- Performance tweaks to 3D columns.
2033
2034
2035## [4.3.12] - 2019-04-09
2036
2037### Changed
2038- Series' `bullets` now accepts objects that are simple `Sprite` elements, not just `Bullet` types. This means you can add `Circle` as bullet (or any other element), to dramatically improve performance on bullet-heavy charts.
2039- Default value of `hideOversized` for `LabelBullet` changed to `false`.
2040
2041### Fixed
2042- Dramatically improved performace of `CategoryAxis`.
2043- `SliceGrouper` plugin will now not add "Other" slice if there are no slices below threshold or no data at all.
2044- `SliceGrouper` now supports dynamic data updates.
2045- `ColorSet.reuse = true` was working incorrectly for `PercentSeries`.
2046- `timezoneOffset` property of the Date Formatter was causing all minutes to be formatted as zeroes.
2047
2048
2049## [4.3.11] -2019-04-08
2050
2051### Added
2052- New plugin: `SliceGrouper` (allows automatically grouping small slices on any `PercentSeries`, e.g. Pie, Funnel, Pyramid, or Pictorial Stacked). [More info](https://www.amcharts.com/docs/v4/tutorials/plugin-slice-grouper/).
2053
2054### Changed
2055- Changed `centerStrength` default was changed to `0.8` in `ForceDirectedSeries`.
2056
2057### Fixed
2058- Zero-value 3D columns were not visible on `DateAxis`.
2059- `FunnelSeries`'' labels were out of bounds sometimes.
2060- `Regression` plugin was not working when data was set directly on Series.
2061
2062
2063## [4.3.10] - 2019-04-08
2064
2065### Changed
2066- Corner radius is not supported anymore on 3D slices. A sacrifice towards performance.
2067
2068### Fixed
2069- Performance of `PieChart3D` improved dramatically.
2070
2071
2072## [4.3.9] - 2019-04-06
2073
2074### Added
2075- `ForedDirectedSeries` properties `minRadius` and `maxRadius` can now be set in `Percent`.
2076
2077### Changed
2078- Default value of `ForceDirectedLink.strength` changed to `1` to avoid initial shaking.
2079- Default value of `ForceDirectedSeries.manyBodyStrength` changed to `-15`.
2080- Default values of `ForceDirectedSeries` properties `minRadius` and `maxRadius` changed to `1%` and `8%` respectively.
2081
2082### Fixed
2083- In `ForedDirectedSeries` the same color was being reused for top-level node and first child node.
2084- It was impossible to set colors of `ForedDirectedSeries` data items via data.
2085- `ColorSet` setting `reuse = true` was acting incorrectly.
2086
2087## [4.3.8] - 2019-04-05
2088
2089### Added
2090- New chart type plugin: `ForceDirectedTree`. [More info](https://www.amcharts.com/docs/v4/chart-types/force-directed/). Also check bundled examples: `force-directed-tree`, `force-directed-tree-expandable`, and `force-directed-network`.
2091- New `CategoryAxis` property: `positionToCategory(position)`.
2092
2093
2094## [4.3.7] - 2019-04-04
2095
2096### Fixed
2097- `TreeMap` was erroring out since `4.3.6` unless "animated" theme was enabled.
2098- On `TreeMap`'s legend with default markers `valueLabels` was not working on first load.
2099
2100
2101## [4.3.6] - 2019-04-04
2102
2103### Added
2104- New `DateFormatter` property: `timezoneOffset`. Set it to a number of minutes (to UTC) to recalculate all date/time to a specific time zone.
2105
2106### Changed
2107- `DateFormatter` will now use locale information for its default date format set in `dateFormat`. Format in default "International English" locale did not change, and remains at `"yyyy-MM-dd"`. Other locales might or might not produce different date formats.
2108- Improved `ValueAxis` scale calculation algorithm when `min`/`max` is set.
2109- `"hit"` event is now added on `FlowDiagramNode` template instead of the class itself. This allows disabling default toggle/drag behavior and replacing with own events.
2110
2111### Fixed
2112- Themes were not properly being applied to bullets.
2113- `Popup.draggable` was being ignored.
2114- `Series.legendSettings.itemValueText` was being ignored when `cursorTooltipEnabled = false`. #1141
2115- Mouse events over `LineSeries` segments where happening at wrong position.
2116- `legend.valueLabels` on `TreeMap` did not work.
2117- Changing Map projection with `panBehavior = "rotateLongLat"` could cause a JS error.
2118- Changing `TreeMap` data after chart size changed could cause zoom-out button to appear.
2119- Solved flickering of stacked columns when raw data was invalidated.
2120- Updating data of a `TreeMap` when animation was playing could result in a JS error.
2121
2122
2123## [4.3.5] - 2019-03-29
2124
2125### Added
2126- New properties `strokeLinejoin` ("miter" | "round" | "bevel") and `strokeLinecap` ("butt" | "square" | "round") added to `Sprite`. [More info](https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Fills_and_Strokes#Stroke).
2127
2128### Fixed
2129- In some rare cases EDGE/IE could generate an "Unspecied error".
2130- `MapChart` method `zoomToMapObject()` was not functioning properly since `4.3.4`.
2131- `LineSeries` with bullet and `hidden = false` in init was causing the whole chart to break.
2132
2133
2134## [4.3.4] - 2019-03-28
2135
2136### Fixed
2137- Issue with JSON setups for `MapChart` fixed.
2138
2139
2140## [4.3.3] - 2019-03-27
2141
2142### Fixed
2143- `MapPolygonSeries.geodataSource` was not working.
2144- `MapChart` was not showing data if `geodata` was set later than data on series.
2145- When there were multiple data items with identical timestamps on `DateAxis`, the first ones could have been ignored.
2146- Even if `legend.itemContainer.template.togglable` was set to `false`, Legend item was stil togglable.
2147- Extra graticules (grid) was shown in `GraticuleSeries` unders some conditions.
2148- Tooltips on a logarithmic `ValueAxis` were showing wrong values.
2149- Value label for "0" could sometimes appear on top of logarithmic `ValueAxis`.
2150- `MapChart` position was not correct if padding was set.
2151
2152
2153## [4.3.2] - 2019-03-26
2154
2155### Fixed
2156- `MapChart` dispose error fixed.
2157
2158
2159## [4.3.1] - 2019-03-26
2160
2161### Fixed
2162- Bug with live data updates fixed.
2163
2164
2165## [4.3.0] - 2019-03-26
2166
2167### Added
2168- `MapChart` can now use any projection supported by [d3-geo](https://www.npmjs.com/package/d3-geo). `Projection.d3Projection` property added and you can set any d3-geo projection using it, like: `mapChart.projection.d3Projection = am4maps.d3geo.geoConicEquidistant();`.
2169- Albers, AlbersUsa, AzimuthalEqualArea, EqualEarth, NaturalEarth1, Stereographic projection classes added (use them regularly like: `mapChart.projection = new EqualEarth()`).
2170- `deltaLatitude`, `deltaGamma` added to `MapChart`. Together with already existing `deltaLongitude` allows rotating maps in any possible direction.
2171- `panBehavior` property added to `MapChart`. Values: "move" (default), "rotateLat", "rotateLong", "rotateLongLat". Indicate what should happen when map is dragged.
2172- `ignoreBounds` added to `MapSeries`. Specifies if this series must be included when calculating bounds of the map.
2173- `calculateVisualCenter` added to `MapPolygonSeries`. Specifies if map polygons should calculate their visual center. Visual center is good for placing labels.
2174- `visualLongitude` and `visualLatitude` getters added to `MapPolygon`. They return coordinates if `calculateVisualCenter` of series is set to `true`. You can also set them manually.
2175- `getCircle()` and `getBackground()` methods added to `MapUtils`.
2176- `Graticule` and `GraticuleSeries` classed added. Those allow creating graticules (map grid).
2177- `backgroundSeries` added to MapChart. Allows creating a map-shaped background fill.
2178
2179### Changed
2180- Engine behind rendering of maps was changed to use [d3-geo](https://www.npmjs.com/package/d3-geo).While the change should be backwards compatible, beware of and report any issues.
2181- `day-night-map` and `morphing-countries` demos we changed to work properly with new version.
2182- When adding a `HeatLegend` to `MapChart` its `valign = "bottom"` is no longer set by default. Set it explicitly if you need legend to bottom-aligned.
2183
2184### Fixed
2185- `rtl` setting was not being inherited properly.
2186- Fixed RTL behavior for labels.
2187- Disposing a hovered chart with scroll pan enabled used to leave whole document with disabled wheel scroll.
2188
2189
2190## [4.2.6] - 2019-03-21
2191
2192### Fixed
2193- `CategoryAxis` was breaking down after dynamic data update since 4.2.4.
2194
2195
2196## [4.2.5] - 2019-03-21
2197
2198### Added
2199- New property `minPolylinestep` added to global `am4core.options`. Setting to bigger value (default: `0.5`) allows simplification of multi-point lines.
2200- Export: new setting `useSimplifiedExport` (default: `true`). Setting to `false` will force use of external library (canvg) for all exports.
2201
2202### Fixed
2203- `XYCursor` with pan behavior used to remain in "grabbing" mode after click on zoom out button.
2204- Export: Menu was not working properly on Mobile Safari.
2205- Export: Menu was not working properly on Android Chrome.
2206- Export: Exporting of PDF/XSLX is now supported on Mobile Safari.
2207- Export: Exporting images in IE9 was broken.
2208- Stacks with pre-hidden series were showing incorrectly.
2209- `DateAxis` no longer ignores `renderer.tooltipLocation`.
2210
2211
2212## [4.2.4] - 2019-03-19
2213
2214### Added
2215- `autoGapCount` added to `LineSeries`. If `connect = false` and distance between two data points is bigger than `baseInterval * autoGapCount`, a line will break automatically.
2216
2217### Fixed
2218- `IPlugin` now accepts `Optional<Sprite>`.
2219- `XYCursor` will not longer obstruct page scroll if its `behavior` is set to `"none"`.
2220- JSON config: setting `geodata` by name (e.g. "worldLow") directly in `MapSeries` was not working.
2221- JSON config: Instantiating new `ColorSet` objects was not working properly.
2222- `DateFormatter` was not parsing dates like "20180101" (no separators) correctly.
2223- An issue with `DateAxis` and milliseconds fixed.
2224- `dataItem.locations.dateX` on `LineSeries` was not working properly.
2225
2226
2227## [4.2.3] - 2019-03-14
2228
2229### Fixed
2230- Exporting via API from a chart that did not have `ExportMenu` set, was resulting in error.
2231- Fixed tooltip flickering that were set directly on series objects (columns/bullets).
2232- Because of daylight saving, sometimes `DateAxis` could mistake yearly data for monthly data if `baseInterval` was not set explicitly.
2233- Sometimes Sankey nodes did not perfectly fit into chart area.
2234- Tick `location` on Y axis was being ignored.
2235- Ticks were positioned incorrectly when multiple axes were on the same side of the `XYChart`.
2236- Issue with `strictMinMax` and single data item fixed.
2237- `valueY` (or any other value) wasn't working in `legendSettings.itemLabelText`.
2238
2239
2240## [4.2.2] - 2019-03-13
2241
2242### Added
2243- `cursorHoverEnabled` added to `XYSeries`. Controls whether to trigger hover state on columns/bullets of the all series under hovered category/date.
2244- A new `plugins` property on all `Sprite`. [More info](https://www.amcharts.com/docs/v4/concepts/plugins/).
2245- New plugin: Regression. [More info](https://www.amcharts.com/docs/v4/tutorials/regression-trend-lines/).
2246- New `ExportMenu` setting: `closeOnClick` (default `true`). Will force export menu to close when export is initiated.
2247
2248### Changed
2249- `DateFormat` will now parse even partial dates, e.g. format `"yyyy-MM-dd"` will parse `"2018"` correctly, and will assume Jan 1st.
2250
2251### Fixed
2252- Export: `getImage()`/`getSVG()` will now correctly omit `exportable = false` elements.
2253- Export: Data export was not taking in additional columns after data updates.
2254- Some chart cloning issues fixed.
2255- Inccorrect behavior of Series' tooltip with `minBulletDistance` set fixed.
2256- Sometimes, when series had only one data item, chart used to zoom-in right after the init.
2257- In-line date formatting will now use `DateFormatter`'s parsing functions for string-based dates.
2258- `DateAxis` issues with certain timezones fixed.
2259
2260
2261## [4.2.1] - 2019-03-08
2262
2263### Fixed
2264- Various graphical issues when using `<base>` tag (mostly affects Angular).
2265- `NumberFormatter` did not have a public accessor to set `negativeBase`.
2266
2267
2268## [4.2.0] - 2019-03-06
2269
2270### Added
2271- Added read-only property of `CategoryAxis`: `frequency`. Indicates every X label is shown.
2272- Added JSON example of Candle stick chart (json/candlestick-series).
2273- New `Export` property: `extraSprites`. May contain a list of references to other `Sprites` (e.g. external legend or even other chart) to attach to exported image. [More info](https://www.amcharts.com/docs/v4/concepts/exporting/#Including_external_elements).
2274- Experimental responsive features and default rules are now active. [More info](https://www.amcharts.com/docs/v4/concepts/responsive/).
2275
2276### Changed
2277- Accessibility: Default role of the Legend's item containers was changed to "switch".
2278
2279### Fixed
2280- Accessibility: Legend's containers when toggling items were setting value of `aria-checked` incorrectly.
2281
2282
2283## [4.1.14] - 2019-03-01
2284
2285### Changed
2286- Hiding or showing an element will now automatically set its `readerHidden` attribute accordingly.
2287
2288### Fixed
2289- JSON: Using `children` with an array value was duplicating elements.
2290- Working around a bug with Angular's dead code elimination in `--prod` mode.
2291- Fixed `ValueAxis` issue with animation when there's only single data item.
2292
2293
2294## [4.1.13] - 2019-02-26
2295
2296### Added
2297- New `Tooltip` proprety: `keepTargetHover` - will make target element hovered as long as its tooltip is hovered, good for bullets and map images.
2298- New `Tooltip` proprety: `targetSprite` - contains reference to element this tooltip is displayed for, if any.
2299- New `PictorialStackedSeries` properties: `startLocation` and `endLocation` - allow setting relative start and end positions of the shape to fill.
2300- New `FunnelSeries`/`PyramidSeries`/`PictorialStackedSeries` property: `labelsOpposite` - allows controlling which side of the series to show labels when `alignLabels = true`.
2301
2302### Fixed
2303- Sometimes axis ticks on a chart with a lot of data/series were not positioned properly.
2304
2305
2306## [4.1.12] - 2019-02-25
2307
2308### Changed
2309- On `MapPolygon` default value of `nonScalingStroke` is now set to `true` (as `false`).
2310- When calculating font size for a word on a `WordCloud` chart it now uses smaller side of the series area instead of height.
2311- `Tooltip`'s label `paddingBottom` default value changed from `6` to `4` pixels for better centering of text.
2312
2313### Fixed
2314- Sometimes `baseInterval = "year"` on a `DateAxis` could cause stack overflow.
2315
2316
2317## [4.1.11] - 2019-02-25
2318
2319### Changed
2320- Default value of `minFontSize` in `WordCloudSeries` to `2%`.
2321- Default value of `maxFontSize` in `WordCloudSeries` to `20%`.
2322- Label sizing algorithm updated in `WordCloudSeries`.
2323
2324
2325## [4.1.10] - 2019-02-24
2326
2327### Added
2328- New chart type: [WordCloud](https://www.amcharts.com/docs/v4/chart-types/wordcloud/).
2329
2330### Changed
2331- Rotated axis labels (`rotation != 0`) of the vertical and horizontal axes no longer have their `verticalCenter` and `horizontalCenter` overridden by renderer. This gives more freedom for positioning rotated labels.
2332
2333### Fixed
2334- `exportable = false` was not working when set on various Series item templates.
2335- On Gantt chart date axis tooltip was snapping randomly when moving mouse.
2336- Export: For very large data sets (2MB and up) data export was failing silently in Chrome.
2337
2338
2339## [4.1.9] - 2019-02-20
2340
2341### Added
2342- New `Sprite` property: `baseSprite`. On objects, even deep in hierarchy it will contain a reference to the main chart object.
2343
2344### Changed
2345- Axis `min`/`max` calculation algorightm updated.
2346
2347### Fixed
2348- On a chart with `DateAxis` and multiple series with same-date data items, bullets could sometimes disappear while scrolling the chart.
2349- On `DateAxis` with yearly granularity could sometimes show wrong year.
2350- Updating chart `data` with less data points was sometimes resulting in JavaScript error.
2351- `DateAxis` labels/ticks/grid was not placed in the correct position if `baseInterval.count > 1` and `location > 0`.
2352- Dynamically changing `ZoomControl` value of `layout` was not working correctly.
2353
2354
2355## [4.1.8] - 2019-02-15
2356
2357### Added
2358- JSON: You can now specify both list of items and template settings for `ListTemplate`, e.g.: `titles: { template: { ... }, values: [{ ... }] }`. Specifying it the old way will still work.
2359
2360### Changed
2361- `DateAxis` will now pay attention to `dateFormatter.firstDayOfWeek` when grid is in "weekly" mode.
2362
2363### Fixed
2364- Using `proprtyFields` on a `LineSeries` sometimes could result in an error. (fix by @AndiLi99)
2365- French locale (fr_FR) updated for correct decimal/thousands separators.
2366- Export: `scale` in image export options was being ignored.
2367- JSON: `cursor.snapToSeries` was not working in JSON configs.
2368- Selection was acting funky when zooming `DateAxis` and cursor moved out of plot area.
2369- An infinite error message loop fixed which was happening if series was added and there was no X or Y axes defined.
2370- Tooltip on the last available data item was left visible even if cursor moved to the date where the series had no data points.
2371- When `snapToSeries` was enabled in `XYCursor`, vertical line was not shown.
2372- [Issue 933.](https://github.com/amcharts/amcharts4/issues/933)
2373
2374
2375## [4.1.7] - 2019-02-14
2376
2377### Fixed
2378- `DateAxis` sometimes could show date/time in UTC even if not explicitly enabled.
2379
2380
2381## [4.1.6] - 2019-02-12
2382
2383### Added
2384- New plugin chart type: [`Sunburst`](https://www.amcharts.com/docs/v4/chart-types/sunburst/)!
2385- New `Sprite` adapter: `criticalError`. Takes `Error` object as an argument. Modify it's `message` property.
2386
2387### Fixed
2388- Export was somewhat broken in Angular apps or pages with `<base>` since 4.1.5.
2389- `DateAxis` was not positioning elements properly when spanning switch to/from daylight savings time.
2390- `valign` property of the horizontal axis labels now work properly.
2391
2392
2393## [4.1.5] - 2019-02-11
2394
2395### Added
2396- New property `contextMenuDisabled` (default `false`) added to `Sprite`. If set to `true` it will prevent context menu (such as one displayed on right click) from displayed.
2397
2398### Changed
2399- Setting `data` on `ColorSet` will now automatically reset iterator.
2400
2401### Fixed
2402- `"rightclick"` event was essentially not working.
2403- Angular with router enabled were breaking charts in Safari and older Firefox.
2404
2405
2406## [4.1.4] - 2019-02-08
2407
2408### Added
2409- `DateAxis.gridInterval` accessor added. Returns current grid interval.
2410
2411### Fixed
2412- Calling `useTheme()` with the same theme multiple times used to cause that theme applied multiple times as well.
2413- Sometimes `ValueAxis` would not zoom-out to show new selected range when data was updated.
2414- Sometimes axis fills were not visible after zoom-in / zoom-out.
2415- `totalPercent` was not properly calculated with negative values.
2416
2417
2418## [4.1.3] - 2019-02-06
2419
2420### Fixed
2421- `ExportMenu` items will be revalidated if data of the chart is updated. This helps avoid missing "Data" export items in menu if data is loaded later than the chart itself.
2422- In stacked axes setup axis tooltips were shown in wrong positions.
2423- Preloader was not always shown when needed.
2424- JavaScript error when hovering cursor over missing data items fixed.
2425- `TreeMap` data change performance improved.
2426- Horizontal `ZoomControl` (`layout = "horizontal"`) button text vertical align fix.
2427- Accellerated panning of zoomed-in axis problem fixed.
2428
2429
2430## [4.1.2] - 2019-02-05
2431
2432### Added
2433- New `Sprite` property `strokeDashoffset` added. Can be used in conjunction with `strokeDasharray`.
2434- `Label` has two new properties: `path` and `locationOnPath`. If set, will layout the SVG text along a curvature of the SVG path. HTML and multi-line text is not supported.
2435- `AxisLabelCircular` new property `bent` added. If set to `true`, the label will be bent to follow the curvature of the circle. Distance from the circle can be adjusted using `radius` and `label.paddingBottom`. For `PieSeries` the alignLabels need to to be set to `false` for this feature to work.
2436
2437### Fixed
2438- JSON: Having property values with both percent and minus signs in them, was resulting in error.
2439- "Z" code in `DateFormatter` was not taking UTC setting into account.
2440- Exporting SVG with Unicode characters in Edge/IE was resulting in invalid SVG.
2441- Fixed JavaScript error which used happen when disposing chart/changing data in some cases.
2442- Gantt chart sometimes was not displaying first/last data item.
2443- Newly added `MapLine` elements were not respecting `nonScalingStroke = true` until zoom level changed.
2444- Series' tooltip was not always visible with `DateAxis`.
2445
2446
2447## [4.1.1] - 2019-01-31
2448
2449### Added
2450- `keepSelection` added to `ValueAxis` (will work on DateAxis too). With this set to `true`, axis will keep the relative selection when data changes (is updated). This is useful for "pre-zooming" a date axis: just set it's `start` property (e.g. `axis.start = 0.8`).
2451
2452### Changed
2453- If `ValueAxis` has `strictMinMax = true` set but `min` and `max` are not set, axis will fix the min and max and real high/low values.
2454
2455### Fixed
2456- `cursorTooltipDisabled = true` was not working properly in some cases.
2457- Sometimes duplicate `MapLineObjects` used to appear on map lines.
2458- Some fixes made so that vertically and horizontally stacked axes on `XYChart` are now possible. Check new example in `examples/vertically-stacked-axes`.
2459
2460
2461## [4.1.0] - 2019-01-30
2462
2463### Changed
2464- Standalone scripts were recompiled to use unique Webpack scope, to avoid conflicts with other Webpack packages. If you are using map charts, to avoid breakage, make sure you update to 4.1 version of geodata package as well.
2465
2466### Fixed
2467- Performance optimizations of date-based charts, especially with more than one series.
2468- Overlapping tooltips of series with gaps in date-based data fixed.
2469- Bullets were not hidden when series was hidden in some cases.
2470- `simplifiedProcessing` moved from `ColumnSeries` to `Series`. If set to `true` (default `false`) the chart will not auto-calculate derivative values for data items, like sum, average, change, etc.
2471- Last grid of monthly data was not always drawn.
2472
2473
2474## [4.0.24] - 2019-01-25
2475
2476### Fixed
2477- `nonScalingStroke` (broken in 4.0.23) fixed.
2478- Legend custom adapters problem (broken in 4.0.23) fixed.
2479
2480
2481## [4.0.23] - 2019-01-25
2482
2483### Changed
2484- `PieChart3D` property `angle` is now limited to 0-90 range.
2485
2486### Fixed
2487- `LabelBullet` was not showing text on `RadarChart` without some additional tweaking.
2488- Clicking and releasing on plot area without moving cursor sometimes could result in chart zooming in.
2489- Bullets for `PieSeries`, `FunnelSeries` were not positioned properly.
2490- Labels of `PieSeries3D` were not being positioned properly if `alignLabels = false` and `label.radius < 0`.
2491- Axis' grid was not hidden when axis was hidden.
2492- It was not possible to disable funnel series ticks if `alignLabels = true`.
2493- Adding a `MapLine` on zoomed `MapChart` ignored `nonScalinStroke = true` until zoom.
2494- On Gantt chart horizontal axis' labels/grid used to bleed out outside the plot area when zoomed in significantly.
2495- Columns of `ColumnSeries` with `strokeOpacity > 0` could leave lines at the beginning/end of the plot area when zoomed-in.
2496- Adapters for `fontSize`, `textDecoration` and some other `Label`-related properties were not working properly.
2497- Chart legend was not updated if data was set directly on `PercentSeries`.
2498- `MapChart` was drawing only 109 MapLines in some cases.
2499- `MapLine` tooltip was not being positioned properly.
2500- When `invalidateRawData()` was called for a chart with a `DateAxis` while it was zoomed-in, the chart was not keeping current zoom.
2501- If data was added to a series while it was hidden, bullets of new data items were not hidden.
2502- `columns` of `ColumnSeries` were not being cleared when data was updated.
2503- `propertyFields.fill`/`stroke` was not respected when value was outside zoom range.
2504- Ticks on a `PieChart3D` were misaligned.
2505- `Preloader` of a second and any subsequent chart on the same page was not being centered.
2506- `PercentChart` legend markers where black if `legend.useDefaultMarker = true`.
2507- `PercentChart` legend markers could blink black initially before obtaining true color.
2508- The color scale on a vertical `HeatLegend` with `markersCount > 2` was being drawn reversed.
2509
2510
2511## [4.0.22] - 2019-01-23
2512
2513### Added
2514- 23 new locales: Arabic, Bosnian, Catalan, Czech, Greek, Estonian, Finnish, Hebrew, Hindi, Croatian, Hungarian, Indonesian, Japanese, Korean, Latvian, Polish, Romanian, Serbian, Thai, Turkish, Vietnamese, Chinese (simplified and traditional versions). Thanks Bjorn Svensson!
2515
2516### Fixed
2517- It is no longer necessary to use `"strictFunctionTypes": false`, [thanks to goloveychuk for their help](https://github.com/amcharts/amcharts4/pull/645).
2518- Broken images were causing export to fail.
2519- Setting Series' `name` to a number with percent sign was resulting in breakage of the whole chart.
2520
2521
2522## [4.0.21] - 2019-01-11
2523
2524### Fixed
2525- Issues that caused errors in Map an Percent charts on data update and dispose fixed.
2526
2527
2528## [4.0.20] - 2019-01-11
2529
2530### Fixed
2531- Chart with `ColumnSeries` was failing with an error when `data` was updated.
2532
2533
2534## [4.0.19] - 2019-01-11
2535
2536### Fixed
2537- `MapLineSeries` with direct `data` set were somewhat broken since last update.
2538
2539
2540## [4.0.18] - 2019-01-10
2541
2542### Added
2543- JSON: Better id checking and error reporting.
2544
2545### Fixed
2546- Export menu no longer shows DATA menu for `MapChart` (and other charts if data is empty).
2547- JSON: Some empty properties like `dummyData` were not being set properly.
2548- Disposing a chart or series when `Legend` was enbled was resulting in error.
2549
2550
2551## [4.0.17] - 2019-01-09
2552
2553### Fixed
2554- Dramatically improved performance for data-heavy charts (with 10s and 100s of thousands of data points).
2555- `SmallMap` viewport indicator rectangle was positioned incorrectly.
2556- Clicking on `SmallMap` was not moving map to corthis.component.rect location.
2557- Lines from GeoJSON were not drawn by `MapLineSeries`.
2558- Issue with multiple data points on the same date fixed (not all data points were visible at the end of selection).
2559
2560
2561## [4.0.16] - 2019-01-05
2562
2563### Added
2564- New locales: Norwegian Bokm? (np_NO), Danish (da_DK).
2565
2566### Changed
2567- Renamed Swedish locale to `sv_SE`.
2568
2569### Fixed
2570- Interactions on MacOS Safari was broken sincle last update.
2571
2572
2573## [4.0.15] - 2019-01-04
2574
2575### Added
2576- `color` property added to `LegendDataItem`. Can be used for coloring `label` or `valueLabel` text like `text = "[{color}] {name}"`.
2577- `minZoomCount` added to `Component`.
2578- Export now allows formatting numberic values as durations. Use newly added `durationFields` and `durationFormat` settings.
2579
2580### Changed
2581- Export: When exporting date to XLSX, date fields will now export as true date fields in Excel (which in turn will format them according to regional settings), unless `useLocal` is set to `false`.
2582
2583### Fixed
2584- Charts were not working properly in FireFox Extended Support Release.
2585- Some computer setups were not properly registering mouse movement.
2586- `legendSettings` was being ignored initially if legend was in external container.
2587- "Week year" (format code `"YYYY"`) was not being properly calculated.
2588
2589
2590## [4.0.14] - 2019-01-02
2591
2592### Added
2593- New setting `zoomStep` added to `MapChart`. Allows controlling zoom in/out speed.
2594
2595### Fixed
2596- `Series.hidden` did not work as expected.
2597- World map did not work in Ember.
2598- Eliminated multiple warnings in recent version of Chrome regarding wheel events being active.
2599- Fixed mousewheel zoom in IEs.
2600- Draggable/resizable items were not working properly on some Android browsers.
2601- Setting `height` to a relative value for a horizontal `ColumnSeries` column template was not working propertly.
2602
2603
2604## [4.0.13] - 2018-12-26
2605
2606### Fixed
2607- Charts were broken in IE9.
2608
2609
2610## [4.0.12] - 2018-12-24
2611
2612### Fixed
2613- Cursor/mouse operations were somewhat broken in IE11 and lower.
2614
2615
2616## [4.0.11] - 2018-12-24
2617
2618### Added
2619- `"disabled"` and `"enabled"` events added to `Sprite`.
2620- `cursorTooltipEnabled` added to `XYSeries` If set to `false` cursor will not trigger bullet/item tooltips on series.
2621
2622### Changed
2623- IMPORTANT (CODE-BREAKING CHANGES) For performance reasons we no longer create axis elements if they are disabled. For the same reasons we disabled by `axis.ticks` and `axis.axisFills` by default. Previously to enable them you had to set their `strokeOpacity` and/or `fillOpacity` to non-zero. This no longer will work. You will need to set `disabled` to `false` instead.
2624- `axisRanges` now take their default values from `dateAxis.axisRanges.template` items (`axisFill`, `grid`, `tick`, `label`). Previously they were using the defaults from `dateAxis.renderer.label` etc. This was not comfortable and counter-intuitive.
2625
2626### Fixed
2627- `XYChartScrollbar`'s value axis was calculating `min`/`max` with a very big step.
2628- Ember plugin was throwing console errors.
2629- Fixed occasional zoom-in issue on Mobile Safari.
2630- `MapChart` mouse wheel zoom direction was inverted on some browsers.
2631- Cursor was not snapping correctly to `DateAxis` items.
2632- Multiple floating columns on the same category were disappearing when scrolling the chart.
2633- Date range fills were off when zooming on Gantt Chart.
2634- Overlapping tooltips problem solved.
2635- When `snapToSeries` was set for a tooltip, it was flickering a lot on slower browsers.
2636- `alignLabels = false` on a `PieSeries3D` was causing labels to be positioned incorrectly.
2637- `PieSeries.dataFields.radiusValue` was not accounting for `chart.innerRadius`.
2638- Dynamically updating `alignLabels` for `PieSeries` did not work correctly.
2639- Legend: `itemValueText` only worked if `valueText` was set.
2640- `ValueAxis` setting `maxZoomFactor = 1` was not working as expected.
2641- Changing values for all data items sometimes was resulting in `ValueAxis` scale going into negative.
2642- Some more tooltip and cursor related issues fixed.
2643- Axis Fill did not properly fill the whole span when axis was scaled.
2644
2645
2646## [4.0.10] - 2018-12-20
2647
2648### Fixed
2649- In some situations, when `geodataSource` had events set, it was producing error.
2650- `DateAxis` was not rounding intervals properly, could display grid at `15:01`, `15:31` etc.
2651- Cloning an object was cloning sometimes was causing event handlers to be duplicated.
2652- A leftover console debug line was removed.
2653
2654
2655## [4.0.9] - 2018-12-19
2656
2657### Added
2658- `snapToSeries` added to `XYCursor`. Allows setting series to which cursor lines should be snapped. Works if one of the axis of the series is `DateAxis` or `CategoryAxis`. Won't work if both axes are `ValueAxis`.
2659- New example: Pie charts in Columns using JSON config.
2660- Export: `emptyAs` added to both CSV and Excel export options. If set, missing values will be replaced with this value (default is empty string).
2661- New event `"beforedisposed"` added to `Sprite`. Kicks in right before the element starts to dismantle itself.
2662- Italian translation.
2663
2664### Changed
2665- Export: if no `dataFields` specify it will now look for fields in all of the data, not just the first line.
2666- When creating a new state on an object, it will not automatically propagate itself on object's clones if `applyOnClones = true`.
2667- Setting `Container`'s `setStateOnChildren` will now propage to the new value to its existing clones if `applyOnClones = true`.
2668- In case `deepInvalidate()` is called on `Container`, it forces labels to redraw.
2669- `filters` on `SpriteState` is now `List` (was `ListTemplate`). It's better for performance which does not require creating Filter template object.
2670
2671### Fixed
2672- Clicking a hoverable/clickable object was resultin in "over" and "out" events generated next to "hit".
2673- JSON: properties to existing `List` items were not being applied properly.
2674- Using geodata in Ember app was causing errors (Issue 672).
2675- Export to CSV/Excel was following first line of data values. It now respects `dataFields` setting, and will replace missing values with `emptyAs` (new options setting).
2676- Wheel-scrolling in MacOS Safari was very slow.
2677- HTML-based tooltips were too small to fit the actual contents on MaCOS Safari.
2678- `DateFormatter` was not parsing `"i"` format as local timezone, rather than UTC.
2679- Sometimes bullets with `Rectangle` element in them were not positioned properly.
2680- If category was named `"undefined"`, it was messing up label positions on `CategoryAxis`.
2681- State's property value was not being applied if current value of the property was `undefined`.
2682- Performance of `PieChart` and `RadarChart` improved dramatically under IEs.
2683- In some cases `"ready"` event was not being fired.
2684- `FunnelSeries` with 0 (zero) value slices was not rendered correctly.
2685
2686
2687## [4.0.8] - 2018-12-11
2688
2689### Added
2690- `currentStep` added to `ColorSet`. Allows setting current position of the color iterator.
2691- Adapters added for `Sprite` properties: `inertiaOptions`, `hitOptions`, `hoverOptions`, `swipeOptions`, `keyboardOptions`, `cursorOptions`.
2692
2693### Changed
2694- `nonScaling` of `AxisLabel` is no longer set to `true` by default, to improve performance.
2695
2696### Fixed
2697- `ValueAxis` was not updating its scale if series was hidden and animated theme was not enabled.
2698- Zooming an `XYChart` with all values equal was broken.
2699- Series in an `XYChartScrollbar` sometimes was not visible initially.
2700- `ColumnSeries` was drawing 1px line for `null` value data items.
2701- `DateAxis`' `snapTooltip = true` was working incorrectly with `skipEmptyPeriods = true`.
2702- Logarithmic `ValueAxis` with axis breaks was resulting in stack overflows.
2703- JSON: Chaining multiple adapters in an array (e.g. `adapter: [{...}, {...}]`), was not working.
2704- JSON: Adding elements to `children` via array syntax was not working properly.
2705- JSON: `Container` elements can now be created via JSON config.
2706- Setting `dataFields` in `Export` was only affecting column names. Values for all data fields were still being included in export.
2707
2708
2709## [4.0.7] - 2018-12-07
2710
2711### Added
2712- `snapTooltip` with default value `true` added to `DateAxis`. Cursor will snap to the nearest date at which series has values.
2713
2714### Changed
2715- Default value of `showOnInit` set to `false` for `TreeMapSeries`.
2716
2717### Fixed
2718- Solved tooltip overlapping bug.
2719- In `TreeMap`, when series is toggled off, remaining series will be resized to take up freed space.
2720
2721
2722## [4.0.6] - 2018-12-06
2723
2724### Added
2725- `snapTooltip` added to `XYSeries`, with default value `false`. If set to `true`, the series will show nearest available tooltip when cursor is over plot area.
2726- Slovenian translation.
2727
2728### Fixed
2729- Automatic `DateAxis` interval detection improved.
2730
2731
2732## [4.0.5] - 2018-12-06
2733
2734### Changed
2735- `DateFormatter` will now automatically format "negative" year values to "BC" (era) format. So not `"-1000"`, but `"1000BC"`. These are translatable via language.
2736- `DropShadowFilter` of the tooltip removed. Instead it is now applied on background of tooltip. This helps to avoid text distortion.
2737
2738### Fixed
2739- Heat rules were not working if all the values were the same. Now middle value between min and max is applied in this case.
2740- Updated algorithm to deal with date axes breaks. It's faster now and does not cause stackoverflow if the gaps are very big.
2741- Series on `HeatMap` charts were ignoring scrollbars.
2742- `DateAxis` was not properly placing labels if `location > 0` and grid interval was bigger than one time unit.
2743- `DateAxis` with very big date difference (thousands of years) displayed too many grid/labels/ticks.
2744- Masking of a sprite with a container updated. It now pays proper attention to container's position.
2745- Automatic `DateAxis` interval detection improved. Previously it detected intervals like minutes, hours, days, years. Now it will detect intervals like 15 min, 30 min, 5 days etc. This can still be set manually using axis' `baseInterval` property.
2746
2747
2748## [4.0.4] - 2018-12-03
2749
2750### Added
2751- `zoomLevel` and `zoomGeoPoint` properties added to `MapSeriesDataItem` and `IMapSeriesDataFields`. If set, these settings instead of automatically-calculated will be used when `zoomToMapObject()` method is invoked.
2752
2753### Changed
2754- `verticalCenter` and `horizontalCenter` is no longer applied to rotated axis labels. If you are setting `rotation` on axis labels, make sure to adjust these settings as well as per your requirement.
2755
2756### Fixed
2757- Setting `axis.renderer.inside` was ignored if set after chart was already initialized.
2758- Changing `align` of the a sprite was ignored if set after it was already initialized.
2759- Top level `TreeMap` segment tooltip was positioned incorrectly after drilling down and back up.
2760- `min`/`max` of `ValueAxis` was not being updated after `invalidateRawData()` call, and series were stacked.
2761- Tooltip sometimes was pointing outside chart container.
2762- `ChordLink` bullets were not properly positioned on init.
2763- `DateAxis` was not working well if `baseInterval.count > 1`.
2764
2765
2766## [4.0.3] - 2018-11-30
2767
2768### Added
2769- Ability to set default locale via `am4core.options.defaultLocale`. When set, all new charts will automatically assume that locale, freeing you from setting locale for each chart individually.
2770- `reverseOrder` added to `Container`. Allows reversing order of its `children`.
2771
2772### Changed
2773- Moved `Legend` of a `MapChart` from `chartAndLegendContainer` to `chartContainer`. In order to position legend on map chart, use `legend.align` / `legend.valign` properties.
2774- Default value of `showOnInit` on any `Series` is now `false`. Except if you are using "animated" theme, which sets it to `true` by default.
2775
2776### Fixed
2777- JSON: Using `type: "Sprite"` in JSON config was not creating elements properly.
2778- Initial chart rendering optimized Charts should build faster.
2779- Some more performance optimizations.
2780- Setting `hiddenInLegend` on `Series` after chart was already built had no effect.
2781
2782
2783## [4.0.2] - 2018-11-28
2784
2785### Added
2786- New method `setInterval()` on all base objects added. Works exactly like JS's `setInterval` but is automatically killed when target object is disposed.
2787- Added array utilities to `am4core`.
2788
2789### Changed
2790- Removed unused `"label"` adapter from `Axis`.
2791
2792### Fixed
2793- [Issue 588.](https://github.com/amcharts/amcharts4/issues/588)
2794- Fixed mouse wheel and zoom control zooming of a map which does not occupies all the div size.
2795- Fixed map scaling issues of a map which does not occupies all the div size.
2796- Sometimes axis labels were not formatted using number or other formatters.
2797- Adapters of data items were not being copied to clones.
2798- `text` property of `AxisDataItem` was not being copied to clones.
2799
2800
2801## [4.0.1] - 2018-11-24
2802
2803### Fixed
2804- Issues with stacked series and `min`/`max` of `ValueAxis` fixed.
2805- Chart cursor now dispatches `"panning"` event only if moved by at least 3 pixels. This solves problem with panning on click.
2806- If `extraMin`/`extraMax` were set on `ValueAxis`, some unnecessary zoom used to happen.
2807
2808
2809## [4.0.0] - 2018-11-22
2810
2811### Changed
2812- Droping BETA tag!
2813- `DropShadowFilter` will now always use balck by default instead of `"alternativeBackground"` from the theme.
2814
2815### Fixed
2816- Setting `hiddenInLegend = true` on Series was causing the chart to hang.
2817
2818
2819## [4.0.0-beta.87] - 2018-11-22
2820
2821### Added
2822- Full source code for amCharts 4 is now included under `/src/`.
2823
2824### Changed
2825- Full language files are now under `/src/lang/`. If you need to make a translation, do a PR on those files/dir.
2826
2827
2828## [4.0.0-beta.86] - 2018-11-20
2829
2830### Fixed
2831- In some situations waiting for `"ready"` event was producing unnecessary frame requests.
2832
2833
2834## [4.0.0-beta.85] - 2018-11-20
2835
2836### Added
2837- `"ready"` event added to `Sprite`. Sprite fires it right after `"init"` event. `Container` fires it when all of its children are ready.
2838- `system.isPaused` property added. Setting it to `true` will effectively pause any chart activity, making them completely static.
2839- `ErrorBullet` class added. Allows drawing error charts. (Check `error-chart` and `xy-error-chart` examples for code samples)
2840- JSON: String-based `cursorOverStyle` and `cursorDownStyle` are not supported.
2841
2842### Fixed
2843- JSON: Setting `ColorSet` properties `baseColor` or `list` was not working properly.
2844- Accessibility: Legend item was not properly referring to a Series via `labelled-by`.
2845- `Label.wrap` was breaking lines mid-word even if there where words that would fit into alotted space.
2846- Memory leak fixed.
2847- Sometimes `Animation` was not firing `"animationended"` event (when elastic easing was used).
2848
2849
2850## [4.0.0-beta.84] - 2018-11-18
2851
2852### Added
2853- `exportable` (default `true`) property added to `Sprite`. If set to `true` this element will not appear in the exported image of the chart.
2854
2855### Changed
2856- `exportable` is now set to `false` by default on `Scrollbar` grips, zoom out button.
2857
2858### Fixed
2859- JSON: `dateFormats` was being ignored.
2860
2861
2862## [4.0.0-beta.83] - 2018-11-15
2863
2864### Added
2865- [`hideOverflow`](https://www.amcharts.com/docs/v4/reference/svgcontainer/#hideOverflow_property) added to `SVGContainer` class. If set to `true` it will apply `overflow: hidden` to chart container so that all chart elements are contained within. Default is `false`, except on `MapChart`, which has it at `true`.
2866
2867### Fixed
2868- Some adjustments and fixes to animations associated with `hide()`/`show()` functions.
2869- If a legend was initially disabled, it was not appearing when enabled later.
2870- `chart.addData()` was not adding data to `XYChart` scrollbar series.
2871
2872
2873## [4.0.0-beta.82] - 2018-11-14
2874
2875### Added
2876- JSON: `forceCreate` property added. If found in an item of an array, it will force creation of the new object, even if object with same index already exists in target `List`.
2877- French locale.
2878
2879### Changed
2880- Adjusted animation durations in "animated" theme.
2881
2882### Fixed
2883- JSON: String-based percent and color values were not being parsed correctly in some cases.
2884- JSON: `HeatLegend` was erroring if its `series` property was referencing to Series by id.
2885- Disposing an item with a custom `id` set was not clearing it from id map properly resulting in errors if item with the same id was being added later.
2886- `SankeyDiagram` was not taking chart's padding into account when sizing itself.
2887- Axis ticks were not being positioned properly after data update.
2888- Map using `deltaLongitude` was being positioned incorrectly.
2889- 3D columns z-indexing was sometimes incorrect.
2890- `PieChart` label placement with custom `startAngle`/`endAngle` was sometimes off.
2891- Label bullets on columns were not being restored from truncated state when width of the columns was increasing.
2892- Series `show()`/`hide()` were using `interpolationDuration` setting instead of `defaultState`/`hiddenState` transition duration when showing/hiding.
2893
2894
2895## [4.0.0-beta.81] - 2018-11-13
2896
2897### Fixed
2898- `chart.hiddenState.properties.opacity` is no longer set to `1` by default. Removed this in order it to be `0` so that charts using animated theme would always fade-in.
2899- Better initial rendering of `ValueAxis` (removed unneeded animations).
2900- Sometimes map was not positioning itself at `homeGeoPoint`.
2901- Map with Eckert6 projection in some cases was not displayed properly.
2902
2903
2904## [4.0.0-beta.80] - 2018-11-13
2905
2906### Fixed
2907- Legend in external container was resulting in infinite loop.
2908- Rendering an arrow on a `MapLine` with same source and destination point was resulting in error.
2909
2910## [4.0.0-beta.79] - 2018-11-12
2911
2912### Fixed
2913- `goHome()` on `MapChart` was not working properly.
2914- `projection` change on `MapChart` was not working properly.
2915
2916
2917## [4.0.0-beta.78] - 2018-11-11
2918
2919### Changed
2920- `DataParser` property `type` was renamed to `contentType` in order not to conincide with JSON-based config built-in keyword `type`.
2921
2922### Fixed
2923- Some rendering issues fixed.
2924
2925
2926## [4.0.0-beta.77] - 2018-11-10
2927
2928### Fixed
2929- Removed console debug (yes, again).
2930
2931
2932## [4.0.0-beta.76] - 2018-11-10
2933
2934### Fixed
2935- Removed console debug.
2936
2937
2938## [4.0.0-beta.75] - 2018-11-10
2939
2940### Added
2941- You can now use `"{percent}"` placeholder in `tooltipText` of `HeatMapSeries` items.
2942
2943### Fixed
2944- Draggable/trackable areas of the chart were intercepting all mouse buttons, including right and back/forward.
2945- Fixed `MapChart` issue with dragging map by touch on hybrid devices.
2946
2947
2948## [4.0.0-beta.74] - 2018-11-08
2949
2950### Fixed
2951- `ColumnSeries3D` were broken since last release.
2952
2953
2954## [4.0.0-beta.73] - 2018-11-07
2955
2956### Changed
2957- `axisFills.template.interactionsEnabled` is now set to `false` by default. If you need to attach events on an axis fill, you will need to set it to `true`.
2958
2959### Added
2960- `autoDispose` property added to `Series` and `Axis` classes with default value `true`. This means that series/axis will be automatically disposed when removed from chart's `series`, `xAxes`, or `yAxes` lists.
2961- It is now possible to have 3D stacked columns (by setting `clustered = false` on series).
2962
2963### Fixed
2964- If chart container was moved in DOM tree, it stopped sensing resize and was not updating its size anymore.
2965- Sometimes `ValueAxis` could show zero label with a minus sign.
2966- Arrows on `MapLine` were not drawn.
2967- It was not possible to change the text color of the tooltip on `TreeMap` diagram.
2968- `axis.tooltipPosition = "pointer"` was not working as it should - always follow the mouse/pointer.
2969- If series had `data` set directly, it was still using chart's global `data`, resulting in combined datasets and potentially visual anomalies.
2970- Setting `cellStartLocation` did not have any effect on an already inited chart.
2971- Line series could be cut off in the beginning (when zoomed-in closely).
2972- Vertical axis ticks were not being positioned properly if axis had a title.
2973- 3D columns were not using chart's `depth`/`angle`.
2974
2975
2976## [4.0.0-beta.72] - 2018-11-03
2977
2978### Changed
2979- For any `XYSeries` if the `itemReaderText` is not set explicitly, it will automatically try to fill with values from `dataFields`, so that each series element, like a Column has at least rudimentary screen-reader text.
2980
2981### Fixed
2982- Added in TypeScript 3.x support.
2983- `ColumnSeries` with two category axes anomaly fixed.
2984
2985
2986## [4.0.0-beta.71] - 2018-11-01
2987
2988### Fixed
2989- Calling `dispose()` on a `TreeMap` was causing an error.
2990- Legend items were being duplicated every time its disabled property was reset back to `false`.
2991
2992
2993## [4.0.0-beta.70] - 2018-10-31
2994
2995### Fixed
2996- Keyboard dragging of elements such as scrollbar grips was not working.
2997- "hoverable" elements were not staying "hovered" after tap in Mobile Safari.
2998- `addData()` with more than one data item added was not working well.
2999- Zoomout button was visible on initial animation.
3000- Dynamically changing `Legend.position` was not updating its layout properly.
3001- Vertical axis tick position with rotated labels was incorrect.
3002
3003
3004## [4.0.0-beta.69] - 2018-10-30
3005
3006### Fixed
3007- Some charts were not properly displayed if initialized in a hidden (`display: none`) container, then revealed (`display: block`).
3008- Last slice of the `PyramidSeries` was not visible for certain widths.
3009- Adding `Legend` to a chart that had series with bullets using heatrules was causing an error.
3010- Label rotation was being ignored on `SlicedChart`.
3011- Labels of `PyramidSeries` were not centered (when `alignLabels = false`).
3012- Animation of labels for horizontal `PictorialSeries` was very jumpy.
3013- `position` and `rotation` of labels in `PyramidSeries` was not working properly.
3014- An error was occurring if chart's with a category axis data was updated and it contained less data points than before.
3015
3016
3017## [4.0.0-beta.68] - 2018-10-30
3018
3019### Changed
3020- `tooltip.defaultState.transitionDuration` and `tooltip.hiddenState.transitionDuration` default values of animated theme set to `400`.
3021
3022### Fixed
3023- Chart was not being drawn properly when instantiated in a hiden container.
3024
3025
3026## [4.0.0-beta.67] - 2018-10-29
3027
3028### Fixed
3029- Chart `Cursor` was preventing hovers on series' elements like columns or bullets.
3030- Mouse cursor's down styles (like on scrollbar) were not being reset back properly in some cases.
3031
3032
3033## [4.0.0-beta.66] - 2018-10-28
3034
3035### Fixed
3036- Axis glitches in `XYChart3D`.
3037- `XYCursor` movement issues.
3038
3039
3040## [4.0.0-beta.65] - 2018-10-28
3041
3042### Changed
3043- `tooltip.hiddenState.transtionDuration` and `tooltip.defaultState.transitionDuration` are now set to 1 (on non-animated theme) to avoid some tooltip flickering.
3044- Individual legend items (label, value label, and marker) now have their `interactionsEnabled = false` set by default to avoid double events. If you need to add events to these particular elements (as opposed to the whole legend item), you will need to set `interactionsEnabled = true` on that element.
3045
3046### Fixed
3047- Calling `show()` on a `MapSeries` object was resulting in an error.
3048- 3D columns were not visible if their value was zero.
3049- Bullets are now hidden if `minBulletDistance` is set.
3050
3051
3052## [4.0.0-beta.64] - 2018-10-27
3053
3054### Added
3055- `shouldClone` flag added to `EventDispatcher`'s `on` and `once` methods. Can be used to restrict cloning of events when object itself is cloned.
3056- [`showOnInit`](https://www.amcharts.com/docs/v4/reference/sprite/#showOnInit_property) property added to `Sprite`. If this is set to `true`, the `Sprite`, when inited will be instantly hidden ("hidden" state applied) and then shown (animate properties form "hidden" state to "default" state). Animation will take `defaultState.transitionDuration`. `Series`, `Chart` classes has this set to `true`, so that they would perform initial animations. If you want a sprite (chart, series) not to be shown initially, you can set Sprite's [`hidden`](https://www.amcharts.com/docs/v4/reference/sprite/#hidden_property) to `true`. (`setting sprite.visible = true` won't work as expected anymore).
3057
3058### Changed
3059- If chart rendering takes too long, it now is split into chunks, which makes the browser/page remain responsive even if you have a lot of charts to build.
3060- Changed how pre-hiding Series works. If you want series to be initially hidden, use `series.hidden = true` instead of `series.visible = false`.
3061- Removed `"hold"` and `"rotate"` interaction events and releated options and functionality, since they weren't used anywhere.
3062- Removed `"delayFirstHit"` option from `Sprite.hitOptions`.
3063- `chart.defaultState.transitionDuration` is set to `1`. This allows the chart to appear one frame after init and helps to avoid various flickers that happen while chart is building. Animated theme has this value set to `2000`.
3064
3065### Fixed
3066- Performance enhancements.
3067- Non-draggable/trackable but otherwise interactive elements of the chart no longer prevent scrolling and other gestures on touch screens.
3068- `PieSeries` labels sometimes were positioned incorrectly (using non-default start/end angles).
3069- Slices (also columns of `RadarChart`) were not drawn if `radius <= 0` (even if `innerRadius > 0`). This resulted in radar columns not rendered in some cases.
3070- `MapChart` was not resizing properly when div size changed.
3071- `PictorialStackedSeries`, while `containerdiv` was resized did flicker a lot.
3072- If a Tooltip is visible while its Sprite changes size/position, it updates its position as well.
3073- Setting `chart.data = []` was not clearing data properly.
3074
3075
3076## [4.0.0-beta.63] - 2018-10-20
3077
3078### Fixed
3079- In some cases a `PieChart` could overlap its legend.
3080- `PieChart` flicker after `invalidateData` fixed.
3081- An error was occurring when data was updated on chart with series with bullet while hovering it with cursor.
3082
3083
3084## [4.0.0-beta.62] - 2018-10-19
3085
3086### Fixed
3087- Tooltip issue fixed.
3088
3089## [4.0.0-beta.61] - 2018-10-19
3090
3091### Changed
3092- If element has `url` set, when clicked, it will now parse for data placeholders in curcly brackets, e.g. `"{category}"` allowing have dynamic data-driven URLs. Note, the elements are not url-encoded so you need to specify encoding manually, e.g.: `series.columns.template.url = "https://www.google.com/search?q={category.urlEncode()}";`.
3093
3094### Fixed
3095- `Label.fullWords = false` was not working properly.
3096- `AxisLabelCircular` was positioning labels incorrectly, if label.radius was negative (since 59).
3097- `"grid"` layout in `Container` was incorrectly layouting elements if their `width` was set in percent.
3098- [IE] Multi-line truncated labels were not working properly on IE.
3099- [IE] was incorrectly zIndexing elemens (since version 56).
3100- [IE] tooltip initial flicker solved.
3101- [IE] was incorrectly sorting multiple series tooltips (if `Cursor` was used).
3102
3103
3104## [4.0.0-beta.60] - 2018-10-18
3105
3106### Changed
3107- `"hidden"` data field added to series' `dataFields`. Removed `"visible"` data field from `PercentSeries`. You should use `"hidden"` data field to set which slices/columns/etc. are hidden initally.
3108- `AxisLabelCircular`'s `radius` can now be set in `Percent`. `PieChart`'s label radius default value was set to `5%`.
3109
3110### Fixed
3111- Multi-line labels were not being aligned properly in IEs.
3112- In some cases, `fillModifier` was not applied if set after `fill`.
3113- In some cases, a chart with `seriesContainer` disabled, or when `seriesContainer`'s height/width was 0, could produce a JS error.
3114- Some performance tuneups, especially for charts with axes and more data.
3115
3116
3117## [4.0.0-beta.59] - 2018-10-17
3118
3119### Added
3120- [`widthRatio`](https://www.amcharts.com/docs/v4/reference/image/#widthRatio_property) and [`heightRatio`](https://www.amcharts.com/docs/v4/reference/image/#heightRatio_property) properties on `Image`.
3121
3122### Fixed
3123- Some adapters for Axis elements were being applied twice.
3124
3125
3126## [4.0.0-beta.58] - 2018-10-17
3127
3128### Added
3129- `ExportMenu`'s "custom" items can now have `"callback"` which is a function to call when clicked on such custom item.
3130
3131### Changed
3132- Slice labels on a `PieChart` now move with the slice (if `alignLables = false`).
3133
3134### Fixed
3135- `requestAnimationFrame` now is called only when needed. This reduces idle CPU usage.
3136- Fixed `m4core.color()` result caching issue.
3137- Charts were broken in IEs since beta.57.
3138- `Tooltip` on `LineSeries` was not updating color if segment changed color.
3139- `MapChart` without any series was displaying an error in console.
3140- Axis tooltip was trimmed when `renderer.inside = true`.
3141- `StepLineSeries` `startLocation`/`endLocation` bug fixed.
3142- `"hover"` state was not being applied to series' bullet if it did not hav `tooltipText` set.
3143- `bulletLocation` for horizontal `ColumnSeries` fixed.
3144- Value labels of `Legend` were not in correct positions if `Legend` was positioned at the top or bottom (too close to legend label).
3145
3146
3147## [4.0.0-beta.57] - 2018-10-15
3148
3149### Changed
3150- All charts (that inherit from `Chart`) now will apply "hidden" state right after they are validated, then immediately "default" state. This allows creating initial animations such as fade-in (if using animated theme). All you need to do is set: `chart.hiddenState.properties.opacity = 0;`.
3151
3152### Fixed
3153- Mouse wheel zoom was broken since beta.56 on `MapChart`.
3154- Pushing `Sprite` to `Container.children` directly (instead of setting parent) used to produce a JS error.
3155
3156
3157## [4.0.0-beta.56] - 2018-10-12
3158
3159### Added
3160- New `Sprite` adapter: `"populateString"`. Applied to strings after `Sprite` replaces data binders with real values, but before any formatting by `Label` kicks in.
3161- New `Label` property: [`ignoreFormatting`](https://www.amcharts.com/docs/v4/reference/label/#ignoreFormatting_property). If set to `true` will treat formatting blocks in square brackes (e.g. `"[red bold]"`) as regular text and will display them as such.
3162
3163### Changed
3164- Default big, small, and byte suffixes in `NumberFormatter` are now translatable via locale files.
3165- The suffix for thousands "kilo", was changed to lowercase "k", as per [standards](https://en.wikipedia.org/wiki/International_System_of_Units#Prefixes).
3166- On `XYChart`, default for [`mouseWheelBehavior`](https://www.amcharts.com/docs/v4/reference/xychart/#mouseWheelBehavior_property) changed to `"none"` (was `"zoomX"`).
3167
3168### Fixed
3169- Improved performance! All charts types are now noticably, some drastically are faster. Some memory leakages fixed as well.
3170- Now `MapPolygonSeries` will not inherit chart's global `geodata` if it has own `geodataSource` set.
3171- `DateFormatter` was not parsing all AM/PM string dates correctly.
3172- `DateFormatter` was not parsing `MMM` (short month names like "Jan", "Feb") propertly.
3173- In-line date formatter was not working correctly in some cases, e.g. `"{dateX.formatDate()}"`.
3174- Setting `chart.mouseWheelBehavior = "none"` did not release wheel scrolling of the web page when hovering over chart.
3175- `DataSource`'s' `"done"` event was being called if parsing of loaded data failed. Not anymore. `"done"` is called only on successful load. To catch any load (including one that ended in http or parse error) use `"ended"`.
3176- `DataSource`'s' `reloadFrequency` was broken if error occurred during one of the loads. This has been fixed. Even if error occurrs, loader will try to reload data in the next reload slot.
3177- JSON: `heatRules` did not work properly with their target set to a list template, e.g. `mapPolygons.template`.
3178- Auto-calculated `DateAxis.baseInterval` was not being carried over to the `XYChartScrollbar`.
3179- `DurationAxis` scale sometimes was dropping to negative values, even there were no negative values in data.
3180- `PieChart` and `Legend` were not working properly with `chart.zoom()` or `legend.zoom()` methods.
3181
3182
3183## [4.0.0-beta.55] - 2018-09-26
3184
3185### Added
3186- New series type suitable for `SlicedChart`: `PictorialStackedSeries`. (check `pictorial-stacked-chart` and `pictorial-stacked-chart-horizontal` demos)
3187- New themes: "dataviz", "moorisekingdom", "frozen", "spiritedaway".
3188- New Chart property: `logo`. If you are using amCharts with a free license, it holds reference to amCharts logo. Use it to position logo with `align` and `valign` properties.
3189- New `FunnelTick` properties: `locationX` and `locationY`. Allow specifying a relative location within target element where tick is pointing to.
3190
3191### Changed
3192- `FunnelChart` was renamed to `SlicedChart`. The previous name did not correctly represent capabilities of the chart type that can display not only funnel series, but also pyramids and stacked pictorial series. `FunnelSeries` remains as it was before.
3193
3194### Fixed
3195- Mouse wheel zoom was extremely slow in FireFox.
3196- Sometimes colors duplicate colors were generated by `ColorSet`.
3197- HTML-based labels were not accounting for "pixel ratio" on Retina displays, making tooltips larger then they are supposed to be.
3198
3199
3200## [4.0.0-beta.54] - 2018-09-22
3201
3202### Fixed
3203- Chart Cursor was working only for the first chart on the same page.
3204- `CSVParser` was not parsing `dateFields` and `numberFields` correctly.
3205- Issues with labels rendering in incorrect position fixed.
3206- `LinearGradientModifier` was not copying gradient properties to clones (since last version only).
3207- `FunnelSlice` sometimes rendered slice edges with no anti-aliasing.
3208- When calculating area of the Pyramid slices height of `sliceConnector` was not being taken into account.
3209- Reset `label.renderingFrequency` back to `1` to solve some unwanted label flickering.
3210- `MapImage` items were not showing if added via `series.data` (since last version only).
3211
3212
3213## [4.0.0-beta.53] - 2018-09-21
3214
3215### Added
3216- New property `durationFormat` on `DurationFormatter`. If set, it will force this format to be used, instead of one determined by `baseUnit`.
3217
3218
3219## [4.0.0-beta.52] - 2018-09-21
3220
3221### Added
3222- `CurvedColumnSeries` added. Allows having columns as curves or as triangles. Check `curved-column-chart` and `triangle-column-chart` in examples folder.
3223- `RadialGradientModifier` class added. Allows building more donut-like pie charts. Check `semi-circle-donut-chart` in examples.
3224- New chart type: `FunnelChart`, which can show regular FunnelSeries and PyramidSeries.
3225- New axis type: `DurationAxis`. Values on it are treated and formatted like time durations.
3226- `extraMin` and `extraMax` properties added to `ValueAxis`. Can be used to relatively adjust calculated minimum and maximum scale values.
3227- Two new read-only properties added to `Container`: `contentWidth` and `contentHeight`. Will hold width/height in pixels of the actual dimensions of elements in Container.
3228
3229### Changed
3230- `DurationFormatter` now uses `TimeUnit` for its `baseUnit`, rather than arbitrary codes.
3231- `durationFormat` property was removed from `DurationFormatter`. Use [`getFormat()`](https://www.amcharts.com/docs/v4/reference/durationformatter/#getFormat_method) method to get correct format instead, then pass in to `format()`.
3232- Series will not show a tooltip (if one axis is `CategoryAxis`) if there is no value for this category (used to show tooltip if it had some extra text).
3233
3234### Fixed
3235- Legend `valueLabel` values were not shown on chart initial render.
3236- 3D pie slices were not showing full stroke, only on the upper part of a slice.
3237- Sometimes `XYChart` did some additional animation even after all series finished animating, causing zoom-out flashing briefly.
3238- `XYChartScrollbar` was not showing series if data to the original series was added later (or changed).
3239- Chrome was not showing line series in `XYChartScrollbar` if all values were equal.
3240- Creating an empty line (without `multiGeoLine` set) was resulting in critical error.
3241
3242
3243## [4.0.0-beta.51] - 2018-09-13
3244
3245### Changed
3246- Changed `Label.renderingFrequency` to `2`, for better performance.
3247
3248### Fixed
3249- Performance tweaking.
3250- `DateAxis.baseInterval` was ignored in JSON-based configs.
3251- `"hoverActive"` state was not always being correctly applied.
3252- Better handling of cursor zoom and pan when outside chart area.
3253- Fixed occasional error when formatting dates or numbers.
3254- Line chart starts new segement only if properties (like `stroke`, `fill`, `strokeDashArray`, etc.) in data have changed. It used to start new segment if properties in data were defined resulting in reduced performance and disabled smoothed lines.
3255- Labels were not updating their position if their `fontSize` changed.
3256- `Sprite.nonScalingStroke = true` was ignored if set after `Sprite.strokeWidth`.
3257- `LineSeries` could leave some garbage lines while zooming.
3258- `ColumnSeries` could leave some garbage columns while zooming.
3259- `DateAxis` with one date only in chart data was not rendered properly.
3260- The chart was not zooming out after data validation.
3261- Added `ghostLabel` to `Axis` which is an invisible label and it helps to avoid unwanted changes of axis widht/height when the scale changes, e.g. on zoom.
3262- `zoomToMapObject`, if used with `MapPolygon` and custom `zoomLevel` was not working properly.
3263- `"hidden"` event of Series was called on initial chart initialization.
3264
3265
3266## [4.0.0-beta.50] - 2018-09-10
3267
3268### Added
3269- `am4core.unuseAllThemes()` method added. Any chart created after this method call will not have any theme applied to it.
3270- New property `am4core.registry.baseSprites` will now hold all active (non-disposed) instances of top-level elements, such as charts.
3271- `startLocation`/`endLocation` properties added to `CategoryAxis` (previously available on `DateAxis` only). Allows to specify location the first and last cells of the axis should start on respectively.
3272- `innerRadius` of a Slice can now be set as `Percent` (e.g. `am4core.percent(50)`).
3273- You can now set custom radii (`radius` property) on Pie series (if you have more than one, you might want one to be larger and another smaller).
3274
3275### Changed
3276- [`MapLine.imagesToConnect`](https://www.amcharts.com/docs/v4/reference/mapline/#imagesToConnect_property) now accepts an array of string IDs that can reference images by their `id` property.
3277- Changed `tooltip` inheritance so that it checks for `virtualParent` rather than direct `parent`. E.g. series' bullets use series' tooltip and not chart tooltip as it was before.
3278
3279### Fixed
3280- Map polygon stroke thickness could be rendered incorrectly when zooming quickly. (Issue #175)
3281- Calling `addData()` more than once before data was validated resulted only last data item to be added. (Issue #222)
3282- `DateAxis.baseInterval` was ignored if data was set directly on series.
3283- `MapLine` was not paying attention to the properties set on template.
3284- `HeatLegend` was not updating its label count after its size changed. This could have been resulting in very few labels if initial container (div) size was small.
3285- The map portion of `MapChart` was incorrectly positioned after container (div) resize.
3286- Object properties, like `"name"` in GeoJSON were overriding same properties in `MapSeries` data. Now, the values specified in data are used over ones in GeoJSON. (Issue #307)
3287- Axis ranges used to reset `axisRange.label.text`. (Issue #308)
3288- Fixed issues with disposing series and charts.
3289- Updated to [canvg 1.5.3](https://github.com/canvg/canvg/releases/tag/v1.5.3) to fix em/rem text issue for epoxrt fallbacks.
3290
3291
3292## [4.0.0-beta.49] - 2018-09-05
3293
3294### Added
3295- JSON config: added `callback` property, which if it holds a reference to function will call it within the scope of the object being prepared.
3296- Adapters for `url` and `urlTarget` properties.
3297- Chart can now be panned or zoomed using mouse wheel. To set what it does use `mouseWheelBehavior` on `XYChart` (see next point)
3298- [`mouseWheelBehavior`](https://www.amcharts.com/docs/v4/reference/xychart/#mouseWheelBehavior_property) added to `XYChart`. Options: `"zoomX"` (default), `"zoomY"`, `"zoomXY"`, `"panX"`, `"panY"`, `"panXY"`, `"none"`.
3299- [`mouseWheelBehavior`](https://www.amcharts.com/docs/v4/reference/mapchart/#mouseWheelBehavior_property) added to `MapChart`. Options: `"zoom"` (default), `"none"`.
3300
3301### Changed
3302- Second parameter to `Cursor`'s [`triggerMove()`](https://www.amcharts.com/docs/v4/reference/cursor/#triggerMove_method) method was changed from boolean to enumeration of "stickiness" level: `"hard"`, `"soft"`, `"none"` (default).
3303
3304### Fixed
3305- Error fixed when `Popup` object was being disposed.
3306- Over-panning of an `XYChart` did not disappear after mouse button was released outside chart.
3307- Multiple memory leaks fixed.
3308- `MapChart` was rounding lat/long coordinates too much which was resulting in pixelated maps for small-area maps.
3309
3310
3311## [4.0.0-beta.48] - 2018-08-31
3312
3313### Added
3314- `useWebFonts` setting in `Export`. Allows disabling of download of web fonts when exporting.
3315- `useRetina` setting in `Export`. Images are now exported scaled up on retina displays by default. Set `useRetina = false` to disable.
3316
3317### Changed
3318- Export fallback mechanism for older browsers changed from FabricJS to canvg, which is much lighter and has better text formatting support.
3319- On retina displays images will now export supersized in order not to lose quality. Set `useRetina = false` to disable.
3320- amCharts logo will now auto-hide on supersmall chart sizes.
3321
3322### Fixed
3323- Cursor was zooming the chart even if drag motion was performed on an external element positioned over the chart.
3324- Cursor was not hidden when it was no longer hovering the chart area if chart had no padding.
3325- `urlTarget` was not carried over from `ListTemplate` template to new items.
3326- Cursor could cause chart to freeze up on a DateAxis with empty cells in the axis' beginning or end.
3327- Export will now correctly handle web fonts, such as Google Fonts. Please note that FontAwesome is not supported, since they forbit any kind of usage, except inclusion via CSS.
3328
3329
3330## [4.0.0-beta.47] - 2018-08-24
3331
3332### Added
3333- New series type: `OHLCSeries`.
3334- `goHome()` method added to `MapChart`. Calling it will reset map to `homeZoomLevel` and `homeGeoPoint`.
3335- `homeGeoPoint` added to `MapChart`. Allows setting initial `geoPoint` at which map will be centered.
3336- `homeZoomLevel` added to `MapChart`. Allows setting initial `zoomLevel`.
3337- `maxPanOut` property added to `MapChart`, with default value `0.7`. It prevents map to be dragged out of the chart area.
3338- `noRisers` property added to `StepLineSeries`. It allows step line chart without vertical (or horizontal, depending on orientation) lines.
3339- Step line without risers now allows making Waterfall chart. Example added.
3340- `startLocation` and `endLocation` added to `StepLineSeries`, that allow controling locations at which step should start/end.
3341- `maxPrecision` added for `ValueAxis`. Use it to restrict Value axis to show value labels with less than desired precision (set 0 if you only want integers).
3342- Portugese (Portugal) translation added.
3343
3344### Changed
3345- `Cursor` will now not move if there's some element obstructing the chart's plot area, e.g. a popup or some other element outside the chart.
3346
3347### Fixed
3348- Series' and axes' tooltips will now correctly inherit formatters.
3349- Errors when hovering mouse cursor over open Modal.
3350- JSON: `children` property of `Container`-type objects was not being processed correctly.
3351- Popup/Modal now sets `aria-label` automatically if title is set.
3352- Removing bullet template from series or disposing it will remove/dispose all the bullets created from it.
3353- Tooltips were overlapping each other, fixed for the most part, but might still be some situations where they overlap.
3354- Changing data for `MapImageSeries` and `MapLineSeries` used to result runtime error.
3355
3356
3357## [4.0.0-beta.46] - 2018-08-19
3358
3359### Fixed
3360- `TreeMap.homeText` was not working.
3361- `TreeMap` used to display upper level bullets/labels when drilled-down.
3362- `TreeMap` had issues with hiding items using legend (when not using animated state).
3363- Chart cursor was not visible if data was set directly on axis/series but not on chart.
3364
3365
3366## [4.0.0-beta.45] - 2018-08-17
3367
3368### Added
3369- New hardcoded `Sprite` state name added `"hoverActive"` which (if defined) is applied on active elements on hover. This state is applied last in the chain.
3370- New property on `DataSource`: `keepCount`. If set to `true` incremental updates will remove data items from the beginning of the current dataset, when adding the newly-loaded ones.
3371- New property on `DataSource`: `incrementalParams`. It's an object whose key/value pairs will be added to URL as parameters when DataSource is making an incremental load request.
3372- `Popup` (and `Modal`) now have an event dispatcher (`events`) with two events: `"opened"` and `"closed"`. ([more info](https://www.amcharts.com/docs/v4/concepts/popups-and-modals/#Event_handlers))
3373
3374### Changed
3375- Legend now respects `itemContainers.template.togglable = false`, which disables default functionality of toggling items when clicked in legend, allowing users to attach their own funcitonality to legend item clicks.
3376- Toggling of items in Legend can now be disabled by setting `chart.legend.itemContainers.template.togglable = false`.
3377- In `XYChart` with a `DateAxis`, cursor and data at irregular intervals will now display a Tooltip for nearest available series' data item.
3378- `zoomToCategories` method of `CategoryAxis` now zooms to the end of the "to" category.
3379- Default `urlTarget` of amCharts logo is now `"_blank"`.
3380
3381### Fixed
3382- In `DataSource` the formatters `inputDateFormat` was ignored.
3383- Incremental data load via `DataSource` was not working.
3384- Tooltip used to flicker ar 0,0 position in some cases when hovering over elements.
3385- Fixed issue which caused chart to gradually shrink to invisibility under some conditions.
3386- Fixed rendering errors for charts that were initialized in hidden containers.
3387- `XYCursor` lines and axis tooltips were not shown if chart did not have any data (data was set directly on axis/series).
3388
3389
3390## [4.0.0-beta.44] - 2018-08-14
3391
3392### Added
3393- `TreeMap` now supports legend. Legend will be displayed if a) `TreeMap` data is at least two levels deep (legend displays items from a second level); b) `chart.maxLevels` is set to `2` (without setting it no second-level series are created so legend does not have anything to build itself from). [More info](https://www.amcharts.com/docs/v4/chart-types/treemap/#Legend).
3394- Swedish translation.
3395
3396### Changed
3397- `DateFormatter` will now automatically capitalize month/weekday name if it's the first (or only) word in resulting formatted date. This can be turned off by setting formatter's [`capitalize`](https://www.amcharts.com/docs/v4/reference/dateformatter/#capitalize_property) to `false`.
3398
3399### Fixed
3400- Removed `@deprecated` commented out methods/properties that were confusing tslint.
3401- Issue that caused the chart to shrink was fixed.
3402
3403
3404## [4.0.0-beta.43] - 2018-08-12
3405
3406### Changed
3407- `$net.load()` options parameter now supports `responseType`. If set to `"blob"` will return response as `Blob` object in `result.blob`.
3408
3409### Fixed
3410- Value axis min/max calculation algorithm adjusted. Fixed an issue with `strictMinMax = true` and issue with min/max when axis size was very small.
3411- Export now correctly uses external fonts included via `@import`, such as Google Fonts.
3412- Non-clickable columns in `ColumnSeries` will no longer gain focus on click/tap, unless its `hitOptions.noFocus` is set to `false`.
3413- Noon was incorrectly formatted as "AM", instead of "PM".
3414- `TextFormatter` was producing invalid `style` value on empty formatting blocks (`"[]"`).
3415- `parent` was not being set for a `Sprite` that was pushed directly to `Container.children`.
3416- If axis labels were disabled, ranges labels were not visible.
3417- Axis used to reset some of the user-set values when initing renderer, e.g. `dateAxis.renderer.grid.template.location = 0.5` was not working.
3418- `XYChart` with category axis + date axis was not working properly.
3419- Stacked chart with logarithmic axis was not working properly.
3420- JSON: local formatter instances were not being instantiated properly, so all children objects were reusing chart's main formatters.
3421- JSON: Patterns are now supported.
3422
3423
3424## [4.0.0-beta.42] - 2018-08-05
3425
3426### Fixed
3427- Updated default Popup CSS to eliminate a rare scrollbar flashing issue.
3428- Fixed an error with PDF exporting.
3429
3430## [4.0.0-beta.41] - 2018-08-03
3431
3432### Added
3433- `MapSeries` now has `geodata` and `geodataSource`. This allows setting separate maps to each separate map series, which no longer rely on single chart-wide `geodata`. Also, setting `geodata` for `MapSeries` will automatically set `useGeodata = true`, so no need to set it manually.
3434
3435### Changed
3436- Removed unused `boldUnitChange` from `DateAxis`.
3437- Labels on `DateAxis` will now pay attention to `label.location` if label represents full time period between grids. It no longer will force labels to be in the middle.
3438- `label.currentText` is now public.
3439
3440### Fixed
3441- Fixed parsing of string dates in ISO format (`"i"`).
3442- Legend marker was not aligned with the text (when marker was smaller).
3443- Solved legend error which happens if you show/hide series after series was added/removed.
3444- Dynamically adding series was not automatically adjusting axis scales.
3445- Vertical `CategoryAxis` was not paying attention to `grid.location`.
3446- Map issues at `minZoomLevel < 1` fixed.
3447
3448
3449## [4.0.0-beta.40] - 2018-08-02
3450
3451### Added
3452- German translation. (de_DE)
3453
3454### Changed
3455- [`XYChart.getUpdatedRange()`](https://www.amcharts.com/docs/v4/reference/xychart/#getUpdatedRange_method) method is now public so you can use it to recalculate absolute axis range into a relative that takes current zoom and inversion into account.
3456- `Language` now supports `null` in translations which means an empty string.
3457- Interface `iColorSetStepOptions` was renamed to `IColorSetStepOptions` to maintain consistency.
3458- Interface `ColorPurpose` was renamed to `IColorPurpose` to maintain consistency.
3459- `FlowDiagramNode` `value` property renamed to `total`, added `totalIncoming` and `totalOutgoing` properties which hold sum of all incoming/outgoing links.
3460- Removed aliases `startCategory`, `startValue`, and `startDate` from Axes data items. (use `category`, `value`, and `date` respectively)
3461
3462### Fixed
3463- Improved performance of Sankey/Chord Diagrams.
3464- Elements of `TreeMapChart` were not respecting locale.
3465- Fixed-height bars were drawn incorrectly.
3466- Pre-hidden series were not taken into account when calculating min/max of value axes in some cases.
3467- Setting chart data with less data items then there were before resulted in an error.
3468
3469
3470## [4.0.0-beta.39] - 2018-07-27
3471
3472### Added
3473- `useChartAngles` added to `AxisRendererCircular`. If set to `false` allows to set `startAngle`/`endAngle` to each circular axis individually.
3474
3475### Fixed
3476- Fixed problem with custom `Legend` data and initial visibility, you can now use `visible: false` to pre-hide custom legend items.
3477- Grid Layout fixed, affects Legend.
3478
3479
3480## [4.0.0-beta.38] - 2018-07-26
3481
3482### Fixed
3483- Using `PieSeries` data field `"visible"` was not graying out Legend's marker.
3484
3485
3486## [4.0.0-beta.37] - 2018-07-26
3487
3488### Added
3489- You can now make series initially to be hidden by setting `series.visible = false`.
3490- `visible` added to `PieSeries.dataFields`. It allows making some of the slices initially hidden.
3491
3492### Changed
3493- Sankey/Chord diagrams has now toggling nodes enabled by default. To disable, set `chart.nodes.template.togglable = false`.
3494
3495### Fixed
3496- Text formatter now correctly escapes double square/curly brackets, as well as empty formatting blocks `[]`.
3497- Setting `series.visible = false` or `series.hide()` wasn't toggling off related item in Legend.
3498- Setting `isActive` did not affect `Container`'s background (assuming it had `"active"` state).
3499
3500
3501## [4.0.0-beta.36] - 2018-07-25
3502
3503### Added
3504- `elements` property in `Popup`. Returns an object consisting of references to various elements of the Popup, like content block, close button, etc.
3505
3506### Changed
3507- `am4core.getSystem()` has been changed to `am4core.system`
3508
3509### Fixed
3510- Fixed double "amcharts" in Popup's class names.
3511- Fixed dragging on of absolute-positioned Popups.
3512- Escaping square brackets in text (by repeating them twice) was not working.
3513- Fixed a lot of disposer leaks.
3514- Fixed an issue that caused runtime errors with Rollup.
3515
3516
3517## [4.0.0-beta.35] - 2018-07-23
3518
3519### Added
3520- New adapter on `Component` (and everything that inherits it including charts and series): `"data"`.
3521- New adapter on `Popup`: `"closable"`.
3522
3523### Changed
3524- `showModal()` and `hideModal()` methods were renamed to `openModal()` and `closeModal()` respectively.
3525- `show()` and `hide()` methods on `Popup`/`Modal` were renamed to `open()` and `close()` respectively.
3526
3527### Fixed
3528- More performance-related improvements, especially with `CategoryAxis`.
3529- Changing `interactionsEnabled` from `false` to `true` was not working properly in IE.
3530- Setting `axisRenderer.inside = true` after chart was already built didn't work.
3531- `zoomlevelchanged` event of `MapChart` was being fired even if zoom level did not change.
3532- Setting `MapChart.deltaLongitude` was ignored if it was set before projection was set.
3533- Map tooltip bounds were not being updated when map container's size changed.
3534
3535
3536## [4.0.0-beta.34] - 2018-07-22
3537
3538### Fixed
3539- Dramatic performance improvements!
3540
3541
3542## [4.0.0-beta.33] - 2018-07-19
3543
3544### Added
3545- `calculatePercent` flag added to `Series`. Default value is `false`, except for `PieSeries`. Series will not calculate percent values of each data item if this is not explicitly set to `true`. Since it wasn't been used anywhere but Pie chart, this should improve performance of initial data parsing.
3546
3547### Fixed
3548- Performance improvements. Especially when zooming/scrolling chart with a lot of data.
3549- `lineSeries` was not paying attention to `propertyField` values set in data.
3550- Radar and Gauge charts were not centered properly when resizing window.
3551- Container's background properties were not copied when cloning container.
3552
3553
3554## [4.0.0-beta.32] - 2018-07-17
3555
3556### Important (potentially breaking changes)
3557- To maintain event-naming consistency, events `"insert"` and `"remove"` were renamed to `"inserted"` and `"removed"` respectively in `List` and its inheriting classes. [#132]
3558- To maintain event-naming consistency, events `"clear"` and `"remove"` were renamed to `"cleared"` and `"removed"` respectively in `Dictionary` and its inheriting classes.
3559
3560### Fixed
3561- Significant performance improvements were made.
3562- JSON config: Filters could not be used.
3563- Some properties were not being copied when cloning objects, e.g. `segments` in `LineSeries`. (`interactionsEnabled` and some others)
3564- Circular axis was not properly drawing grid lines if `radius` was < `percent(100)`.
3565- `Button` label was "stealing" interactions from the button itself.
3566- `Tooltip` was sometimes drawn without pointer if "animated" theme was not enabled.
3567- Fixed label alignment of Y axis.
3568
3569### Changed
3570- Improved `contentAlign` (when content size is bigger than actual size of a container).
3571
3572### Added
3573- Two new adapters added to `Label`: `"textOutput"` and `"htmlOutput"`. Both are applied **after** label contents (text or HTML respectively) are populated with data.
3574- Added `"custom"` option to export menu types, which now allows creating clickable custom items in the `ExportMenu`.
3575- `Legend` now accepts "raw" data, enabling creating custom items: `legend.data = [{name:"name 1", fill:"#ff0000"}, {name:"name 2", fill:"#00ff00"}]`. Important: a legend with custom items must be added to some chart container manually (e.g. `chart.chartContainer`). Assigning it to `chart.legend` will overwrite its data.
3576
3577## [4.0.0-beta.31] - 2018-07-06
3578
3579### Important
3580- Layouting mechanism was revamped to make it more consistent and intuitive. If you see some layout issues with your chart, please let us know!
3581
3582### Added
3583- New chart type: [`ChordDiagram`](https://www.amcharts.com/docs/v4/chart-types/chord-diagram/).
3584
3585### Changed
3586- The `Adapter` `keys` property is now a 0-argument function and not a property.
3587- `Adapter` callback now has third parameter `key`, which is a string indentifier of the adapter being applied.
3588- `ChordDiagram`, same as `SankeyDiagram` now extend `FlowDiagram` class. `FlowDiagram` can not be instantiated alone, it's a base class for those two.
3589- `minWidth`/`minHeight` is now set to some small amount on a `PieChart` so that it remains visible even, if the oversized legend does not fit into container.
3590- `heatRules` no longer override properties if they are set using `propertyFields`.
3591
3592### Fixed
3593- Printing in Firefox was broken after latest updates in export/print.
3594- Re-enabled data export on legacy IEs.
3595- If a legend was initially disabled, it did not show up after enabling it later.
3596- Series tooltip was not disposed when series was disposed. This could result in tooltips hanging and not hidin in such charts as `TreeMap` after data was changed.
3597- `Tooltip` was sometimes flickeing at 0,0 position when first hovered on columns of a series.
3598- When all values were 0, `XYChart` was not displayed properly.
3599- When all values were equal and less than 0, `XYChart` was not displayed properly.
3600- Zero-value slices were shown as black rectangles in the pie chart legend.
3601- Labels were not showing tooltips.
3602- `LineSeries` was not displayed properly if colors were set in data. (using `propertyFields`)
3603- Tooltips were shown with white background when first hovered over slices/columns/etc.
3604- Setting `interactionsEnabled = true` did not if it was set to `false` previously.
3605- `axisFill` was not showing `innerRadius` correctly if it was set as `Percent`.
3606- Data update on `SankyDiagram` was resulting in error.
3607
3608## [4.0.0-beta.30] - 2018-06-22
3609
3610### Fixed
3611- JSON config: `heatRules` can now refer to bullets in `tartget` using syntax `"bullets.0.property"`, e.g. `"bullets.0.circle"`. (meaning use "circle" property of the first bullet as heat rule target)
3612- Export: fixed SVG export on Firefox.
3613- Export: fixed SVG/CSV/JSON export for Edge/IE.
3614- Export: fixed sheet name limitations for Excel export.
3615- Export: print option was printing the whole page instead of just chart on IEs.
3616- Export: fixed bitmap image export on IEs.
3617- [Issue 65.](https://github.com/amcharts/amcharts4/issues/65)
3618
3619### Changed
3620- `class` attribute is no longer applied to elements by default. To enable it use new setting `am4core.options.autoSetClassName`.
3621- `class` attributes now will contain the whole inheritance chain, e.g. `"amcharts-Sprite amcharts-Container amcharts-Button"`. Class names are no longer lowercased.
3622- The `svgContainer` property is now an `SVGContainer`, not an `HTMLElement`.
3623
3624### Added
3625- New global option `am4core.options.autoSetClassName` (default `false`). If set to `true` will set `class` attribute of all elements that reflect class element was created in, including inheritance, e.g. `"amcharts-Sprite amcharts-Container amcharts-Button"`.
3626
3627### Removed
3628- Element-level `classNamePrefix` is no longer available. Use global `am4core.options.autoSetClassName` instead.
3629
3630## [4.0.0-beta.29] - 2018-06-16
3631
3632### Fixed
3633- Wrong `Cursor` behavior in Edge browser on hybrid touch screens.
3634- Malfunctioning colors in IE9.
3635- Console errors, triggered by mouse hover in IE9.
3636- A bunch of errors and bugs on Popup/Modal in IE9.
3637- Enabling `ExportMenu` on IEs was breaking the chart.
3638- `"dragstop"` event was not being triggered on touch and hybrid devices.
3639
3640### Changed
3641- Dramatically improved performance of dragging of Popup.
3642- The `dataItem` of the tooltip is now set sooner, which enables it to be used in its various adapters.
3643
3644### Added
3645- `Sprite` now has [`hoverOptions`](https://www.amcharts.com/docs/v4/reference/sprite/#hoverOptions_property) which can be used to set up how touch "hovering" works.
3646
3647## [4.0.0-beta.28] - 2018-06-05
3648
3649### Fixed
3650- Using chart `Cursor` now prevents default browser gestures on touch and hybrid displays.
3651- Disabling elements (e.g. Legend or Axis labels) will now make other elements take up vacant space automatically.
3652- Tooltips on `XYSeries` data items with zero value were not being shown.
3653- Sometimes `XYSeries` tooltips were messed up and shown in incorrect position.
3654- Updating chart data with stacked series could result incorrect min/max values on `ValueAxis`.
3655- `Treemap` was not showing all the required levels on zoom-out unless animated theme was being used.
3656- Sometimes unpredictable behavior of labels on a logarithmic value axis was fixed.
3657- `DateAxis` with `skipEmptyPeriods = true` was showing axis tooltip at incorrect positions in some cases.
3658
3659### Changed
3660- `Sprite.mouseEnabled` was renamed to `interactionsEnabled`.
3661- An option `"mouse"` for `tooltipPosition` was renamed to `"pointer"`.
3662
3663## [4.0.0-beta.27] - 2018-06-01
3664
3665### Fixed
3666- Issue with `Label` text truncation.
3667- Huge performance improvements, especially on initial chart load.
3668- `Animation.resume()` was not working.
3669
3670### Changed
3671- Default `tooltipLocation` on `SankeyLink` is now `0.5`.
3672- Default value of `series.hiddenState.opacity` is now `0` (was `1`). Animated theme sets it to `1`, because it animates stuff by interpolation, rather than fade.
3673
3674### Added
3675- `pt_BR` and `en_CA` locales.
3676- `fullWords` property on `Label`. Works only when `truncate = true`. Setting to `false` will force non-fitting label to be truncated in the middle of the word.
3677
3678## [4.0.0-beta.26] - 2018-05-30
3679
3680### Fixed
3681- Error with `EventDispatcher is disposed`.
3682- Having "stray" axis objects (not attached to any chart) was resulting in critical error.
3683- Zooming was broken on `RadarCursor` since last update.
3684- `PieSeries.legendSettings` were being ingored.
3685- `Cursor` was incorrectly doing `panY` (inverted).
3686- Date axis tooltip was not rounding dates to `baseDuration`.
3687- Date axis was not working properly with `min`/`max` values set.
3688
3689### Changed
3690- Redone chart print functionality. Now printing is done via `<iframe>` by default. An alternative CSS option is also available.
3691- If series' bullets have hover state set, it will be applied whenever chart cursor is over position, even if not directly hovering over bullet.
3692- `XYSeries` used hidden/default state `transitionDuration` for interpolating values when showing/hiding series. Now they use `series.interpolationDuration`.
3693- ZoomOut button was under the cursor lines making it impossible to click.
3694- `easing` renamed to `transitionEasing` in SpriteState, for consistency.
3695- When setting `width`/`height` for an element in pixels, `minWidth` and `maxWidth` is also set to the same values.
3696- If `interpolationDuration` is 0 and `hiddenState.transitionDuration > 0`, the series will transit to hidden state first and then instantly interpolate values to 0.
3697
3698### Added
3699- Finished cursor updates to support cursor syncing.
3700
3701## [4.0.0-beta.25] - 2018-05-25
3702
3703### Fixed
3704- Using `tooltipHTML` was very buggy.
3705- Text formatting with two adjacent formatting blocks (`[...][...]`) was broken.
3706- `DateFormatter` was ignoring `utc` setting when formatting dates.
3707- Popup no longer obstructs the chart around it.
3708- Popup/Modal and Export Menu now temporarily disable all interactivity behind it.
3709
3710### Added
3711- `DataSource` now has property [`requestOptions`](https://www.amcharts.com/docs/v4/reference/datasource/#requestOptions_property) which you can use to add custom request headers to HTTP(S) requests.
3712- `Popup.title` property.
3713- `Popup.draggable` property (boolean). Default `true`. Makes popups draggable.
3714- `ru_RU` (Russian) and `nl_NL` (Dutch) translations.
3715- `Dictionary`, `DictionaryTemplate`, `List`, `ListTemplate`, `OrderedList`, `OrderedListTemplate`, `SortedList`, and `SortedListTemplate` have these new methods:
3716- `each` (which calls a function for each element in the data structure)
3717- `Symbol.iterator` (which is used for the ES6 iterator protocol)
3718- New `Cursor` event: `"behaviorcanceled"`. (called when zoom/pan/select operation is abandoned)
3719- New `Cursor` methods: [`triggerMove()`](https://www.amcharts.com/docs/v4/reference/cursor/#triggerMove_method), [`triggerDown()`](https://www.amcharts.com/docs/v4/reference/cursor/#triggerDown_method), and [`triggerUp()`](https://www.amcharts.com/docs/v4/reference/cursor/#triggerUp_method) for improving cursor syncing and manual placement.
3720- Support for `Series.heatRules` in JSON chart config.
3721- JSON config now supports arrays in `events` and `adapter`.
3722
3723### Changed
3724- HTML labels now take `fill` (color) parameter into account by translating it into `color` CSS property of the style.
3725- Now when data loader gracefully handles CORS and other critical load errors.
3726- `Chart.openPopup()` now does not ignore second parameter. (title)
3727- Changed default International English time with seconds format to `"HH:mm:ss"`.
3728- Date format on `DateAxis` tooltip will now use axis' `minPeriod` rather than current label period.
3729- `EventDispatacher.has()` function's second parameter (callback) is now optional. If it's not specified it will check whether **any** event handlers are present for this particular event type.
3730
3731## [4.0.0-beta.24] - 2018-05-16
3732### Fixed
3733- Mouse/touch-related functionality was preventing text selection on the whole document.
3734
3735### Added
3736- Added examples in JSON format. (available in JS-oriented packages and GitHub only)
3737- New events on `ExportMenu`: `"branchselected"`, `"branunselected"`, `"closed"`.
3738- Added [`Sprite.hoverOnFocus`](https://www.amcharts.com/docs/v4/reference/sprite/#hoverOnFocus_property) boolean setting. If set to `true` element will also trigger hover events on it when it gains focus, e.g. display tooltip. (accessibility feature)
3739
3740## [4.0.0-beta.23] - 2018-05-13
3741### Fixed
3742- Various internal things were not properly disposed.
3743
3744## [4.0.0-beta.22] - 2018-05-13
3745### Fixed
3746- Heights of vertical `HeatLegend`'s gradient band and value axis (labels) were different.
3747- `HeatLegend` without its `series` set was resulting in critical error.
3748- `HeatLegend` did not respect `dataField` setting in `Series.heatRules`.
3749
3750### Removed
3751- `newStack` from Series which was redundant.
3752
3753## [4.0.0-beta.21] - 2018-05-10
3754### Added
3755- New element class [`Popup`](https://www.amcharts.com/docs/v4/reference/popup/).
3756- New way to display pop-ups on charts via [`Sprite.popups`](https://www.amcharts.com/docs/v4/reference/sprite/#popups_property) and [`Sprite.openPopup`](https://www.amcharts.com/docs/v4/reference/sprite/#openPopup_method).
3757- New example "adding-live-data".
3758- Added this `CHANGELOG.md`.
3759
3760### Fixed
3761- Fixed automatically-calculated RadarChart radius on non-full-circle chart setups.
3762- Improved incremental data updates.
3763
3764## [4.0.0-beta.20] - 2018-05-09
3765- Internal maintenance release
3766
3767## [4.0.0-beta.19] - 2018-05-09
3768- Internal maintenance release
3769
3770## [4.0.0-beta.18] - 2018-05-09
3771- Internal maintenance release
3772
3773## [4.0.0-beta.17] - 2018-05-09
3774- Internal maintenance release
3775
3776## [4.0.0-beta.16] - 2018-05-09
3777- Internal maintenance release
3778
3779## [4.0.0-beta.15] - 2018-05-09
3780### Fixed
3781- `createFromConfig()` was not working properly if chart type was passed as a class reference.
3782- In JSON-based config, axes properties were not being set.
3783- In JSON-based config, referring to Series in `XYChartScrollbar` was giving an error.
3784- One-ended `SankeyLink` was not being drawn correctly.
3785
3786## [4.0.0-beta.14] - 2018-05-0
3787- Internal maintenance release
3788
3789## [4.0.0-beta.13] - 2018-05-04
3790- Internal maintenance release
3791
3792## [4.0.0-beta.12] - 2018-05-04
3793- Internal maintenance release
3794
3795## [4.0.0-beta.11] - 2018-05-03
3796### Added
3797- Added ability to automatically load geodata via `MapChart.geodataSource`. ([more info](https://www.amcharts.com/docs/v4/chart-types/map/#Loading_external_maps))
3798
3799### Changed
3800- `DateAxis.baseInterval` now defaults to 1.
3801
3802### Fixed
3803- Fixed bad tooltip behavior on the right-side axis.
3804- Fixed `DateAxis.skipEmptyTimeUnits` which was not working properly.