highcharts 10.2.1 → 10.3.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 (732) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Accessibility/Accessibility.js +1 -1
  3. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +9 -6
  4. package/es-modules/Accessibility/Components/LegendComponent.js +36 -32
  5. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +1 -1
  6. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +16 -16
  7. package/es-modules/Accessibility/Options/LangDefaults.js +4 -0
  8. package/es-modules/Core/Axis/Axis.js +42 -32
  9. package/es-modules/Core/Axis/Axis3DComposition.js +501 -0
  10. package/es-modules/Core/Axis/Axis3DDefaults.js +130 -0
  11. package/es-modules/Core/Axis/AxisDefaults.js +20 -7
  12. package/es-modules/Core/Axis/Color/ColorAxis.js +46 -52
  13. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +4 -2
  14. package/es-modules/Core/Axis/NavigatorAxisComposition.js +161 -0
  15. package/es-modules/Core/Axis/OrdinalAxis.js +2 -1
  16. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +1 -1
  17. package/es-modules/Core/Axis/RadialAxis.js +19 -5
  18. package/es-modules/Core/Axis/Tick.js +1 -1
  19. package/es-modules/Core/Axis/Tick3DComposition.js +71 -0
  20. package/es-modules/Core/Chart/Chart.js +16 -20
  21. package/es-modules/Core/Chart/Chart3D.js +4 -4
  22. package/es-modules/Core/Chart/ChartDefaults.js +33 -43
  23. package/es-modules/Core/Chart/GanttChart.js +1 -1
  24. package/es-modules/Core/Chart/MapChart.js +1 -1
  25. package/es-modules/Core/Chart/StockChart.js +11 -28
  26. package/es-modules/Core/{DefaultOptions.js → Defaults.js} +21 -37
  27. package/es-modules/Core/FormatUtilities.js +1 -1
  28. package/es-modules/Core/Globals.js +1 -1
  29. package/es-modules/Core/Legend/Legend.js +114 -110
  30. package/es-modules/Core/Legend/LegendSymbol.js +9 -6
  31. package/es-modules/Core/MSPointer.js +4 -2
  32. package/es-modules/Core/Pointer.js +125 -75
  33. package/es-modules/Core/Renderer/SVG/SVGElement.js +0 -3
  34. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +28 -14
  35. package/es-modules/Core/Series/DataLabel.js +8 -5
  36. package/es-modules/Core/Series/Point.js +38 -22
  37. package/es-modules/Core/Series/Series.js +12 -9
  38. package/es-modules/Core/Series/SeriesDefaults.js +36 -24
  39. package/es-modules/Core/Series/SeriesRegistry.js +2 -2
  40. package/es-modules/Core/Time.js +6 -5
  41. package/es-modules/Core/Tooltip.js +6 -28
  42. package/es-modules/Core/Utilities.js +6 -8
  43. package/es-modules/Extensions/Annotations/Annotation.js +1 -1
  44. package/es-modules/Extensions/Annotations/AnnotationDefaults.js +13 -8
  45. package/es-modules/Extensions/Annotations/MockPoint.js +2 -1
  46. package/es-modules/Extensions/Annotations/NavigationBindings.js +4 -5
  47. package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +1 -1
  48. package/es-modules/Extensions/Annotations/Popup/Popup.js +2 -2
  49. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +4 -4
  50. package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
  51. package/es-modules/Extensions/Boost/BoostSeries.js +11 -8
  52. package/es-modules/Extensions/Breadcrumbs.js +2 -2
  53. package/es-modules/Extensions/Data.js +2 -2
  54. package/es-modules/Extensions/DataGrouping/ApproximationDefaults.js +157 -0
  55. package/es-modules/Extensions/DataGrouping/ApproximationRegistry.js +35 -0
  56. package/es-modules/Extensions/DataGrouping/DataGrouping.js +469 -0
  57. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +174 -0
  58. package/es-modules/Extensions/DataGrouping/DataGroupingDefaults.js +143 -0
  59. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +479 -0
  60. package/es-modules/Extensions/Debugger/Debugger.js +1 -1
  61. package/es-modules/Extensions/DraggablePoints.js +6 -2
  62. package/es-modules/Extensions/Drilldown.js +3 -5
  63. package/es-modules/Extensions/ExportData/ExportData.js +31 -5
  64. package/es-modules/Extensions/Exporting/Exporting.js +47 -60
  65. package/es-modules/Extensions/Exporting/ExportingDefaults.js +22 -24
  66. package/es-modules/Extensions/GeoJSON.js +3 -1
  67. package/es-modules/Extensions/MarkerClusters.js +1 -1
  68. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  69. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +5 -5
  70. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  71. package/es-modules/Extensions/Oldie/Oldie.js +3 -3
  72. package/es-modules/Extensions/Oldie/VMLRenderer3D.js +1 -1
  73. package/es-modules/Extensions/OldiePolyfills.js +3 -1
  74. package/es-modules/Extensions/Pane.js +42 -5
  75. package/es-modules/Extensions/ParallelCoordinates.js +5 -1
  76. package/es-modules/Extensions/PatternFill.js +10 -10
  77. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +2 -2
  78. package/es-modules/Extensions/SeriesLabel/SeriesLabelDefaults.js +4 -0
  79. package/es-modules/Extensions/Sonification/Sonification.js +1 -1
  80. package/es-modules/Extensions/Themes/Avocado.js +1 -1
  81. package/es-modules/Extensions/Themes/BrandDark.js +1 -1
  82. package/es-modules/Extensions/Themes/BrandLight.js +1 -1
  83. package/es-modules/Extensions/Themes/DarkBlue.js +1 -1
  84. package/es-modules/Extensions/Themes/DarkGreen.js +1 -1
  85. package/es-modules/Extensions/Themes/DarkUnica.js +1 -1
  86. package/es-modules/Extensions/Themes/Gray.js +1 -1
  87. package/es-modules/Extensions/Themes/Grid.js +1 -1
  88. package/es-modules/Extensions/Themes/GridLight.js +1 -1
  89. package/es-modules/Extensions/Themes/HighContrastDark.js +1 -1
  90. package/es-modules/Extensions/Themes/HighContrastLight.js +1 -1
  91. package/es-modules/Extensions/Themes/SandSignika.js +1 -1
  92. package/es-modules/Extensions/Themes/Skies.js +1 -1
  93. package/es-modules/Extensions/Themes/Sunset.js +1 -1
  94. package/es-modules/Gantt/Connection.js +5 -5
  95. package/es-modules/Gantt/Pathfinder.js +6 -6
  96. package/es-modules/Maps/MapNavigation.js +1 -1
  97. package/es-modules/Maps/{MapNavigationOptionsDefault.js → MapNavigationDefaults.js} +4 -4
  98. package/es-modules/Maps/MapViewOptionsDefault.js +4 -4
  99. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +3 -5
  100. package/es-modules/Series/AreaRange/AreaRangePoint.js +6 -10
  101. package/es-modules/Series/AreaRange/AreaRangeSeries.js +59 -48
  102. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +4 -1
  103. package/es-modules/Series/Bubble/BubbleLegendComposition.js +22 -16
  104. package/es-modules/Series/Bubble/BubbleLegendItem.js +17 -21
  105. package/es-modules/Series/Candlestick/CandlestickSeries.js +15 -175
  106. package/es-modules/Series/Candlestick/CandlestickSeriesDefaults.js +179 -0
  107. package/es-modules/Series/Column/ColumnSeries.js +25 -506
  108. package/es-modules/Series/Column/ColumnSeriesDefaults.js +487 -0
  109. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +40 -36
  110. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +2 -106
  111. package/es-modules/Series/DependencyWheel/DependencyWheelSeriesDefaults.js +183 -0
  112. package/es-modules/Series/DotPlot/DotPlotSeries.js +11 -12
  113. package/es-modules/Series/DrawPointUtilities.js +2 -14
  114. package/es-modules/Series/Dumbbell/DumbbellPoint.js +5 -4
  115. package/es-modules/Series/Dumbbell/DumbbellSeries.js +11 -7
  116. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +19 -136
  117. package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +147 -0
  118. package/es-modules/Series/Flags/FlagsPoint.js +2 -3
  119. package/es-modules/Series/Flags/FlagsSeries.js +31 -298
  120. package/es-modules/Series/Flags/FlagsSeriesDefaults.js +295 -0
  121. package/es-modules/Series/Flags/FlagsSymbols.js +96 -71
  122. package/es-modules/Series/HLC/HLCPoint.js +2 -2
  123. package/es-modules/Series/HLC/HLCSeries.js +7 -172
  124. package/es-modules/Series/HLC/HLCSeriesDefaults.js +184 -0
  125. package/es-modules/Series/Heatmap/HeatmapSeries.js +3 -0
  126. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -20
  127. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +78 -139
  128. package/es-modules/Series/HeikinAshi/HeikinAshiSeriesDefaults.js +102 -0
  129. package/es-modules/Series/Item/ItemPoint.js +0 -1
  130. package/es-modules/Series/Item/ItemSeries.js +13 -8
  131. package/es-modules/Series/Line/LineSeries.js +8 -4
  132. package/es-modules/Series/Map/MapPoint.js +19 -1
  133. package/es-modules/Series/Map/MapSeries.js +7 -3
  134. package/es-modules/Series/MapBubble/MapBubbleSeries.js +4 -0
  135. package/es-modules/Series/MapPoint/MapPointPoint.js +0 -5
  136. package/es-modules/Series/MapPoint/MapPointSeries.js +24 -9
  137. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +2 -5
  138. package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +2 -0
  139. package/es-modules/Series/OHLC/OHLCPoint.js +0 -2
  140. package/es-modules/Series/OHLC/OHLCSeries.js +64 -160
  141. package/es-modules/Series/OHLC/OHLCSeriesDefaults.js +151 -0
  142. package/es-modules/Series/Organization/OrganizationPoint.js +0 -2
  143. package/es-modules/Series/Organization/OrganizationSeries.js +96 -469
  144. package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +415 -0
  145. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -10
  146. package/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +2 -0
  147. package/es-modules/Series/PathUtilities.js +74 -0
  148. package/es-modules/Series/Pie/PieSeries.js +2 -644
  149. package/es-modules/Series/Pie/PieSeriesDefaults.js +660 -0
  150. package/es-modules/Series/PolarComposition.js +233 -15
  151. package/es-modules/Series/Sankey/SankeySeries.js +27 -530
  152. package/es-modules/Series/Sankey/SankeySeriesDefaults.js +522 -0
  153. package/es-modules/Series/Scatter/ScatterSeries.js +2 -172
  154. package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +188 -0
  155. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +12 -182
  156. package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +199 -0
  157. package/es-modules/Series/Sunburst/SunburstNode.js +34 -0
  158. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -1
  159. package/es-modules/Series/Sunburst/SunburstSeries.js +3 -1
  160. package/es-modules/Series/Timeline/TimelineSeries.js +2 -231
  161. package/es-modules/Series/Timeline/TimelineSeriesDefaults.js +248 -0
  162. package/es-modules/Series/TreeUtilities.js +1 -2
  163. package/es-modules/Series/Treegraph/TreegraphLayout.js +338 -0
  164. package/es-modules/Series/Treegraph/TreegraphLink.js +92 -0
  165. package/es-modules/Series/Treegraph/TreegraphNode.js +206 -0
  166. package/es-modules/Series/Treegraph/TreegraphPoint.js +175 -0
  167. package/es-modules/Series/Treegraph/TreegraphSeries.js +510 -0
  168. package/es-modules/Series/Treegraph/TreegraphSeriesDefaults.js +231 -0
  169. package/es-modules/Series/Treemap/TreemapNode.js +48 -0
  170. package/es-modules/Series/Treemap/TreemapPoint.js +2 -1
  171. package/es-modules/Series/Treemap/TreemapSeries.js +29 -27
  172. package/es-modules/Series/Variwide/VariwideComposition.js +70 -26
  173. package/es-modules/Series/Variwide/VariwidePoint.js +8 -7
  174. package/es-modules/Series/Variwide/VariwideSeries.js +19 -14
  175. package/es-modules/Series/Vector/VectorSeries.js +2 -2
  176. package/es-modules/Series/Venn/VennSeries.js +14 -0
  177. package/es-modules/Series/Waterfall/WaterfallSeries.js +0 -1
  178. package/es-modules/Series/Windbarb/WindbarbSeries.js +3 -2
  179. package/es-modules/Series/Wordcloud/WordcloudSeries.js +3 -0
  180. package/es-modules/Stock/Indicators/AO/AOIndicator.js +1 -2
  181. package/es-modules/Stock/Indicators/BB/BBIndicator.js +15 -4
  182. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +21 -18
  183. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +1 -2
  184. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
  185. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +1 -1
  186. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +0 -1
  187. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +3 -4
  188. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +1 -2
  189. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +6 -7
  190. package/es-modules/{Core → Stock/Navigator}/Navigator.js +112 -686
  191. package/es-modules/Stock/Navigator/NavigatorComposition.js +218 -0
  192. package/es-modules/Stock/Navigator/NavigatorDefaults.js +490 -0
  193. package/es-modules/Stock/Navigator/NavigatorSymbols.js +44 -0
  194. package/es-modules/{Extensions → Stock/RangeSelector}/RangeSelector.js +154 -818
  195. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +286 -0
  196. package/es-modules/Stock/RangeSelector/RangeSelectorDefaults.js +521 -0
  197. package/es-modules/{Core → Stock/Scrollbar}/Scrollbar.js +4 -4
  198. package/es-modules/{Core → Stock/Scrollbar}/ScrollbarDefaults.js +1 -1
  199. package/es-modules/Stock/{StockToolbar.js → StockTools/StockToolbar.js} +2 -2
  200. package/es-modules/Stock/{StockTools.js → StockTools/StockTools.js} +3 -3
  201. package/es-modules/Stock/{StockToolsBindings.js → StockTools/StockToolsBindings.js} +3 -3
  202. package/es-modules/Stock/{StockToolsDefaults.js → StockTools/StockToolsDefaults.js} +4 -4
  203. package/es-modules/Stock/{StockToolsGui.js → StockTools/StockToolsGui.js} +4 -4
  204. package/es-modules/Stock/{StockToolsUtilities.js → StockTools/StockToolsUtilities.js} +4 -4
  205. package/es-modules/masters/highcharts-3d.src.js +3 -5
  206. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  207. package/es-modules/masters/highcharts-more.src.js +1 -1
  208. package/es-modules/masters/highcharts.src.js +6 -6
  209. package/es-modules/masters/highmaps.src.js +1 -1
  210. package/es-modules/masters/highstock.src.js +1 -1
  211. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  212. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  213. package/es-modules/masters/indicators/ao.src.js +1 -1
  214. package/es-modules/masters/indicators/apo.src.js +1 -1
  215. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  216. package/es-modules/masters/indicators/aroon.src.js +1 -1
  217. package/es-modules/masters/indicators/atr.src.js +1 -1
  218. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  219. package/es-modules/masters/indicators/cci.src.js +1 -1
  220. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  221. package/es-modules/masters/indicators/cmf.src.js +1 -1
  222. package/es-modules/masters/indicators/cmo.src.js +1 -1
  223. package/es-modules/masters/indicators/dema.src.js +1 -1
  224. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  225. package/es-modules/masters/indicators/dmi.src.js +1 -1
  226. package/es-modules/masters/indicators/dpo.src.js +1 -1
  227. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  228. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  229. package/es-modules/masters/indicators/indicators.src.js +1 -1
  230. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  231. package/es-modules/masters/indicators/klinger.src.js +1 -1
  232. package/es-modules/masters/indicators/macd.src.js +1 -1
  233. package/es-modules/masters/indicators/mfi.src.js +1 -1
  234. package/es-modules/masters/indicators/momentum.src.js +1 -1
  235. package/es-modules/masters/indicators/natr.src.js +1 -1
  236. package/es-modules/masters/indicators/obv.src.js +1 -1
  237. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  238. package/es-modules/masters/indicators/ppo.src.js +1 -1
  239. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  240. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  241. package/es-modules/masters/indicators/psar.src.js +1 -1
  242. package/es-modules/masters/indicators/regressions.src.js +1 -1
  243. package/es-modules/masters/indicators/roc.src.js +1 -1
  244. package/es-modules/masters/indicators/rsi.src.js +1 -1
  245. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  246. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  247. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  248. package/es-modules/masters/indicators/tema.src.js +1 -1
  249. package/es-modules/masters/indicators/trendline.src.js +1 -1
  250. package/es-modules/masters/indicators/trix.src.js +1 -1
  251. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  252. package/es-modules/masters/indicators/vwap.src.js +1 -1
  253. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  254. package/es-modules/masters/indicators/wma.src.js +1 -1
  255. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  256. package/es-modules/masters/modules/accessibility.src.js +1 -1
  257. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  258. package/es-modules/masters/modules/annotations.src.js +1 -1
  259. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  260. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  261. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  262. package/es-modules/masters/modules/boost.src.js +1 -1
  263. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  264. package/es-modules/masters/modules/bullet.src.js +1 -1
  265. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  266. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  267. package/es-modules/masters/modules/cylinder.src.js +1 -1
  268. package/es-modules/masters/modules/data.src.js +1 -1
  269. package/es-modules/masters/modules/datagrouping.src.js +11 -3
  270. package/es-modules/masters/modules/debugger.src.js +1 -1
  271. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  272. package/es-modules/masters/modules/dotplot.src.js +1 -1
  273. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  274. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  275. package/es-modules/masters/modules/drilldown.src.js +1 -1
  276. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  277. package/es-modules/masters/modules/export-data.src.js +1 -1
  278. package/es-modules/masters/modules/exporting.src.js +1 -1
  279. package/es-modules/masters/modules/full-screen.src.js +1 -1
  280. package/es-modules/masters/modules/funnel.src.js +1 -1
  281. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  282. package/es-modules/masters/modules/gantt.src.js +9 -5
  283. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  284. package/es-modules/masters/modules/heatmap.src.js +1 -1
  285. package/es-modules/masters/modules/heikinashi.src.js +5 -2
  286. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  287. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  288. package/es-modules/masters/modules/item-series.src.js +1 -1
  289. package/es-modules/masters/modules/lollipop.src.js +1 -1
  290. package/es-modules/masters/modules/map.src.js +1 -1
  291. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  292. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  293. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  294. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  295. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  296. package/es-modules/masters/modules/oldie.src.js +1 -1
  297. package/es-modules/masters/modules/organization.src.js +1 -1
  298. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  299. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  300. package/es-modules/masters/modules/pareto.src.js +1 -1
  301. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  302. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  303. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  304. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  305. package/es-modules/masters/modules/sankey.src.js +1 -1
  306. package/es-modules/masters/modules/series-label.src.js +1 -1
  307. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  308. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  309. package/es-modules/masters/modules/sonification.src.js +1 -1
  310. package/es-modules/masters/modules/static-scale.src.js +1 -1
  311. package/es-modules/masters/modules/stock-tools.src.js +4 -4
  312. package/es-modules/masters/modules/stock.src.js +17 -11
  313. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  314. package/es-modules/masters/modules/sunburst.src.js +1 -1
  315. package/es-modules/masters/modules/tilemap.src.js +1 -1
  316. package/es-modules/masters/modules/timeline.src.js +1 -1
  317. package/es-modules/masters/modules/treegraph.src.js +13 -0
  318. package/es-modules/masters/modules/treegrid.src.js +1 -1
  319. package/es-modules/masters/modules/treemap.src.js +1 -1
  320. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  321. package/es-modules/masters/modules/variwide.src.js +5 -2
  322. package/es-modules/masters/modules/vector.src.js +1 -1
  323. package/es-modules/masters/modules/venn.src.js +1 -1
  324. package/es-modules/masters/modules/windbarb.src.js +1 -1
  325. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  326. package/es-modules/masters/modules/xrange.src.js +1 -1
  327. package/es-modules/masters/themes/avocado.src.js +1 -1
  328. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  329. package/es-modules/masters/themes/brand-light.src.js +1 -1
  330. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  331. package/es-modules/masters/themes/dark-green.src.js +1 -1
  332. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  333. package/es-modules/masters/themes/gray.src.js +1 -1
  334. package/es-modules/masters/themes/grid-light.src.js +1 -1
  335. package/es-modules/masters/themes/grid.src.js +1 -1
  336. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  337. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  338. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  339. package/es-modules/masters/themes/skies.src.js +1 -1
  340. package/es-modules/masters/themes/sunset.src.js +1 -1
  341. package/highcharts-3d.js +97 -98
  342. package/highcharts-3d.js.map +1 -1
  343. package/highcharts-3d.src.js +476 -449
  344. package/highcharts-gantt.js +811 -808
  345. package/highcharts-gantt.js.map +1 -1
  346. package/highcharts-gantt.src.js +14619 -14112
  347. package/highcharts-more.d.ts +0 -8
  348. package/highcharts-more.js +208 -201
  349. package/highcharts-more.js.map +1 -1
  350. package/highcharts-more.src.d.ts +0 -8
  351. package/highcharts-more.src.js +679 -289
  352. package/highcharts.d.ts +30739 -6156
  353. package/highcharts.js +590 -589
  354. package/highcharts.js.map +1 -1
  355. package/highcharts.src.d.ts +30739 -6156
  356. package/highcharts.src.js +1988 -1799
  357. package/highmaps.js +759 -757
  358. package/highmaps.js.map +1 -1
  359. package/highmaps.src.js +2339 -2077
  360. package/highstock.js +802 -794
  361. package/highstock.js.map +1 -1
  362. package/highstock.src.js +12349 -11416
  363. package/indicators/acceleration-bands.js +1 -1
  364. package/indicators/acceleration-bands.src.js +1 -1
  365. package/indicators/accumulation-distribution.js +1 -1
  366. package/indicators/accumulation-distribution.src.js +1 -1
  367. package/indicators/ao.js +6 -6
  368. package/indicators/ao.js.map +1 -1
  369. package/indicators/ao.src.js +4 -3
  370. package/indicators/apo.js +1 -1
  371. package/indicators/apo.src.js +1 -1
  372. package/indicators/aroon-oscillator.js +1 -1
  373. package/indicators/aroon-oscillator.src.js +1 -1
  374. package/indicators/aroon.js +1 -1
  375. package/indicators/aroon.src.js +1 -1
  376. package/indicators/atr.js +1 -1
  377. package/indicators/atr.src.js +1 -1
  378. package/indicators/bollinger-bands.js +1 -1
  379. package/indicators/bollinger-bands.js.map +1 -1
  380. package/indicators/bollinger-bands.src.js +16 -5
  381. package/indicators/cci.js +1 -1
  382. package/indicators/cci.src.js +1 -1
  383. package/indicators/chaikin.js +1 -1
  384. package/indicators/chaikin.src.js +1 -1
  385. package/indicators/cmf.js +1 -1
  386. package/indicators/cmf.src.js +1 -1
  387. package/indicators/cmo.d.ts +17 -0
  388. package/indicators/cmo.js +1 -1
  389. package/indicators/cmo.src.d.ts +17 -0
  390. package/indicators/cmo.src.js +1 -1
  391. package/indicators/dema.js +1 -1
  392. package/indicators/dema.src.js +1 -1
  393. package/indicators/disparity-index.d.ts +17 -0
  394. package/indicators/disparity-index.js +1 -1
  395. package/indicators/disparity-index.src.d.ts +17 -0
  396. package/indicators/disparity-index.src.js +1 -1
  397. package/indicators/dmi.d.ts +17 -0
  398. package/indicators/dmi.js +1 -1
  399. package/indicators/dmi.src.d.ts +17 -0
  400. package/indicators/dmi.src.js +1 -1
  401. package/indicators/dpo.js +1 -1
  402. package/indicators/dpo.src.js +1 -1
  403. package/indicators/ichimoku-kinko-hyo.js +14 -14
  404. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  405. package/indicators/ichimoku-kinko-hyo.src.js +22 -19
  406. package/indicators/indicators-all.js +198 -199
  407. package/indicators/indicators-all.js.map +1 -1
  408. package/indicators/indicators-all.src.js +63 -57
  409. package/indicators/indicators.js +13 -13
  410. package/indicators/indicators.js.map +1 -1
  411. package/indicators/indicators.src.js +1 -15
  412. package/indicators/keltner-channels.js +1 -1
  413. package/indicators/keltner-channels.src.js +1 -1
  414. package/indicators/klinger.d.ts +17 -0
  415. package/indicators/klinger.js +12 -12
  416. package/indicators/klinger.js.map +1 -1
  417. package/indicators/klinger.src.d.ts +17 -0
  418. package/indicators/klinger.src.js +4 -3
  419. package/indicators/macd.js +1 -1
  420. package/indicators/macd.js.map +1 -1
  421. package/indicators/macd.src.js +4 -3
  422. package/indicators/mfi.js +1 -1
  423. package/indicators/mfi.src.js +1 -1
  424. package/indicators/momentum.js +1 -1
  425. package/indicators/momentum.src.js +1 -1
  426. package/indicators/natr.js +1 -1
  427. package/indicators/natr.src.js +1 -1
  428. package/indicators/obv.d.ts +17 -0
  429. package/indicators/obv.js +1 -1
  430. package/indicators/obv.src.d.ts +17 -0
  431. package/indicators/obv.src.js +1 -1
  432. package/indicators/pivot-points.js +2 -2
  433. package/indicators/pivot-points.js.map +1 -1
  434. package/indicators/pivot-points.src.js +2 -2
  435. package/indicators/ppo.js +1 -1
  436. package/indicators/ppo.src.js +1 -1
  437. package/indicators/price-channel.js +1 -1
  438. package/indicators/price-channel.src.js +1 -1
  439. package/indicators/price-envelopes.js +1 -1
  440. package/indicators/price-envelopes.src.js +1 -1
  441. package/indicators/psar.js +1 -1
  442. package/indicators/psar.src.js +1 -1
  443. package/indicators/regressions.js +1 -1
  444. package/indicators/regressions.src.js +1 -1
  445. package/indicators/roc.js +1 -1
  446. package/indicators/roc.src.js +1 -1
  447. package/indicators/rsi.js +1 -1
  448. package/indicators/rsi.src.js +1 -1
  449. package/indicators/slow-stochastic.js +5 -5
  450. package/indicators/slow-stochastic.js.map +1 -1
  451. package/indicators/slow-stochastic.src.js +6 -5
  452. package/indicators/stochastic.js +1 -1
  453. package/indicators/stochastic.src.js +1 -1
  454. package/indicators/supertrend.js +7 -7
  455. package/indicators/supertrend.js.map +1 -1
  456. package/indicators/supertrend.src.js +4 -3
  457. package/indicators/tema.js +1 -1
  458. package/indicators/tema.src.js +1 -1
  459. package/indicators/trendline.js +1 -1
  460. package/indicators/trendline.src.js +1 -1
  461. package/indicators/trix.js +1 -1
  462. package/indicators/trix.src.js +1 -1
  463. package/indicators/volume-by-price.js +17 -17
  464. package/indicators/volume-by-price.js.map +1 -1
  465. package/indicators/volume-by-price.src.js +9 -8
  466. package/indicators/vwap.js +1 -1
  467. package/indicators/vwap.src.js +1 -1
  468. package/indicators/williams-r.js +1 -1
  469. package/indicators/williams-r.src.js +1 -1
  470. package/indicators/wma.js +1 -1
  471. package/indicators/wma.src.js +1 -1
  472. package/indicators/zigzag.js +1 -1
  473. package/indicators/zigzag.src.js +1 -1
  474. package/modules/accessibility.js +214 -213
  475. package/modules/accessibility.js.map +1 -1
  476. package/modules/accessibility.src.js +991 -835
  477. package/modules/annotations-advanced.js +16 -16
  478. package/modules/annotations-advanced.js.map +1 -1
  479. package/modules/annotations-advanced.src.js +29 -24
  480. package/modules/annotations.js +91 -91
  481. package/modules/annotations.js.map +1 -1
  482. package/modules/annotations.src.js +29 -24
  483. package/modules/arc-diagram.d.ts +17 -0
  484. package/modules/arc-diagram.js +15 -15
  485. package/modules/arc-diagram.js.map +1 -1
  486. package/modules/arc-diagram.src.d.ts +17 -0
  487. package/modules/arc-diagram.src.js +6 -6
  488. package/modules/arrow-symbols.js +1 -1
  489. package/modules/arrow-symbols.src.js +1 -1
  490. package/modules/boost-canvas.js +19 -19
  491. package/modules/boost-canvas.js.map +1 -1
  492. package/modules/boost-canvas.src.js +13 -8
  493. package/modules/boost.js +37 -37
  494. package/modules/boost.js.map +1 -1
  495. package/modules/boost.src.js +13 -8
  496. package/modules/broken-axis.js +1 -1
  497. package/modules/broken-axis.src.js +1 -1
  498. package/modules/bullet.js +1 -1
  499. package/modules/bullet.src.js +1 -1
  500. package/modules/coloraxis.js +25 -24
  501. package/modules/coloraxis.js.map +1 -1
  502. package/modules/coloraxis.src.js +77 -58
  503. package/modules/current-date-indicator.js +1 -1
  504. package/modules/current-date-indicator.src.js +1 -1
  505. package/modules/cylinder.js +1 -1
  506. package/modules/cylinder.src.js +1 -1
  507. package/modules/data.js +27 -27
  508. package/modules/data.js.map +1 -1
  509. package/modules/data.src.js +3 -3
  510. package/modules/datagrouping.d.ts +31 -0
  511. package/modules/datagrouping.js +23 -21
  512. package/modules/datagrouping.js.map +1 -1
  513. package/modules/datagrouping.src.d.ts +31 -0
  514. package/modules/datagrouping.src.js +921 -640
  515. package/modules/debugger.js +3 -3
  516. package/modules/debugger.js.map +1 -1
  517. package/modules/debugger.src.js +2 -2
  518. package/modules/dependency-wheel.js +12 -12
  519. package/modules/dependency-wheel.js.map +1 -1
  520. package/modules/dependency-wheel.src.js +191 -108
  521. package/modules/dotplot.js +6 -6
  522. package/modules/dotplot.js.map +1 -1
  523. package/modules/dotplot.src.js +10 -13
  524. package/modules/drag-panes.js +1 -1
  525. package/modules/drag-panes.src.js +1 -1
  526. package/modules/draggable-points.js +5 -5
  527. package/modules/draggable-points.js.map +1 -1
  528. package/modules/draggable-points.src.js +7 -3
  529. package/modules/drilldown.js +37 -37
  530. package/modules/drilldown.js.map +1 -1
  531. package/modules/drilldown.src.js +5 -6
  532. package/modules/dumbbell.js +17 -17
  533. package/modules/dumbbell.js.map +1 -1
  534. package/modules/dumbbell.src.js +27 -22
  535. package/modules/export-data.js +26 -25
  536. package/modules/export-data.js.map +1 -1
  537. package/modules/export-data.src.js +33 -6
  538. package/modules/exporting.js +36 -35
  539. package/modules/exporting.js.map +1 -1
  540. package/modules/exporting.src.js +81 -88
  541. package/modules/full-screen.js +1 -1
  542. package/modules/full-screen.src.js +1 -1
  543. package/modules/funnel.js +1 -1
  544. package/modules/funnel.src.js +1 -1
  545. package/modules/funnel3d.js +1 -1
  546. package/modules/funnel3d.src.js +1 -1
  547. package/modules/gantt.js +221 -219
  548. package/modules/gantt.js.map +1 -1
  549. package/modules/gantt.src.js +12842 -12524
  550. package/modules/grid-axis.js +1 -1
  551. package/modules/grid-axis.src.js +1 -1
  552. package/modules/heatmap.js +40 -40
  553. package/modules/heatmap.js.map +1 -1
  554. package/modules/heatmap.src.js +80 -58
  555. package/modules/heikinashi.d.ts +17 -0
  556. package/modules/heikinashi.js +9 -8
  557. package/modules/heikinashi.js.map +1 -1
  558. package/modules/heikinashi.src.d.ts +17 -0
  559. package/modules/heikinashi.src.js +192 -165
  560. package/modules/histogram-bellcurve.js +1 -1
  561. package/modules/histogram-bellcurve.src.js +1 -1
  562. package/modules/hollowcandlestick.d.ts +17 -0
  563. package/modules/hollowcandlestick.js +1 -1
  564. package/modules/hollowcandlestick.src.d.ts +17 -0
  565. package/modules/hollowcandlestick.src.js +1 -1
  566. package/modules/item-series.js +12 -12
  567. package/modules/item-series.js.map +1 -1
  568. package/modules/item-series.src.js +14 -10
  569. package/modules/lollipop.js +1 -1
  570. package/modules/lollipop.src.js +1 -1
  571. package/modules/map.js +172 -171
  572. package/modules/map.js.map +1 -1
  573. package/modules/map.src.js +194 -121
  574. package/modules/marker-clusters.js +2 -2
  575. package/modules/marker-clusters.js.map +1 -1
  576. package/modules/marker-clusters.src.js +2 -2
  577. package/modules/networkgraph.js +8 -8
  578. package/modules/networkgraph.js.map +1 -1
  579. package/modules/networkgraph.src.js +5 -6
  580. package/modules/no-data-to-display.js +4 -4
  581. package/modules/no-data-to-display.js.map +1 -1
  582. package/modules/no-data-to-display.src.js +2 -2
  583. package/modules/offline-exporting.js +4 -4
  584. package/modules/offline-exporting.js.map +1 -1
  585. package/modules/offline-exporting.src.js +7 -7
  586. package/modules/oldie-polyfills.js +7 -7
  587. package/modules/oldie-polyfills.js.map +1 -1
  588. package/modules/oldie-polyfills.src.js +9 -7
  589. package/modules/oldie.js +30 -30
  590. package/modules/oldie.js.map +1 -1
  591. package/modules/oldie.src.js +5 -5
  592. package/modules/organization.js +18 -16
  593. package/modules/organization.js.map +1 -1
  594. package/modules/organization.src.js +659 -495
  595. package/modules/overlapping-datalabels.js +1 -1
  596. package/modules/overlapping-datalabels.src.js +1 -1
  597. package/modules/parallel-coordinates.js +10 -10
  598. package/modules/parallel-coordinates.js.map +1 -1
  599. package/modules/parallel-coordinates.src.js +6 -2
  600. package/modules/pareto.js +1 -1
  601. package/modules/pareto.src.js +1 -1
  602. package/modules/pathfinder.js +31 -31
  603. package/modules/pathfinder.js.map +1 -1
  604. package/modules/pathfinder.src.js +19 -23
  605. package/modules/pattern-fill.js +2 -2
  606. package/modules/pattern-fill.js.map +1 -1
  607. package/modules/pattern-fill.src.js +11 -11
  608. package/modules/price-indicator.js +1 -1
  609. package/modules/price-indicator.src.js +1 -1
  610. package/modules/pyramid3d.js +1 -1
  611. package/modules/pyramid3d.src.js +1 -1
  612. package/modules/sankey.js +33 -32
  613. package/modules/sankey.js.map +1 -1
  614. package/modules/sankey.src.js +571 -550
  615. package/modules/series-label.js +17 -17
  616. package/modules/series-label.js.map +1 -1
  617. package/modules/series-label.src.js +7 -3
  618. package/modules/series-on-point.d.ts +17 -0
  619. package/modules/series-on-point.js +1 -1
  620. package/modules/series-on-point.src.d.ts +17 -0
  621. package/modules/series-on-point.src.js +1 -1
  622. package/modules/solid-gauge.js +11 -10
  623. package/modules/solid-gauge.js.map +1 -1
  624. package/modules/solid-gauge.src.js +220 -192
  625. package/modules/sonification.js +2 -2
  626. package/modules/sonification.js.map +1 -1
  627. package/modules/sonification.src.js +2 -2
  628. package/modules/static-scale.js +1 -1
  629. package/modules/static-scale.src.js +1 -1
  630. package/modules/stock-tools.js +59 -59
  631. package/modules/stock-tools.js.map +1 -1
  632. package/modules/stock-tools.src.js +19 -21
  633. package/modules/stock.d.ts +26 -6
  634. package/modules/stock.js +212 -205
  635. package/modules/stock.js.map +1 -1
  636. package/modules/stock.src.d.ts +26 -6
  637. package/modules/stock.src.js +11361 -10617
  638. package/modules/streamgraph.js +1 -1
  639. package/modules/streamgraph.src.js +1 -1
  640. package/modules/sunburst.js +75 -73
  641. package/modules/sunburst.js.map +1 -1
  642. package/modules/sunburst.src.js +133 -57
  643. package/modules/tilemap.js +1 -1
  644. package/modules/tilemap.src.js +1 -1
  645. package/modules/timeline.js +18 -18
  646. package/modules/timeline.js.map +1 -1
  647. package/modules/timeline.src.js +257 -233
  648. package/modules/treegraph.d.ts +17 -0
  649. package/modules/treegraph.js +44 -0
  650. package/modules/treegraph.js.map +1 -0
  651. package/modules/treegraph.src.d.ts +17 -0
  652. package/modules/treegraph.src.js +1829 -0
  653. package/modules/treegrid.js +2 -2
  654. package/modules/treegrid.js.map +1 -1
  655. package/modules/treegrid.src.js +2 -3
  656. package/modules/treemap.js +54 -53
  657. package/modules/treemap.js.map +1 -1
  658. package/modules/treemap.src.js +90 -52
  659. package/modules/variable-pie.js +1 -1
  660. package/modules/variable-pie.src.js +1 -1
  661. package/modules/variwide.js +12 -12
  662. package/modules/variwide.js.map +1 -1
  663. package/modules/variwide.src.js +158 -106
  664. package/modules/vector.js +1 -1
  665. package/modules/vector.src.js +3 -3
  666. package/modules/venn.js +31 -31
  667. package/modules/venn.js.map +1 -1
  668. package/modules/venn.src.js +17 -16
  669. package/modules/windbarb.js +15 -15
  670. package/modules/windbarb.js.map +1 -1
  671. package/modules/windbarb.src.js +41 -4
  672. package/modules/wordcloud.js +23 -23
  673. package/modules/wordcloud.js.map +1 -1
  674. package/modules/wordcloud.src.js +6 -15
  675. package/modules/xrange.js +1 -1
  676. package/modules/xrange.src.js +1 -1
  677. package/package.json +1 -1
  678. package/themes/avocado.js +2 -3
  679. package/themes/avocado.js.map +1 -1
  680. package/themes/avocado.src.js +2 -2
  681. package/themes/brand-dark.d.ts +22 -0
  682. package/themes/brand-dark.js +3 -3
  683. package/themes/brand-dark.js.map +1 -1
  684. package/themes/brand-dark.src.d.ts +22 -0
  685. package/themes/brand-dark.src.js +2 -2
  686. package/themes/brand-light.d.ts +22 -0
  687. package/themes/brand-light.js +2 -2
  688. package/themes/brand-light.js.map +1 -1
  689. package/themes/brand-light.src.d.ts +22 -0
  690. package/themes/brand-light.src.js +2 -2
  691. package/themes/dark-blue.js +2 -2
  692. package/themes/dark-blue.js.map +1 -1
  693. package/themes/dark-blue.src.js +2 -2
  694. package/themes/dark-green.js +2 -2
  695. package/themes/dark-green.js.map +1 -1
  696. package/themes/dark-green.src.js +2 -2
  697. package/themes/dark-unica.js +2 -2
  698. package/themes/dark-unica.js.map +1 -1
  699. package/themes/dark-unica.src.js +2 -2
  700. package/themes/gray.js +2 -2
  701. package/themes/gray.js.map +1 -1
  702. package/themes/gray.src.js +2 -2
  703. package/themes/grid-light.js +2 -2
  704. package/themes/grid-light.js.map +1 -1
  705. package/themes/grid-light.src.js +2 -2
  706. package/themes/grid.js +2 -2
  707. package/themes/grid.js.map +1 -1
  708. package/themes/grid.src.js +2 -2
  709. package/themes/high-contrast-dark.d.ts +22 -0
  710. package/themes/high-contrast-dark.js +2 -2
  711. package/themes/high-contrast-dark.js.map +1 -1
  712. package/themes/high-contrast-dark.src.d.ts +22 -0
  713. package/themes/high-contrast-dark.src.js +2 -2
  714. package/themes/high-contrast-light.d.ts +22 -0
  715. package/themes/high-contrast-light.js +2 -2
  716. package/themes/high-contrast-light.js.map +1 -1
  717. package/themes/high-contrast-light.src.d.ts +22 -0
  718. package/themes/high-contrast-light.src.js +2 -2
  719. package/themes/sand-signika.js +2 -2
  720. package/themes/sand-signika.js.map +1 -1
  721. package/themes/sand-signika.src.js +2 -2
  722. package/themes/skies.js +2 -2
  723. package/themes/skies.js.map +1 -1
  724. package/themes/skies.src.js +2 -2
  725. package/themes/sunset.js +2 -2
  726. package/themes/sunset.js.map +1 -1
  727. package/themes/sunset.src.js +2 -2
  728. package/es-modules/Core/Axis/Axis3D.js +0 -612
  729. package/es-modules/Core/Axis/NavigatorAxis.js +0 -159
  730. package/es-modules/Core/Axis/Tick3D.js +0 -68
  731. package/es-modules/Extensions/DataGrouping.js +0 -1177
  732. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -12
