@amcharts/amcharts5 5.5.7 → 5.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  2. package/.internal/charts/hierarchy/Hierarchy.js +3 -1
  3. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  4. package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
  5. package/.internal/charts/hierarchy/Treemap.js +4 -1
  6. package/.internal/charts/hierarchy/Treemap.js.map +1 -1
  7. package/.internal/charts/stock/indicators/ChartIndicator.d.ts.map +1 -1
  8. package/.internal/charts/stock/indicators/ChartIndicator.js +2 -0
  9. package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
  10. package/.internal/charts/stock/toolbar/Dropdown.d.ts +1 -1
  11. package/.internal/charts/stock/toolbar/Dropdown.js +1 -1
  12. package/.internal/charts/stock/toolbar/Dropdown.js.map +1 -1
  13. package/.internal/charts/stock/toolbar/DropdownList.d.ts +1 -1
  14. package/.internal/charts/stock/toolbar/DropdownList.js +1 -1
  15. package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
  16. package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +7 -0
  17. package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -1
  18. package/.internal/charts/stock/toolbar/IndicatorControl.js +42 -21
  19. package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
  20. package/.internal/charts/stock/toolbar/StockControl.d.ts +1 -1
  21. package/.internal/charts/stock/toolbar/StockControl.js +1 -1
  22. package/.internal/charts/stock/toolbar/StockControl.js.map +1 -1
  23. package/.internal/charts/stock/toolbar/StockToolbar.d.ts +3 -1
  24. package/.internal/charts/stock/toolbar/StockToolbar.d.ts.map +1 -1
  25. package/.internal/charts/stock/toolbar/StockToolbar.js +3 -1
  26. package/.internal/charts/stock/toolbar/StockToolbar.js.map +1 -1
  27. package/.internal/charts/xy/XYChartDefaultTheme.d.ts.map +1 -1
  28. package/.internal/charts/xy/XYChartDefaultTheme.js +12 -0
  29. package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -1
  30. package/.internal/charts/xy/axes/Axis.d.ts +5 -1
  31. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  32. package/.internal/charts/xy/axes/Axis.js +79 -5
  33. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  34. package/.internal/charts/xy/axes/AxisRenderer.d.ts +17 -0
  35. package/.internal/charts/xy/axes/AxisRenderer.d.ts.map +1 -1
  36. package/.internal/charts/xy/axes/AxisRenderer.js.map +1 -1
  37. package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
  38. package/.internal/charts/xy/axes/CategoryAxis.js +22 -2
  39. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  40. package/.internal/charts/xy/axes/DateAxis.d.ts +10 -0
  41. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  42. package/.internal/charts/xy/axes/DateAxis.js +100 -1
  43. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  44. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts +7 -0
  45. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
  46. package/.internal/charts/xy/axes/GaplessDateAxis.js +215 -48
  47. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
  48. package/.internal/charts/xy/axes/ValueAxis.d.ts +4 -0
  49. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  50. package/.internal/charts/xy/axes/ValueAxis.js +68 -8
  51. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  52. package/.internal/charts/xy/series/XYSeries.d.ts +4 -1
  53. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  54. package/.internal/charts/xy/series/XYSeries.js +132 -25
  55. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  56. package/.internal/core/Registry.js +1 -1
  57. package/.internal/core/Registry.js.map +1 -1
  58. package/.internal/core/Root.d.ts +8 -1
  59. package/.internal/core/Root.d.ts.map +1 -1
  60. package/.internal/core/Root.js +8 -4
  61. package/.internal/core/Root.js.map +1 -1
  62. package/.internal/core/render/Bullet.d.ts +24 -0
  63. package/.internal/core/render/Bullet.d.ts.map +1 -1
  64. package/.internal/core/render/Bullet.js.map +1 -1
  65. package/.internal/core/render/Polygon.d.ts.map +1 -1
  66. package/.internal/core/render/Polygon.js +4 -0
  67. package/.internal/core/render/Polygon.js.map +1 -1
  68. package/.internal/core/render/Series.d.ts +17 -1
  69. package/.internal/core/render/Series.d.ts.map +1 -1
  70. package/.internal/core/render/Series.js +55 -27
  71. package/.internal/core/render/Series.js.map +1 -1
  72. package/.internal/core/render/backend/CanvasRenderer.js +17 -17
  73. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  74. package/.internal/core/util/Time.d.ts.map +1 -1
  75. package/.internal/core/util/Time.js +14 -11
  76. package/.internal/core/util/Time.js.map +1 -1
  77. package/.internal/plugins/json/Json.d.ts.map +1 -1
  78. package/.internal/plugins/json/Json.js +1 -1
  79. package/.internal/plugins/json/Json.js.map +1 -1
  80. package/.internal/themes/ResponsiveTheme.d.ts +6 -1
  81. package/.internal/themes/ResponsiveTheme.d.ts.map +1 -1
  82. package/.internal/themes/ResponsiveTheme.js +66 -24
  83. package/.internal/themes/ResponsiveTheme.js.map +1 -1
  84. package/CHANGELOG.md +34 -1
  85. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  86. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  87. package/examples/javascript/flow-chord/package.json +1 -1
  88. package/examples/javascript/flow-chord-directed/package.json +1 -1
  89. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  90. package/examples/javascript/flow-sankey/package.json +1 -1
  91. package/examples/javascript/gauge/package.json +1 -1
  92. package/examples/javascript/gauge-bands/package.json +1 -1
  93. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  94. package/examples/javascript/hierarchy-pack/package.json +1 -1
  95. package/examples/javascript/hierarchy-partition/package.json +1 -1
  96. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  97. package/examples/javascript/hierarchy-tree/package.json +1 -1
  98. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  99. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  100. package/examples/javascript/jest/package.json +1 -1
  101. package/examples/javascript/json-pie/package.json +1 -1
  102. package/examples/javascript/json-xy/index.js +3 -2
  103. package/examples/javascript/json-xy/package.json +1 -1
  104. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  105. package/examples/javascript/map-clustered-points/package.json +1 -1
  106. package/examples/javascript/map-day-and-night/package.json +1 -1
  107. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  108. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  109. package/examples/javascript/map-with-bubbles/package.json +1 -1
  110. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  111. package/examples/javascript/misc-40-charts/package.json +1 -1
  112. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  113. package/examples/javascript/pie-chart/package.json +1 -1
  114. package/examples/javascript/pie-donut-chart/package.json +1 -1
  115. package/examples/javascript/pie-variable-radius/package.json +1 -1
  116. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  117. package/examples/javascript/radar-heat-map/package.json +1 -1
  118. package/examples/javascript/radar-line/package.json +1 -1
  119. package/examples/javascript/radar-time-line/index.js +2 -1
  120. package/examples/javascript/radar-time-line/package.json +1 -1
  121. package/examples/javascript/sliced-funnel/package.json +1 -1
  122. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  123. package/examples/javascript/sliced-pyramid/package.json +1 -1
  124. package/examples/javascript/stock-chart/index.js +3 -1
  125. package/examples/javascript/stock-chart/package.json +1 -1
  126. package/examples/javascript/stock-chart-comparing-stocks/index.js +3 -1
  127. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  128. package/examples/javascript/stock-chart-data-granularity/index.js +3 -1
  129. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  130. package/examples/javascript/stock-chart-data-grouping/index.js +6 -2
  131. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  132. package/examples/javascript/stock-chart-intraday/index.js +3 -1
  133. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  134. package/examples/javascript/stock-chart-live/index.js +3 -1
  135. package/examples/javascript/stock-chart-live/package.json +1 -1
  136. package/examples/javascript/stock-chart-volume-separate-panel/index.js +6 -2
  137. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  138. package/examples/javascript/venn-diagram/package.json +1 -1
  139. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  140. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  141. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  142. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/index.js +3 -1
  143. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  144. package/examples/javascript/xy-bubble/package.json +1 -1
  145. package/examples/javascript/xy-candlestick/index.js +1 -0
  146. package/examples/javascript/xy-candlestick/package.json +1 -1
  147. package/examples/javascript/xy-clustered-column/package.json +1 -1
  148. package/examples/javascript/xy-column/index.js +3 -1
  149. package/examples/javascript/xy-column/package.json +1 -1
  150. package/examples/javascript/xy-comparing-series-google-analytics-style/index.js +3 -1
  151. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  152. package/examples/javascript/xy-data-grouping/index.js +1 -0
  153. package/examples/javascript/xy-data-grouping/package.json +1 -1
  154. package/examples/javascript/xy-draggable-range/index.js +3 -1
  155. package/examples/javascript/xy-draggable-range/package.json +1 -1
  156. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/index.js +3 -1
  157. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  158. package/examples/javascript/xy-dumbbell plot/index.js +2 -1
  159. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  160. package/examples/javascript/xy-evenly-spaced-date-axis/index.js +4 -5
  161. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  162. package/examples/javascript/xy-line/index.js +1 -0
  163. package/examples/javascript/xy-line/package.json +1 -1
  164. package/examples/javascript/xy-line-highlight-on-legend-hover/index.js +3 -1
  165. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  166. package/examples/javascript/xy-live-data/package.json +1 -1
  167. package/examples/javascript/xy-multiple-synced-value-axes/index.js +4 -2
  168. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  169. package/examples/javascript/xy-ohlc/index.js +3 -1
  170. package/examples/javascript/xy-ohlc/package.json +1 -1
  171. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  172. package/examples/javascript/xy-smoothed-line/index.js +3 -1
  173. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  174. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  175. package/examples/javascript/xy-stacked-column/package.json +1 -1
  176. package/examples/javascript/xy-stacked-step/index.js +7 -2
  177. package/examples/javascript/xy-stacked-step/package.json +1 -1
  178. package/examples/javascript/xy-stock/index.js +4 -1
  179. package/examples/javascript/xy-stock/package.json +1 -1
  180. package/examples/javascript/xy-stock-comparing/index.js +3 -1
  181. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  182. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  183. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  184. package/examples/typescript/flow-chord/package.json +1 -1
  185. package/examples/typescript/flow-chord-directed/package.json +1 -1
  186. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  187. package/examples/typescript/flow-sankey/package.json +1 -1
  188. package/examples/typescript/gauge/package.json +1 -1
  189. package/examples/typescript/gauge-bands/package.json +1 -1
  190. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  191. package/examples/typescript/hierarchy-pack/package.json +1 -1
  192. package/examples/typescript/hierarchy-partition/package.json +1 -1
  193. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  194. package/examples/typescript/hierarchy-tree/package.json +1 -1
  195. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  196. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  197. package/examples/typescript/jest/package.json +1 -1
  198. package/examples/typescript/json-pie/package.json +1 -1
  199. package/examples/typescript/json-xy/index.ts +3 -2
  200. package/examples/typescript/json-xy/package.json +1 -1
  201. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  202. package/examples/typescript/map-clustered-points/package.json +1 -1
  203. package/examples/typescript/map-day-and-night/package.json +1 -1
  204. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  205. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  206. package/examples/typescript/map-with-bubbles/package.json +1 -1
  207. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  208. package/examples/typescript/misc-40-charts/package.json +1 -1
  209. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  210. package/examples/typescript/pie-chart/package.json +1 -1
  211. package/examples/typescript/pie-donut-chart/package.json +1 -1
  212. package/examples/typescript/pie-variable-radius/package.json +1 -1
  213. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  214. package/examples/typescript/radar-heat-map/package.json +1 -1
  215. package/examples/typescript/radar-line/package.json +1 -1
  216. package/examples/typescript/radar-time-line/index.ts +2 -1
  217. package/examples/typescript/radar-time-line/package.json +1 -1
  218. package/examples/typescript/sliced-funnel/package.json +1 -1
  219. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  220. package/examples/typescript/sliced-pyramid/package.json +1 -1
  221. package/examples/typescript/stock-chart/index.ts +3 -1
  222. package/examples/typescript/stock-chart/package.json +1 -1
  223. package/examples/typescript/stock-chart-comparing-stocks/index.ts +3 -1
  224. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  225. package/examples/typescript/stock-chart-data-granularity/index.ts +3 -1
  226. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  227. package/examples/typescript/stock-chart-data-grouping/index.ts +6 -2
  228. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  229. package/examples/typescript/stock-chart-intraday/index.ts +3 -1
  230. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  231. package/examples/typescript/stock-chart-live/index.ts +3 -1
  232. package/examples/typescript/stock-chart-live/package.json +1 -1
  233. package/examples/typescript/stock-chart-volume-separate-panel/index.ts +6 -2
  234. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  235. package/examples/typescript/venn-diagram/package.json +1 -1
  236. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  237. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  238. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  239. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/index.ts +3 -1
  240. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  241. package/examples/typescript/xy-bubble/package.json +1 -1
  242. package/examples/typescript/xy-candlestick/index.ts +1 -0
  243. package/examples/typescript/xy-candlestick/package.json +1 -1
  244. package/examples/typescript/xy-clustered-column/package.json +1 -1
  245. package/examples/typescript/xy-column/index.ts +3 -1
  246. package/examples/typescript/xy-column/package.json +1 -1
  247. package/examples/typescript/xy-comparing-series-google-analytics-style/index.ts +3 -1
  248. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  249. package/examples/typescript/xy-data-grouping/index.ts +1 -0
  250. package/examples/typescript/xy-data-grouping/package.json +1 -1
  251. package/examples/typescript/xy-draggable-range/index.ts +3 -1
  252. package/examples/typescript/xy-draggable-range/package.json +1 -1
  253. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/index.ts +3 -1
  254. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  255. package/examples/typescript/xy-dumbbell plot/index.ts +2 -1
  256. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  257. package/examples/typescript/xy-evenly-spaced-date-axis/index.ts +4 -5
  258. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  259. package/examples/typescript/xy-line/index.ts +1 -0
  260. package/examples/typescript/xy-line/package.json +1 -1
  261. package/examples/typescript/xy-line-highlight-on-legend-hover/index.ts +3 -1
  262. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  263. package/examples/typescript/xy-live-data/package.json +1 -1
  264. package/examples/typescript/xy-multiple-synced-value-axes/index.ts +4 -2
  265. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  266. package/examples/typescript/xy-ohlc/index.ts +3 -1
  267. package/examples/typescript/xy-ohlc/package.json +1 -1
  268. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  269. package/examples/typescript/xy-smoothed-line/index.ts +3 -1
  270. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  271. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  272. package/examples/typescript/xy-stacked-column/package.json +1 -1
  273. package/examples/typescript/xy-stacked-step/index.ts +7 -2
  274. package/examples/typescript/xy-stacked-step/package.json +1 -1
  275. package/examples/typescript/xy-stock/index.ts +4 -1
  276. package/examples/typescript/xy-stock/package.json +1 -1
  277. package/examples/typescript/xy-stock-comparing/index.ts +3 -1
  278. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  279. package/package.json +1 -1
@@ -140,6 +140,12 @@ export class XYSeries extends Series {
140
140
  writable: true,
141
141
  value: 0
142
142
  });
143
+ Object.defineProperty(this, "_bullets", {
144
+ enumerable: true,
145
+ configurable: true,
146
+ writable: true,
147
+ value: {}
148
+ });
143
149
  /**
144
150
  * A [[Container]] that us used to put series' elements in.
145
151
  *
@@ -438,6 +444,7 @@ export class XYSeries extends Series {
438
444
  }
439
445
  _dispose() {
440
446
  super._dispose();
447
+ this._bullets = {};
441
448
  const chart = this.chart;
442
449
  if (chart) {
443
450
  chart.series.removeValue(this);
@@ -559,6 +566,7 @@ export class XYSeries extends Series {
559
566
  }
560
567
  _prepareChildren() {
561
568
  super._prepareChildren();
569
+ this._bullets = {};
562
570
  if (this.isDirty("valueYShow") || this.isDirty("valueXShow") || this.isDirty("openValueYShow") || this.isDirty("openValueXShow") || this.isDirty("lowValueYShow") || this.isDirty("lowValueXShow") || this.isDirty("highValueYShow") || this.isDirty("highValueXShow")) {
563
571
  this._updateFields();
564
572
  this._makeFieldNames();
@@ -990,30 +998,131 @@ export class XYSeries extends Series {
990
998
  let locationY = bullet.get("locationY", dataItem.get("locationY", 0.5));
991
999
  let xAxis = this.get("xAxis");
992
1000
  let yAxis = this.get("yAxis");
993
- const positionX = xAxis.getDataItemPositionX(dataItem, this._xField, locationX, this.get("vcx", 1));
994
- const positionY = yAxis.getDataItemPositionY(dataItem, this._yField, locationY, this.get("vcy", 1));
1001
+ let positionX = xAxis.getDataItemPositionX(dataItem, this._xField, locationX, this.get("vcx", 1));
1002
+ let positionY = yAxis.getDataItemPositionY(dataItem, this._yField, locationY, this.get("vcy", 1));
995
1003
  let point = this.getPoint(positionX, positionY);
996
1004
  let left = dataItem.get("left", point.x);
997
1005
  let right = dataItem.get("right", point.x);
998
1006
  let top = dataItem.get("top", point.y);
999
1007
  let bottom = dataItem.get("bottom", point.y);
1008
+ let x = 0;
1009
+ let y = 0;
1010
+ let w = right - left;
1011
+ let h = bottom - top;
1000
1012
  if (this._shouldShowBullet(positionX, positionY)) {
1001
- if (!bullet.getPrivate("hidden")) {
1002
- sprite.setPrivate("visible", true);
1013
+ sprite.setPrivate("visible", !bullet.getPrivate("hidden"));
1014
+ let field = bullet.get("field");
1015
+ const baseAxis = this.get("baseAxis");
1016
+ const xAxis = this.get("xAxis");
1017
+ const yAxis = this.get("yAxis");
1018
+ if (field != undefined) {
1019
+ let realField;
1020
+ if (baseAxis == xAxis) {
1021
+ if (field == "value") {
1022
+ realField = this._yField;
1023
+ }
1024
+ else if (field == "open") {
1025
+ realField = this._yOpenField;
1026
+ }
1027
+ else if (field == "high") {
1028
+ realField = this._yHighField;
1029
+ }
1030
+ else if (field == "low") {
1031
+ realField = this._yLowField;
1032
+ }
1033
+ if (realField) {
1034
+ positionY = yAxis.getDataItemPositionY(dataItem, realField, 0, this.get("vcy", 1));
1035
+ point = yAxis.get("renderer").positionToPoint(positionY);
1036
+ y = point.y;
1037
+ x = left + w * locationX;
1038
+ }
1039
+ }
1040
+ else {
1041
+ if (field == "value") {
1042
+ realField = this._xField;
1043
+ }
1044
+ else if (field == "open") {
1045
+ realField = this._xOpenField;
1046
+ }
1047
+ else if (field == "high") {
1048
+ realField = this._xHighField;
1049
+ }
1050
+ else if (field == "low") {
1051
+ realField = this._xLowField;
1052
+ }
1053
+ if (realField) {
1054
+ positionX = xAxis.getDataItemPositionX(dataItem, realField, 0, this.get("vcx", 1));
1055
+ point = xAxis.get("renderer").positionToPoint(positionX);
1056
+ x = point.x;
1057
+ y = bottom - h * locationY;
1058
+ }
1059
+ }
1003
1060
  }
1004
1061
  else {
1005
- sprite.setPrivate("visible", false);
1062
+ x = left + w * locationX;
1063
+ y = bottom - h * locationY;
1064
+ }
1065
+ const stacked = bullet.get("stacked");
1066
+ if (stacked) {
1067
+ const chart = this.chart;
1068
+ if (baseAxis == xAxis) {
1069
+ let previousBullet = this._bullets[positionX + "_" + positionY];
1070
+ if (previousBullet) {
1071
+ let previousBounds = previousBullet.bounds();
1072
+ let bounds = sprite.localBounds();
1073
+ let yo = y;
1074
+ y = previousBounds.top;
1075
+ if (stacked == "down") {
1076
+ y = previousBounds.bottom - bounds.top;
1077
+ }
1078
+ else if (stacked == "auto") {
1079
+ if (chart) {
1080
+ if (yo < chart.plotContainer.height() / 2) {
1081
+ y = previousBounds.bottom - bounds.top;
1082
+ }
1083
+ else {
1084
+ y += bounds.bottom;
1085
+ }
1086
+ }
1087
+ }
1088
+ else {
1089
+ y += bounds.bottom;
1090
+ }
1091
+ }
1092
+ this._bullets[positionX + "_" + positionY] = sprite;
1093
+ }
1094
+ else {
1095
+ let previousBullet = this._bullets[positionX + "_" + positionY];
1096
+ if (previousBullet) {
1097
+ let previousBounds = previousBullet.bounds();
1098
+ let bounds = sprite.localBounds();
1099
+ let xo = x;
1100
+ x = previousBounds.right;
1101
+ if (stacked == "down") {
1102
+ x = previousBounds.left - bounds.right;
1103
+ }
1104
+ else if (stacked == "auto") {
1105
+ if (chart) {
1106
+ if (xo < chart.plotContainer.width() / 2) {
1107
+ x = previousBounds.left - bounds.right;
1108
+ }
1109
+ else {
1110
+ x -= bounds.left;
1111
+ }
1112
+ }
1113
+ }
1114
+ else {
1115
+ x -= bounds.left;
1116
+ }
1117
+ }
1118
+ this._bullets[positionX + "_" + positionY] = sprite;
1119
+ }
1006
1120
  }
1007
- let w = right - left;
1008
- let h = bottom - top;
1009
1121
  if (sprite.isType("Label")) {
1010
1122
  sprite.setPrivate("maxWidth", Math.abs(w));
1011
1123
  sprite.setPrivate("maxHeight", Math.abs(h));
1012
1124
  }
1013
- let x = left + w * locationX;
1014
- let y = bottom - h * locationY;
1015
- sprite.set("x", x);
1016
- sprite.set("y", y);
1125
+ sprite.setAll({ x, y });
1017
1126
  }
1018
1127
  else {
1019
1128
  sprite.setPrivate("visible", false);
@@ -1053,21 +1162,19 @@ export class XYSeries extends Series {
1053
1162
  this._dataItems = this.mainDataItems;
1054
1163
  }
1055
1164
  _handleDataSetChange() {
1056
- if (this.bullets.length > 0) {
1057
- $array.each(this._dataItems, (dataItem) => {
1058
- let bullets = dataItem.bullets;
1059
- if (bullets) {
1060
- $array.each(bullets, (bullet) => {
1061
- if (bullet) {
1062
- let sprite = bullet.get("sprite");
1063
- if (sprite) {
1064
- sprite.setPrivate("visible", false);
1065
- }
1165
+ $array.each(this._dataItems, (dataItem) => {
1166
+ let bullets = dataItem.bullets;
1167
+ if (bullets) {
1168
+ $array.each(bullets, (bullet) => {
1169
+ if (bullet) {
1170
+ let sprite = bullet.get("sprite");
1171
+ if (sprite) {
1172
+ sprite.setPrivate("visible", false);
1066
1173
  }
1067
- });
1068
- }
1069
- });
1070
- }
1174
+ }
1175
+ });
1176
+ }
1177
+ });
1071
1178
  this._selectionProcessed = false; // for totals to be calculated
1072
1179
  }
1073
1180
  /**