@@ -0,0 +1,157 @@
1
+ /* *
2
+ *
3
+ * (c) 2010-2021 Torstein Honsi
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * */
10
+ 'use strict';
11
+ import ApproximationRegistry from './ApproximationRegistry.js';
12
+ import U from '../../Core/Utilities.js';
13
+ var arrayMax = U.arrayMax, arrayMin = U.arrayMin, correctFloat = U.correctFloat, extend = U.extend, isNumber = U.isNumber;
14
+ /* *
15
+ *
16
+ * Functions
17
+ *
18
+ * */
19
+ /**
20
+ * @private
21
+ */
22
+ function average(arr) {
23
+ var len = arr.length;
24
+ var ret = sum(arr);
25
+ // If we have a number, return it divided by the length. If not,
26
+ // return null or undefined based on what the sum method finds.
27
+ if (isNumber(ret) && len) {
28
+ ret = correctFloat(ret / len);
29
+ }
30
+ return ret;
31
+ }
32
+ /**
33
+ * The same as average, but for series with multiple values, like area ranges.
34
+ * @private
35
+ */
36
+ function averages() {
37
+ var ret = [];
38
+ [].forEach.call(arguments, function (arr) {
39
+ ret.push(average(arr));
40
+ });
41
+ // Return undefined when first elem. is undefined and let
42
+ // sum method handle null (#7377)
43
+ return typeof ret[0] === 'undefined' ? void 0 : ret;
44
+ }
45
+ /**
46
+ * @private
47
+ */
48
+ function close(arr) {
49
+ return arr.length ?
50
+ arr[arr.length - 1] :
51
+ (arr.hasNulls ? null : void 0);
52
+ }
53
+ /**
54
+ * @private
55
+ */
56
+ function high(arr) {
57
+ return arr.length ?
58
+ arrayMax(arr) :
59
+ (arr.hasNulls ? null : void 0);
60
+ }
61
+ /**
62
+ * HLC, OHLC and range are special cases where a multidimensional array is input
63
+ * and an array is output.
64
+ * @private
65
+ */
66
+ function hlc(high, low, close) {
67
+ high = ApproximationRegistry.high(high);
68
+ low = ApproximationRegistry.low(low);
69
+ close = ApproximationRegistry.close(close);
70
+ if (isNumber(high) ||
71
+ isNumber(low) ||
72
+ isNumber(close)) {
73
+ return [high, low, close];
74
+ }
75
+ }
76
+ /**
77
+ * @private
78
+ */
79
+ function low(arr) {
80
+ return arr.length ?
81
+ arrayMin(arr) :
82
+ (arr.hasNulls ? null : void 0);
83
+ }
84
+ /**
85
+ * @private
86
+ */
87
+ function ohlc(open, high, low, close) {
88
+ open = ApproximationRegistry.open(open);
89
+ high = ApproximationRegistry.high(high);
90
+ low = ApproximationRegistry.low(low);
91
+ close = ApproximationRegistry.close(close);
92
+ if (isNumber(open) ||
93
+ isNumber(high) ||
94
+ isNumber(low) ||
95
+ isNumber(close)) {
96
+ return [open, high, low, close];
97
+ }
98
+ }
99
+ /**
100
+ * @private
101
+ */
102
+ function open(arr) {
103
+ return arr.length ? arr[0] : (arr.hasNulls ? null : void 0);
104
+ }
105
+ /**
106
+ * @private
107
+ */
108
+ function range(low, high) {
109
+ low = ApproximationRegistry.low(low);
110
+ high = ApproximationRegistry.high(high);
111
+ if (isNumber(low) || isNumber(high)) {
112
+ return [low, high];
113
+ }
114
+ if (low === null && high === null) {
115
+ return null;
116
+ }
117
+ // else, return is undefined
118
+ }
119
+ /**
120
+ * @private
121
+ */
122
+ function sum(arr) {
123
+ var len = arr.length, ret;
124
+ // 1. it consists of nulls exclusive
125
+ if (!len && arr.hasNulls) {
126
+ ret = null;
127
+ // 2. it has a length and real values
128
+ }
129
+ else if (len) {
130
+ ret = 0;
131
+ while (len--) {
132
+ ret += arr[len];
133
+ }
134
+ }
135
+ // 3. it has zero length, so just return undefined
136
+ // => doNothing()
137
+ return ret;
138
+ }
139
+ /* *
140
+ *
141
+ * Default Export
142
+ *
143
+ * */
144
+ var ApproximationDefaults = {
145
+ average: average,
146
+ averages: averages,
147
+ close: close,
148
+ high: high,
149
+ hlc: hlc,
150
+ low: low,
151
+ ohlc: ohlc,
152
+ open: open,
153
+ range: range,
154
+ sum: sum
155
+ };
156
+ extend(ApproximationRegistry, ApproximationDefaults);
157
+ export default ApproximationDefaults;
@@ -0,0 +1,35 @@
1
+ /* *
2
+ *
3
+ * (c) 2010-2021 Torstein Honsi
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * */
10
+ 'use strict';
11
+ /* *
12
+ *
13
+ * Constants
14
+ *
15
+ * */
16
+ /**
17
+ * Define the available approximation types. The data grouping
18
+ * approximations takes an array or numbers as the first parameter. In case
19
+ * of ohlc, four arrays are sent in as four parameters. Each array consists
20
+ * only of numbers. In case null values belong to the group, the property
21
+ * .hasNulls will be set to true on the array.
22
+ *
23
+ * @product highstock
24
+ *
25
+ * @private
26
+ */
27
+ var ApproximationRegistry = {
28
+ // approximations added programmatically
29
+ };
30
+ /* *
31
+ *
32
+ * Default Export
33
+ *
34
+ * */
35
+ export default ApproximationRegistry;
@@ -0,0 +1,469 @@
1
+ /* *
2
+ *
3
+ * (c) 2010-2021 Torstein Honsi
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * */
10
+ 'use strict';
11
+ import DataGroupingAxisComposition from './DataGroupingAxisComposition.js';
12
+ import DataGroupingDefaults from './DataGroupingDefaults.js';
13
+ import DataGroupingSeriesComposition from './DataGroupingSeriesComposition.js';
14
+ import F from '../../Core/FormatUtilities.js';
15
+ var format = F.format;
16
+ import U from '../../Core/Utilities.js';
17
+ var addEvent = U.addEvent, extend = U.extend, isNumber = U.isNumber;
18
+ /* *
19
+ *
20
+ * Constants
21
+ *
22
+ * */
23
+ var composedMembers = [];
24
+ /* *
25
+ *
26
+ * Functions
27
+ *
28
+ * */
29
+ /**
30
+ * @private
31
+ */
32
+ function compose(AxisClass, SeriesClass, TooltipClass) {
33
+ DataGroupingAxisComposition.compose(AxisClass);
34
+ DataGroupingSeriesComposition.compose(SeriesClass);
35
+ if (composedMembers.indexOf(TooltipClass) === -1) {
36
+ composedMembers.push(TooltipClass);
37
+ addEvent(TooltipClass, 'headerFormatter', onTooltipHeaderFormatter);
38
+ }
39
+ }
40
+ /**
41
+ * Extend the original method, make the tooltip's header reflect the grouped
42
+ * range.
43
+ * @private
44
+ */
45
+ function onTooltipHeaderFormatter(e) {
46
+ var chart = this.chart, time = chart.time, labelConfig = e.labelConfig, series = labelConfig.series, options = series.options, tooltipOptions = series.tooltipOptions, dataGroupingOptions = options.dataGrouping, xAxis = series.xAxis;
47
+ var xDateFormat = tooltipOptions.xDateFormat, xDateFormatEnd, currentDataGrouping, dateTimeLabelFormats, labelFormats, formattedKey, formatString = tooltipOptions[e.isFooter ? 'footerFormat' : 'headerFormat'];
48
+ // apply only to grouped series
49
+ if (xAxis &&
50
+ xAxis.options.type === 'datetime' &&
51
+ dataGroupingOptions &&
52
+ isNumber(labelConfig.key)) {
53
+ // set variables
54
+ currentDataGrouping = series.currentDataGrouping;
55
+ dateTimeLabelFormats = dataGroupingOptions.dateTimeLabelFormats ||
56
+ // Fallback to commonOptions (#9693)
57
+ DataGroupingDefaults.common.dateTimeLabelFormats;
58
+ // if we have grouped data, use the grouping information to get the
59
+ // right format
60
+ if (currentDataGrouping) {
61
+ labelFormats =
62
+ dateTimeLabelFormats[currentDataGrouping.unitName];
63
+ if (currentDataGrouping.count === 1) {
64
+ xDateFormat = labelFormats[0];
65
+ }
66
+ else {
67
+ xDateFormat = labelFormats[1];
68
+ xDateFormatEnd = labelFormats[2];
69
+ }
70
+ // if not grouped, and we don't have set the xDateFormat option, get the
71
+ // best fit, so if the least distance between points is one minute, show
72
+ // it, but if the least distance is one day, skip hours and minutes etc.
73
+ }
74
+ else if (!xDateFormat && dateTimeLabelFormats && xAxis.dateTime) {
75
+ xDateFormat = xAxis.dateTime.getXDateFormat(labelConfig.x, tooltipOptions.dateTimeLabelFormats);
76
+ }
77
+ // now format the key
78
+ formattedKey = time.dateFormat(xDateFormat, labelConfig.key);
79
+ if (xDateFormatEnd) {
80
+ formattedKey += time.dateFormat(xDateFormatEnd, labelConfig.key + currentDataGrouping.totalRange - 1);
81
+ }
82
+ // Replace default header style with class name
83
+ if (series.chart.styledMode) {
84
+ formatString = this.styledModeFormat(formatString);
85
+ }
86
+ // return the replaced format
87
+ e.text = format(formatString, {
88
+ point: extend(labelConfig.point, { key: formattedKey }),
89
+ series: series
90
+ }, chart);
91
+ e.preventDefault();
92
+ }
93
+ }
94
+ /* *
95
+ *
96
+ * Default Export
97
+ *
98
+ * */
99
+ var DataGroupingComposition = {
100
+ compose: compose,
101
+ groupData: DataGroupingSeriesComposition.groupData
102
+ };
103
+ export default DataGroupingComposition;
104
+ /* *
105
+ *
106
+ * API Declarations
107
+ *
108
+ * */
109
+ /**
110
+ * @typedef {"average"|"averages"|"open"|"high"|"low"|"close"|"sum"} Highcharts.DataGroupingApproximationValue
111
+ */
112
+ /**
113
+ * The position of the point inside the group.
114
+ *
115
+ * @typedef {"start"|"middle"|"end"} Highcharts.DataGroupingAnchor
116
+ */
117
+ /**
118
+ * The position of the first or last point in the series inside the group.
119
+ *
120
+ * @typedef {"start"|"middle"|"end"|"firstPoint"|"lastPoint"} Highcharts.DataGroupingAnchorExtremes
121
+ */
122
+ /**
123
+ * Highcharts Stock only.
124
+ *
125
+ * @product highstock
126
+ * @interface Highcharts.DataGroupingInfoObject
127
+ */ /**
128
+ * @name Highcharts.DataGroupingInfoObject#length
129
+ * @type {number}
130
+ */ /**
131
+ * @name Highcharts.DataGroupingInfoObject#options
132
+ * @type {Highcharts.SeriesOptionsType|undefined}
133
+ */ /**
134
+ * @name Highcharts.DataGroupingInfoObject#start
135
+ * @type {number}
136
+ */
137
+ /**
138
+ * Highcharts Stock only.
139
+ *
140
+ * @product highstock
141
+ * @interface Highcharts.DataGroupingResultObject
142
+ */ /**
143
+ * @name Highcharts.DataGroupingResultObject#groupedXData
144
+ * @type {Array<number>}
145
+ */ /**
146
+ * @name Highcharts.DataGroupingResultObject#groupedYData
147
+ * @type {Array<(number|null|undefined)>|Array<Array<(number|null|undefined)>>}
148
+ */ /**
149
+ * @name Highcharts.DataGroupingResultObject#groupMap
150
+ * @type {Array<DataGroupingInfoObject>}
151
+ */
152
+ /**
153
+ * Highcharts Stock only. If a point object is created by data
154
+ * grouping, it doesn't reflect actual points in the raw
155
+ * data. In this case, the `dataGroup` property holds
156
+ * information that points back to the raw data.
157
+ *
158
+ * - `dataGroup.start` is the index of the first raw data
159
+ * point in the group.
160
+ *
161
+ * - `dataGroup.length` is the amount of points in the
162
+ * group.
163
+ *
164
+ * @sample stock/members/point-datagroup
165
+ * Click to inspect raw data points
166
+ *
167
+ * @product highstock
168
+ *
169
+ * @name Highcharts.Point#dataGroup
170
+ * @type {Highcharts.DataGroupingInfoObject|undefined}
171
+ */
172
+ (''); // detach doclets above
173
+ /* *
174
+ *
175
+ * API Options
176
+ *
177
+ * */
178
+ /**
179
+ * Data grouping is the concept of sampling the data values into larger
180
+ * blocks in order to ease readability and increase performance of the
181
+ * JavaScript charts. Highcharts Stock by default applies data grouping when
182
+ * the points become closer than a certain pixel value, determined by
183
+ * the `groupPixelWidth` option.
184
+ *
185
+ * If data grouping is applied, the grouping information of grouped
186
+ * points can be read from the [Point.dataGroup](
187
+ * /class-reference/Highcharts.Point#dataGroup). If point options other than
188
+ * the data itself are set, for example `name` or `color` or custom properties,
189
+ * the grouping logic doesn't know how to group it. In this case the options of
190
+ * the first point instance are copied over to the group point. This can be
191
+ * altered through a custom `approximation` callback function.
192
+ *
193
+ * @declare Highcharts.DataGroupingOptionsObject
194
+ * @product highstock
195
+ * @requires product:highstock
196
+ * @requires module:modules/datagrouping
197
+ * @apioption plotOptions.series.dataGrouping
198
+ */
199
+ /**
200
+ * Specifies how the points should be located on the X axis inside the group.
201
+ * Points that are extremes can be set separately. Available options:
202
+ *
203
+ * - `start` places the point at the beginning of the group
204
+ * (e.g. range 00:00:00 - 23:59:59 -> 00:00:00)
205
+ *
206
+ * - `middle` places the point in the middle of the group
207
+ * (e.g. range 00:00:00 - 23:59:59 -> 12:00:00)
208
+ *
209
+ * - `end` places the point at the end of the group
210
+ * (e.g. range 00:00:00 - 23:59:59 -> 23:59:59)
211
+ *
212
+ * @sample {highstock} stock/plotoptions/series-datagrouping-anchor
213
+ * Changing the point x-coordinate inside the group.
214
+ *
215
+ * @see [dataGrouping.firstAnchor](#plotOptions.series.dataGrouping.firstAnchor)
216
+ * @see [dataGrouping.lastAnchor](#plotOptions.series.dataGrouping.lastAnchor)
217
+ *
218
+ * @type {Highcharts.DataGroupingAnchor}
219
+ * @since 9.1.0
220
+ * @default start
221
+ * @apioption plotOptions.series.dataGrouping.anchor
222
+ */
223
+ /**
224
+ * The method of approximation inside a group. When for example 30 days
225
+ * are grouped into one month, this determines what value should represent
226
+ * the group. Possible values are "average", "averages", "open", "high",
227
+ * "low", "close" and "sum". For OHLC and candlestick series the approximation
228
+ * is "ohlc" by default, which finds the open, high, low and close values
229
+ * within all the grouped data. For ranges, the approximation is "range",
230
+ * which finds the low and high values. For multi-dimensional data,
231
+ * like ranges and OHLC, "averages" will compute the average for each
232
+ * dimension.
233
+ *
234
+ * Custom aggregate methods can be added by assigning a callback function
235
+ * as the approximation. This function takes a numeric array as the
236
+ * argument and should return a single numeric value or `null`. Note
237
+ * that the numeric array will never contain null values, only true
238
+ * numbers. Instead, if null values are present in the raw data, the
239
+ * numeric array will have an `.hasNulls` property set to `true`. For
240
+ * single-value data sets the data is available in the first argument
241
+ * of the callback function. For OHLC data sets, all the open values
242
+ * are in the first argument, all high values in the second etc.
243
+ *
244
+ * Since v4.2.7, grouping meta data is available in the approximation
245
+ * callback from `this.dataGroupInfo`. It can be used to extract information
246
+ * from the raw data.
247
+ *
248
+ * Defaults to `average` for line-type series, `sum` for columns, `range`
249
+ * for range series, `hlc` for HLC, and `ohlc` for OHLC and candlestick.
250
+ *
251
+ * @sample {highstock} stock/plotoptions/series-datagrouping-approximation
252
+ * Approximation callback with custom data
253
+ * @sample {highstock} stock/plotoptions/series-datagrouping-simple-approximation
254
+ * Simple approximation demo
255
+ *
256
+ * @type {Highcharts.DataGroupingApproximationValue|Function}
257
+ * @apioption plotOptions.series.dataGrouping.approximation
258
+ */
259
+ /**
260
+ * Datetime formats for the header of the tooltip in a stock chart.
261
+ * The format can vary within a chart depending on the currently selected
262
+ * time range and the current data grouping.
263
+ *
264
+ * The default formats are:
265
+ * ```js
266
+ * {
267
+ * millisecond: [
268
+ * '%A, %b %e, %H:%M:%S.%L', '%A, %b %e, %H:%M:%S.%L', '-%H:%M:%S.%L'
269
+ * ],
270
+ * second: ['%A, %b %e, %H:%M:%S', '%A, %b %e, %H:%M:%S', '-%H:%M:%S'],
271
+ * minute: ['%A, %b %e, %H:%M', '%A, %b %e, %H:%M', '-%H:%M'],
272
+ * hour: ['%A, %b %e, %H:%M', '%A, %b %e, %H:%M', '-%H:%M'],
273
+ * day: ['%A, %b %e, %Y', '%A, %b %e', '-%A, %b %e, %Y'],
274
+ * week: ['Week from %A, %b %e, %Y', '%A, %b %e', '-%A, %b %e, %Y'],
275
+ * month: ['%B %Y', '%B', '-%B %Y'],
276
+ * year: ['%Y', '%Y', '-%Y']
277
+ * }
278
+ * ```
279
+ *
280
+ * For each of these array definitions, the first item is the format
281
+ * used when the active time span is one unit. For instance, if the
282
+ * current data applies to one week, the first item of the week array
283
+ * is used. The second and third items are used when the active time
284
+ * span is more than two units. For instance, if the current data applies
285
+ * to two weeks, the second and third item of the week array are used,
286
+ * and applied to the start and end date of the time span.
287
+ *
288
+ * @type {Object}
289
+ * @apioption plotOptions.series.dataGrouping.dateTimeLabelFormats
290
+ */
291
+ /**
292
+ * Enable or disable data grouping.
293
+ *
294
+ * @type {boolean}
295
+ * @default true
296
+ * @apioption plotOptions.series.dataGrouping.enabled
297
+ */
298
+ /**
299
+ * Specifies how the first grouped point is positioned on the xAxis.
300
+ * If firstAnchor and/or lastAnchor are defined, then those options take
301
+ * precedence over anchor for the first and/or last grouped points.
302
+ * Available options:
303
+ *
304
+ * -`start` places the point at the beginning of the group
305
+ * (e.g. range 00:00:00 - 23:59:59 -> 00:00:00)
306
+ *
307
+ * -`middle` places the point in the middle of the group
308
+ * (e.g. range 00:00:00 - 23:59:59 -> 12:00:00)
309
+ *
310
+ * -`end` places the point at the end of the group
311
+ * (e.g. range 00:00:00 - 23:59:59 -> 23:59:59)
312
+ *
313
+ * -`firstPoint` the first point in the group
314
+ * (e.g. points at 00:13, 00:35, 00:59 -> 00:13)
315
+ *
316
+ * -`lastPoint` the last point in the group
317
+ * (e.g. points at 00:13, 00:35, 00:59 -> 00:59)
318
+ *
319
+ * @sample {highstock} stock/plotoptions/series-datagrouping-first-anchor
320
+ * Applying first and last anchor.
321
+ *
322
+ * @see [dataGrouping.anchor](#plotOptions.series.dataGrouping.anchor)
323
+ *
324
+ * @type {Highcharts.DataGroupingAnchorExtremes}
325
+ * @since 9.1.0
326
+ * @default start
327
+ * @apioption plotOptions.series.dataGrouping.firstAnchor
328
+ */
329
+ /**
330
+ * When data grouping is forced, it runs no matter how small the intervals
331
+ * are. This can be handy for example when the sum should be calculated
332
+ * for values appearing at random times within each hour.
333
+ *
334
+ * @type {boolean}
335
+ * @default false
336
+ * @apioption plotOptions.series.dataGrouping.forced
337
+ */
338
+ /**
339
+ * The approximate pixel width of each group. If for example a series
340
+ * with 30 points is displayed over a 600 pixel wide plot area, no grouping
341
+ * is performed. If however the series contains so many points that
342
+ * the spacing is less than the groupPixelWidth, Highcharts will try
343
+ * to group it into appropriate groups so that each is more or less
344
+ * two pixels wide. If multiple series with different group pixel widths
345
+ * are drawn on the same x axis, all series will take the greatest width.
346
+ * For example, line series have 2px default group width, while column
347
+ * series have 10px. If combined, both the line and the column will
348
+ * have 10px by default.
349
+ *
350
+ * @type {number}
351
+ * @default 2
352
+ * @apioption plotOptions.series.dataGrouping.groupPixelWidth
353
+ */
354
+ /**
355
+ * By default only points within the visible range are grouped. Enabling this
356
+ * option will force data grouping to calculate all grouped points for a given
357
+ * dataset. That option prevents for example a column series from calculating
358
+ * a grouped point partially. The effect is similar to
359
+ * [Series.getExtremesFromAll](#plotOptions.series.getExtremesFromAll) but does
360
+ * not affect yAxis extremes.
361
+ *
362
+ * @sample {highstock} stock/plotoptions/series-datagrouping-groupall/
363
+ * Two series with the same data but different groupAll setting
364
+ *
365
+ * @type {boolean}
366
+ * @default false
367
+ * @since 6.1.0
368
+ * @apioption plotOptions.series.dataGrouping.groupAll
369
+ */
370
+ /**
371
+ * Specifies how the last grouped point is positioned on the xAxis.
372
+ * If firstAnchor and/or lastAnchor are defined, then those options take
373
+ * precedence over anchor for the first and/or last grouped points.
374
+ * Available options:
375
+ *
376
+ * -`start` places the point at the beginning of the group
377
+ * (e.g. range 00:00:00 - 23:59:59 -> 00:00:00)
378
+ *
379
+ * -`middle` places the point in the middle of the group
380
+ * (e.g. range 00:00:00 - 23:59:59 -> 12:00:00)
381
+ *
382
+ * -`end` places the point at the end of the group
383
+ * (e.g. range 00:00:00 - 23:59:59 -> 23:59:59)
384
+ *
385
+ * -`firstPoint` the first point in the group
386
+ * (e.g. points at 00:13, 00:35, 00:59 -> 00:13)
387
+ *
388
+ * -`lastPoint` the last point in the group
389
+ * (e.g. points at 00:13, 00:35, 00:59 -> 00:59)
390
+ *
391
+ * @sample {highstock} stock/plotoptions/series-datagrouping-first-anchor
392
+ * Applying first and last anchor.
393
+ *
394
+ * @sample {highstock} stock/plotoptions/series-datagrouping-last-anchor
395
+ * Applying the last anchor in the chart with live data.
396
+ *
397
+ * @see [dataGrouping.anchor](#plotOptions.series.dataGrouping.anchor)
398
+ *
399
+ * @type {Highcharts.DataGroupingAnchorExtremes}
400
+ * @since 9.1.0
401
+ * @default start
402
+ * @apioption plotOptions.series.dataGrouping.lastAnchor
403
+ */
404
+ /**
405
+ * Normally, a group is indexed by the start of that group, so for example
406
+ * when 30 daily values are grouped into one month, that month's x value
407
+ * will be the 1st of the month. This apparently shifts the data to
408
+ * the left. When the smoothed option is true, this is compensated for.
409
+ * The data is shifted to the middle of the group, and min and max
410
+ * values are preserved. Internally, this is used in the Navigator series.
411
+ *
412
+ * @type {boolean}
413
+ * @default false
414
+ * @deprecated
415
+ * @apioption plotOptions.series.dataGrouping.smoothed
416
+ */
417
+ /**
418
+ * An array determining what time intervals the data is allowed to be
419
+ * grouped to. Each array item is an array where the first value is
420
+ * the time unit and the second value another array of allowed multiples.
421
+ *
422
+ * Defaults to:
423
+ * ```js
424
+ * units: [[
425
+ * 'millisecond', // unit name
426
+ * [1, 2, 5, 10, 20, 25, 50, 100, 200, 500] // allowed multiples
427
+ * ], [
428
+ * 'second',
429
+ * [1, 2, 5, 10, 15, 30]
430
+ * ], [
431
+ * 'minute',
432
+ * [1, 2, 5, 10, 15, 30]
433
+ * ], [
434
+ * 'hour',
435
+ * [1, 2, 3, 4, 6, 8, 12]
436
+ * ], [
437
+ * 'day',
438
+ * [1]
439
+ * ], [
440
+ * 'week',
441
+ * [1]
442
+ * ], [
443
+ * 'month',
444
+ * [1, 3, 6]
445
+ * ], [
446
+ * 'year',
447
+ * null
448
+ * ]]
449
+ * ```
450
+ *
451
+ * @type {Array<Array<string,(Array<number>|null)>>}
452
+ * @apioption plotOptions.series.dataGrouping.units
453
+ */
454
+ /**
455
+ * The approximate pixel width of each group. If for example a series
456
+ * with 30 points is displayed over a 600 pixel wide plot area, no grouping
457
+ * is performed. If however the series contains so many points that
458
+ * the spacing is less than the groupPixelWidth, Highcharts will try
459
+ * to group it into appropriate groups so that each is more or less
460
+ * two pixels wide. Defaults to `10`.
461
+ *
462
+ * @sample {highstock} stock/plotoptions/series-datagrouping-grouppixelwidth/
463
+ * Two series with the same data density but different groupPixelWidth
464
+ *
465
+ * @type {number}
466
+ * @default 10
467
+ * @apioption plotOptions.column.dataGrouping.groupPixelWidth
468
+ */
469
+ ''; // required by JSDoc parsing