highcharts 10.2.0 → 10.2.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.
- package/bower.json +1 -1
- package/css/highcharts.css +10 -20
- package/css/themes/dark-unica.css +10 -20
- package/css/themes/grid-light.css +10 -20
- package/css/themes/sand-signika.css +10 -20
- package/es-modules/Accessibility/Accessibility.js +6 -0
- package/es-modules/Accessibility/Components/LegendComponent.js +8 -8
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +3 -2
- package/es-modules/Accessibility/Options/A11yDefaults.js +1 -1
- package/es-modules/Core/Axis/Axis.js +3 -0
- package/es-modules/Core/Axis/Axis3D.js +1 -1
- package/es-modules/Core/Axis/AxisDefaults.js +1 -1
- package/es-modules/Core/Axis/BrokenAxis.js +1 -1
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +4 -0
- package/es-modules/Core/Axis/NavigatorAxis.js +2 -2
- package/es-modules/Core/Axis/OrdinalAxis.js +2 -2
- package/es-modules/Core/Axis/RadialAxis.js +1 -1
- package/es-modules/Core/Axis/Stacking/StackItem.js +262 -0
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +468 -0
- package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +732 -0
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +313 -0
- package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
- package/es-modules/Core/Axis/ZAxis.js +73 -70
- package/es-modules/Core/Chart/Chart.js +16 -2
- package/es-modules/Core/Chart/Chart3D.js +2 -2
- package/es-modules/Core/Chart/ChartDefaults.js +151 -2
- package/es-modules/Core/Chart/StockChart.js +5 -3
- package/es-modules/Core/DefaultOptions.js +2 -1
- package/es-modules/Core/Geometry/CircleUtilities.js +4 -4
- package/es-modules/Core/Globals.js +2 -1
- package/es-modules/{Extensions → Core}/Math3D.js +48 -43
- package/es-modules/Core/Navigator.js +24 -7
- package/es-modules/Core/Pointer.js +7 -9
- package/es-modules/Core/Renderer/HTML/AST.js +4 -1
- package/es-modules/Core/Renderer/SVG/SVGElement.js +103 -163
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +29 -27
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +3 -3
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +1 -1
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +5 -3
- package/es-modules/Core/Scrollbar.js +3 -1
- package/es-modules/Core/Series/DataLabel.js +8 -6
- package/es-modules/Core/Series/Point.js +2 -2
- package/es-modules/Core/Series/Series.js +36 -31
- package/es-modules/Core/Series/Series3D.js +1 -1
- package/es-modules/Core/Series/SeriesDefaults.js +8 -3
- package/es-modules/Core/Series/SeriesRegistry.js +6 -29
- package/es-modules/Core/Tooltip.js +14 -3
- package/es-modules/Core/Utilities.js +1 -3
- package/es-modules/Data/DataConverter.js +5 -0
- package/es-modules/Data/DataPromise.js +1 -1
- package/es-modules/Data/DataSeriesComposition.js +288 -0
- package/es-modules/Data/DataSeriesConverter.js +1 -1
- package/es-modules/Data/DataTable.js +2 -2
- package/es-modules/Data/Modifiers/ChainModifier.js +1 -1
- package/es-modules/Data/Modifiers/DataModifier.js +1 -1
- package/es-modules/Data/Modifiers/GroupModifier.js +1 -1
- package/es-modules/Data/Modifiers/InvertModifier.js +1 -1
- package/es-modules/Data/Modifiers/RangeModifier.js +1 -1
- package/es-modules/Data/Modifiers/SeriesPointsModifier.js +1 -1
- package/es-modules/Data/Modifiers/SortModifier.js +1 -1
- package/es-modules/Data/Parsers/DataParser.js +1 -1
- package/es-modules/Data/Stores/DataStore.js +1 -1
- package/es-modules/Extensions/Annotations/Annotation.js +347 -1156
- package/es-modules/Extensions/Annotations/AnnotationChart.js +291 -0
- package/es-modules/Extensions/Annotations/AnnotationDefaults.js +624 -0
- package/es-modules/Extensions/Annotations/ControlPoint.js +89 -64
- package/es-modules/Extensions/Annotations/{Mixins/ControllableMixin.js → Controllables/Controllable.js} +300 -241
- package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +63 -50
- package/es-modules/Extensions/Annotations/Controllables/ControllableDefaults.js +95 -0
- package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +90 -61
- package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +50 -44
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +95 -78
- package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +167 -51
- package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +53 -52
- package/es-modules/Extensions/Annotations/{Mixins/EventEmitterMixin.js → EventEmitter.js} +136 -116
- package/es-modules/Extensions/Annotations/MockPoint.js +210 -145
- package/es-modules/Extensions/Annotations/NavigationBindings.js +272 -674
- package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +396 -0
- package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +98 -0
- package/es-modules/Extensions/Annotations/Popup/Popup.js +295 -0
- package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +177 -0
- package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +81 -0
- package/es-modules/Extensions/Annotations/Popup/PopupIndicators.js +609 -0
- package/es-modules/Extensions/Annotations/Popup/PopupTabs.js +134 -0
- package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +10 -14
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +11 -19
- package/es-modules/Extensions/Annotations/Types/ElliottWave.js +10 -10
- package/es-modules/Extensions/Annotations/Types/Fibonacci.js +28 -20
- package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +63 -63
- package/es-modules/Extensions/Annotations/Types/InfinityLine.js +10 -19
- package/es-modules/Extensions/Annotations/Types/Measure.js +255 -249
- package/es-modules/Extensions/Annotations/Types/Pitchfork.js +11 -17
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +20 -17
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +12 -13
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +11 -15
- package/es-modules/Extensions/Boost/Boost.js +320 -15
- package/es-modules/Extensions/Boost/BoostChart.js +245 -0
- package/es-modules/Extensions/Boost/BoostSeries.js +927 -0
- package/es-modules/Extensions/Boost/BoostableMap.js +21 -5
- package/es-modules/Extensions/Boost/Boostables.js +13 -2
- package/es-modules/Extensions/Boost/NamedColors.js +15 -6
- package/es-modules/Extensions/Boost/WGLDrawMode.js +36 -0
- package/es-modules/Extensions/Boost/WGLRenderer.js +288 -295
- package/es-modules/Extensions/Boost/WGLShader.js +370 -376
- package/es-modules/Extensions/Boost/WGLVertexBuffer.js +192 -0
- package/es-modules/Extensions/BoostCanvas.js +62 -46
- package/es-modules/Extensions/Breadcrumbs.js +4 -0
- package/es-modules/Extensions/DataGrouping.js +65 -27
- package/es-modules/Extensions/Debugger/Debugger.js +60 -22
- package/es-modules/Extensions/DraggablePoints.js +4 -3
- package/es-modules/Extensions/Drilldown.js +7 -8
- package/es-modules/Extensions/{ExportData.js → ExportData/ExportData.js} +341 -530
- package/es-modules/Extensions/ExportData/ExportDataDefaults.js +272 -0
- package/es-modules/Extensions/Exporting/Exporting.js +5 -1
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +3 -1
- package/es-modules/Extensions/{FullScreen.js → Exporting/Fullscreen.js} +72 -27
- package/es-modules/Extensions/MarkerClusters.js +2 -0
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
- package/es-modules/Extensions/Oldie/Oldie.js +1 -1
- package/es-modules/Extensions/ParallelCoordinates.js +11 -7
- package/es-modules/Extensions/ScrollablePlotArea.js +1 -1
- package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +2 -2
- package/es-modules/Extensions/Sonification/ChartSonify.js +1 -1
- package/es-modules/Maps/MapPointer.js +1 -1
- package/es-modules/Maps/MapView.js +2 -1
- package/es-modules/Series/{Area3DSeries.js → Area3D/Area3DSeries.js} +42 -20
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +8 -2
- package/es-modules/Series/Bubble/BubbleLegendComposition.js +223 -231
- package/es-modules/Series/Bubble/BubbleLegendItem.js +46 -45
- package/es-modules/Series/Bubble/BubbleSeries.js +85 -66
- package/es-modules/Series/Column/ColumnSeries.js +2 -0
- package/es-modules/Series/Column3D/Column3DComposition.js +2 -2
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +1 -1
- package/es-modules/Series/Cylinder/CylinderComposition.js +1 -1
- package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +24 -11
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +16 -2
- package/es-modules/Series/DragNodesComposition.js +166 -0
- package/es-modules/Series/Funnel3D/Funnel3DSeries.js +1 -1
- package/es-modules/Series/Gantt/GanttSeries.js +1 -1
- package/es-modules/Series/GraphLayoutComposition.js +130 -0
- package/es-modules/Series/Heatmap/HeatmapSeries.js +5 -1
- package/es-modules/Series/Lollipop/LollipopPoint.js +21 -11
- package/es-modules/Series/Lollipop/LollipopSeries.js +15 -10
- package/es-modules/Series/Map/MapSeries.js +6 -1
- package/es-modules/Series/MapBubble/MapBubblePoint.js +15 -17
- package/es-modules/Series/MapBubble/MapBubbleSeries.js +19 -19
- package/es-modules/Series/Networkgraph/EulerIntegration.js +199 -0
- package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +290 -0
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +401 -0
- package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +545 -0
- package/es-modules/Series/Networkgraph/QuadTree.js +66 -272
- package/es-modules/Series/Networkgraph/QuadTreeNode.js +271 -0
- package/es-modules/Series/Networkgraph/{Layouts.js → ReingoldFruchtermanLayout.js} +240 -259
- package/es-modules/Series/Networkgraph/VerletIntegration.js +193 -0
- package/es-modules/Series/Organization/OrganizationSeries.js +9 -1
- package/es-modules/Series/PackedBubble/PackedBubbleIntegration.js +81 -0
- package/es-modules/Series/PackedBubble/{PackedBubbleComposition.js → PackedBubbleLayout.js} +114 -77
- package/es-modules/Series/PackedBubble/PackedBubblePoint.js +2 -2
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +197 -570
- package/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +394 -0
- package/es-modules/Series/Pie/PieSeries.js +3 -1
- package/es-modules/Series/PolarComposition.js +12 -12
- package/es-modules/Series/Sankey/SankeySeries.js +13 -1
- package/es-modules/Series/Scatter/ScatterSeries.js +4 -1
- package/es-modules/Series/Scatter3D/Scatter3DSeries.js +1 -1
- package/es-modules/Series/SeriesOnPointComposition.js +5 -1
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +1 -1
- package/es-modules/Series/Sunburst/SunburstPoint.js +5 -6
- package/es-modules/Series/Sunburst/SunburstSeries.js +24 -2
- package/es-modules/Series/Timeline/TimelineSeries.js +2 -0
- package/es-modules/Series/Treemap/TreemapSeries.js +3 -3
- package/es-modules/Series/Vector/VectorSeries.js +2 -4
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +1 -1
- package/es-modules/Series/Wordcloud/WordcloudUtils.js +1 -1
- package/es-modules/Series/XRange/XRangePoint.js +54 -45
- package/es-modules/Series/XRange/XRangeSeries.js +121 -273
- package/es-modules/Series/XRange/XRangeSeriesDefaults.js +211 -0
- package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +10 -2
- package/es-modules/Stock/Indicators/AD/ADIndicator.js +5 -0
- package/es-modules/Stock/Indicators/AO/AOIndicator.js +22 -11
- package/es-modules/Stock/Indicators/APO/APOIndicator.js +6 -1
- package/es-modules/Stock/Indicators/ATR/ATRIndicator.js +16 -3
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +15 -2
- package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +6 -2
- package/es-modules/Stock/Indicators/BB/BBIndicator.js +5 -1
- package/es-modules/Stock/Indicators/CCI/CCIIndicator.js +16 -3
- package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +20 -0
- package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +15 -1
- package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +7 -2
- package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +25 -0
- package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +5 -0
- package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +19 -8
- package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +10 -0
- package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +34 -15
- package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +25 -0
- package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +12 -1
- package/es-modules/Stock/Indicators/LinearRegression/{LinearRegression.js → LinearRegressionIndicator.js} +11 -1
- package/es-modules/Stock/Indicators/LinearRegressionAngle/{LinearRegressionAngle.js → LinearRegressionAngleIndicator.js} +12 -7
- package/es-modules/Stock/Indicators/LinearRegressionIntercept/{LinearRegressionIntercept.js → LinearRegressionInterceptIndicator.js} +11 -1
- package/es-modules/Stock/Indicators/LinearRegressionSlopes/{LinearRegressionSlopes.js → LinearRegressionSlopesIndicator.js} +11 -1
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +21 -10
- package/es-modules/Stock/Indicators/MFI/MFIIndicator.js +23 -10
- package/es-modules/Stock/Indicators/Momentum/MomentumIndicator.js +30 -2
- package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +16 -1
- package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +10 -0
- package/es-modules/Stock/Indicators/PC/PCIndicator.js +13 -8
- package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +14 -4
- package/es-modules/Stock/Indicators/PSAR/PSARIndicator.js +16 -3
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +16 -6
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsPoint.js +16 -12
- package/es-modules/Stock/Indicators/PriceEnvelopes/PriceEnvelopesIndicator.js +25 -0
- package/es-modules/Stock/Indicators/ROC/ROCIndicator.js +15 -2
- package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +20 -2
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +1 -1
- package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +25 -0
- package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +15 -0
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +17 -3
- package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +25 -0
- package/es-modules/Stock/Indicators/TrendLine/TrendLineIndicator.js +14 -4
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +32 -3
- package/es-modules/Stock/Indicators/VBP/VBPPoint.js +6 -6
- package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +11 -1
- package/es-modules/Stock/Indicators/WMA/WMAIndicator.js +30 -2
- package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +10 -0
- package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +11 -1
- package/es-modules/Stock/StockToolbar.js +568 -0
- package/es-modules/Stock/StockTools.js +256 -0
- package/es-modules/Stock/StockToolsBindings.js +114 -629
- package/es-modules/Stock/StockToolsDefaults.js +1190 -0
- package/es-modules/Stock/StockToolsGui.js +150 -1771
- package/es-modules/Stock/StockToolsUtilities.js +423 -0
- package/es-modules/masters/highcharts-3d.src.js +5 -4
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +4 -3
- package/es-modules/masters/highcharts.src.js +5 -2
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +5 -7
- package/es-modules/masters/indicators/indicators.src.js +1 -1
- package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
- package/es-modules/masters/indicators/klinger.src.js +1 -1
- package/es-modules/masters/indicators/macd.src.js +1 -1
- package/es-modules/masters/indicators/mfi.src.js +1 -1
- package/es-modules/masters/indicators/momentum.src.js +1 -1
- package/es-modules/masters/indicators/natr.src.js +1 -1
- package/es-modules/masters/indicators/obv.src.js +1 -1
- package/es-modules/masters/indicators/pivot-points.src.js +1 -1
- package/es-modules/masters/indicators/ppo.src.js +1 -1
- package/es-modules/masters/indicators/price-channel.src.js +1 -1
- package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
- package/es-modules/masters/indicators/psar.src.js +1 -1
- package/es-modules/masters/indicators/regressions.src.js +5 -5
- package/es-modules/masters/indicators/roc.src.js +1 -1
- package/es-modules/masters/indicators/rsi.src.js +1 -1
- package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
- package/es-modules/masters/indicators/stochastic.src.js +1 -1
- package/es-modules/masters/indicators/supertrend.src.js +1 -1
- package/es-modules/masters/indicators/tema.src.js +1 -1
- package/es-modules/masters/indicators/trendline.src.js +1 -1
- package/es-modules/masters/indicators/trix.src.js +1 -1
- package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
- package/es-modules/masters/indicators/vwap.src.js +1 -1
- package/es-modules/masters/indicators/williams-r.src.js +1 -1
- package/es-modules/masters/indicators/wma.src.js +1 -1
- package/es-modules/masters/indicators/zigzag.src.js +1 -1
- package/es-modules/masters/modules/accessibility.src.js +1 -1
- package/es-modules/masters/modules/annotations-advanced.src.js +6 -4
- package/es-modules/masters/modules/annotations.src.js +6 -4
- package/es-modules/masters/modules/arc-diagram.src.js +1 -1
- package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
- package/es-modules/masters/modules/boost-canvas.src.js +1 -1
- package/es-modules/masters/modules/boost.src.js +6 -2
- package/es-modules/masters/modules/broken-axis.src.js +1 -1
- package/es-modules/masters/modules/bullet.src.js +1 -1
- package/es-modules/masters/modules/coloraxis.src.js +1 -1
- package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +1 -1
- package/es-modules/masters/modules/datagrouping.src.js +1 -1
- package/es-modules/masters/modules/debugger.src.js +5 -3
- package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
- package/es-modules/masters/modules/dotplot.src.js +1 -1
- package/es-modules/masters/modules/drag-panes.src.js +1 -1
- package/es-modules/masters/modules/draggable-points.src.js +1 -1
- package/es-modules/masters/modules/drilldown.src.js +1 -1
- package/es-modules/masters/modules/dumbbell.src.js +1 -1
- package/es-modules/masters/modules/export-data.src.js +5 -2
- package/es-modules/masters/modules/exporting.src.js +1 -2
- package/es-modules/masters/modules/full-screen.src.js +6 -2
- package/es-modules/masters/modules/funnel.src.js +1 -1
- package/es-modules/masters/modules/funnel3d.src.js +1 -1
- package/es-modules/masters/modules/gantt.src.js +3 -2
- package/es-modules/masters/modules/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -1
- package/es-modules/masters/modules/heikinashi.src.js +1 -1
- package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
- package/es-modules/masters/modules/item-series.src.js +1 -1
- package/es-modules/masters/modules/lollipop.src.js +1 -1
- package/es-modules/masters/modules/map.src.js +2 -2
- package/es-modules/masters/modules/marker-clusters.src.js +1 -1
- package/es-modules/masters/modules/networkgraph.src.js +5 -2
- package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
- package/es-modules/masters/modules/oldie.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
- package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
- package/es-modules/masters/modules/pareto.src.js +1 -1
- package/es-modules/masters/modules/pathfinder.src.js +1 -1
- package/es-modules/masters/modules/pattern-fill.src.js +1 -1
- package/es-modules/masters/modules/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/sankey.src.js +1 -1
- package/es-modules/masters/modules/series-label.src.js +1 -1
- package/es-modules/masters/modules/series-on-point.src.js +1 -1
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +1 -1
- package/es-modules/masters/modules/static-scale.src.js +1 -1
- package/es-modules/masters/modules/stock-tools.src.js +10 -3
- package/es-modules/masters/modules/stock.src.js +1 -1
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +1 -1
- package/es-modules/masters/modules/tilemap.src.js +1 -1
- package/es-modules/masters/modules/timeline.src.js +1 -1
- package/es-modules/masters/modules/treegrid.src.js +2 -2
- package/es-modules/masters/modules/treemap.src.js +1 -1
- package/es-modules/masters/modules/variable-pie.src.js +1 -1
- package/es-modules/masters/modules/variwide.src.js +1 -1
- package/es-modules/masters/modules/vector.src.js +1 -1
- package/es-modules/masters/modules/venn.src.js +1 -1
- package/es-modules/masters/modules/windbarb.src.js +1 -1
- package/es-modules/masters/modules/wordcloud.src.js +1 -1
- package/es-modules/masters/modules/xrange.src.js +5 -2
- package/es-modules/masters/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/brand-dark.src.js +1 -1
- package/es-modules/masters/themes/brand-light.src.js +1 -1
- package/es-modules/masters/themes/dark-blue.src.js +1 -1
- package/es-modules/masters/themes/dark-green.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/gray.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/grid.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/skies.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +98 -99
- package/highcharts-3d.js.map +1 -1
- package/highcharts-3d.src.js +232 -211
- package/highcharts-gantt.js +808 -809
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +2308 -2136
- package/highcharts-more.d.ts +5 -8
- package/highcharts-more.js +201 -194
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.d.ts +5 -8
- package/highcharts-more.src.js +3671 -3275
- package/highcharts.d.ts +1400 -885
- package/highcharts.js +593 -595
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +1400 -885
- package/highcharts.src.js +847 -716
- package/highmaps.js +762 -763
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +1288 -1129
- package/highstock.js +796 -798
- package/highstock.js.map +1 -1
- package/highstock.src.js +953 -762
- package/indicators/acceleration-bands.js +1 -1
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.js +11 -3
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.js.map +1 -1
- package/indicators/accumulation-distribution.src.js +6 -1
- package/indicators/ao.js +6 -6
- package/indicators/ao.js.map +1 -1
- package/indicators/ao.src.js +23 -14
- package/indicators/apo.js +1 -1
- package/indicators/apo.js.map +1 -1
- package/indicators/apo.src.js +6 -1
- package/indicators/aroon-oscillator.js +10 -10
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.js +7 -3
- package/indicators/aroon.js +1 -1
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.js +16 -3
- package/indicators/atr.js +1 -1
- package/indicators/atr.js.map +1 -1
- package/indicators/atr.src.js +17 -4
- package/indicators/bollinger-bands.js +1 -1
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.js +6 -2
- package/indicators/cci.js +1 -1
- package/indicators/cci.js.map +1 -1
- package/indicators/cci.src.js +17 -4
- package/indicators/chaikin.js +8 -8
- package/indicators/chaikin.js.map +1 -1
- package/indicators/chaikin.src.js +13 -5
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.js.map +1 -1
- package/indicators/cmf.src.js +21 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.js.map +1 -1
- package/indicators/cmo.src.js +16 -2
- package/indicators/dema.js +1 -1
- package/indicators/dema.js.map +1 -1
- package/indicators/dema.src.js +26 -1
- package/indicators/disparity-index.js +1 -1
- package/indicators/disparity-index.src.js +1 -1
- package/indicators/dmi.js +1 -1
- package/indicators/dmi.js.map +1 -1
- package/indicators/dmi.src.js +6 -1
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.js.map +1 -1
- package/indicators/dpo.src.js +20 -9
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.js.map +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +35 -16
- package/indicators/indicators-all.js +199 -199
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.js +754 -162
- package/indicators/indicators.js +1 -1
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +12 -2
- package/indicators/keltner-channels.js +1 -1
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.js +26 -1
- package/indicators/klinger.js +12 -12
- package/indicators/klinger.js.map +1 -1
- package/indicators/klinger.src.js +13 -4
- package/indicators/macd.js +1 -1
- package/indicators/macd.js.map +1 -1
- package/indicators/macd.src.js +22 -13
- package/indicators/mfi.js +1 -1
- package/indicators/mfi.js.map +1 -1
- package/indicators/mfi.src.js +24 -11
- package/indicators/momentum.js +1 -1
- package/indicators/momentum.js.map +1 -1
- package/indicators/momentum.src.js +31 -3
- package/indicators/natr.js +1 -1
- package/indicators/natr.js.map +1 -1
- package/indicators/natr.src.js +17 -3
- package/indicators/obv.js +1 -1
- package/indicators/obv.js.map +1 -1
- package/indicators/obv.src.js +11 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.js.map +1 -1
- package/indicators/pivot-points.src.js +32 -19
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.js.map +1 -1
- package/indicators/ppo.src.js +15 -5
- package/indicators/price-channel.js +1 -1
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.js +14 -9
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.js.map +1 -1
- package/indicators/price-envelopes.src.js +26 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.js.map +1 -1
- package/indicators/psar.src.js +17 -4
- package/indicators/regressions.js +12 -11
- package/indicators/regressions.js.map +1 -1
- package/indicators/regressions.src.js +50 -15
- package/indicators/roc.js +1 -1
- package/indicators/roc.js.map +1 -1
- package/indicators/roc.src.js +16 -3
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.js.map +1 -1
- package/indicators/rsi.src.js +21 -3
- package/indicators/slow-stochastic.js +1 -1
- package/indicators/slow-stochastic.js.map +1 -1
- package/indicators/slow-stochastic.src.js +26 -1
- package/indicators/stochastic.js +1 -1
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.js +16 -1
- package/indicators/supertrend.js +7 -7
- package/indicators/supertrend.js.map +1 -1
- package/indicators/supertrend.src.js +18 -6
- package/indicators/tema.js +1 -1
- package/indicators/tema.src.js +1 -1
- package/indicators/trendline.js +1 -1
- package/indicators/trendline.js.map +1 -1
- package/indicators/trendline.src.js +15 -5
- package/indicators/trix.js +1 -1
- package/indicators/trix.js.map +1 -1
- package/indicators/trix.src.js +26 -1
- package/indicators/volume-by-price.js +17 -17
- package/indicators/volume-by-price.js.map +1 -1
- package/indicators/volume-by-price.src.js +38 -10
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.js.map +1 -1
- package/indicators/vwap.src.js +12 -2
- package/indicators/williams-r.js +1 -1
- package/indicators/williams-r.js.map +1 -1
- package/indicators/williams-r.src.js +11 -1
- package/indicators/wma.js +1 -1
- package/indicators/wma.js.map +1 -1
- package/indicators/wma.src.js +31 -3
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.js.map +1 -1
- package/indicators/zigzag.src.js +12 -2
- package/modules/accessibility.js +183 -182
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.js +559 -554
- package/modules/annotations-advanced.d.ts +1 -1
- package/modules/annotations-advanced.js +193 -192
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.d.ts +1 -1
- package/modules/annotations-advanced.src.js +9263 -8654
- package/modules/annotations.d.ts +1 -1
- package/modules/annotations.js +128 -126
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.d.ts +1 -1
- package/modules/annotations.src.js +6699 -6063
- package/modules/arc-diagram.js +1 -1
- package/modules/arc-diagram.src.js +1 -1
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.d.ts +19 -0
- package/modules/boost-canvas.js +81 -16
- package/modules/boost-canvas.js.map +1 -1
- package/modules/boost-canvas.src.d.ts +19 -0
- package/modules/boost-canvas.src.js +3334 -50
- package/modules/boost.d.ts +8 -26
- package/modules/boost.js +84 -77
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.d.ts +8 -26
- package/modules/boost.src.js +2423 -1888
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.js.map +1 -1
- package/modules/broken-axis.src.js +2 -2
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.js +1 -1
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +5 -1
- package/modules/current-date-indicator.js +1 -1
- package/modules/current-date-indicator.src.js +1 -1
- package/modules/cylinder.js +9 -9
- package/modules/cylinder.js.map +1 -1
- package/modules/cylinder.src.js +2 -2
- package/modules/data.js +1 -1
- package/modules/data.src.js +1 -1
- package/modules/datagrouping.d.ts +22 -0
- package/modules/datagrouping.js +4 -4
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.d.ts +22 -0
- package/modules/datagrouping.src.js +66 -28
- package/modules/debugger.js +6 -5
- package/modules/debugger.js.map +1 -1
- package/modules/debugger.src.js +81 -40
- package/modules/dependency-wheel.js +12 -12
- package/modules/dependency-wheel.js.map +1 -1
- package/modules/dependency-wheel.src.js +41 -14
- package/modules/dotplot.js +1 -1
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.js +1 -1
- package/modules/drag-panes.src.js +1 -1
- package/modules/draggable-points.js +5 -5
- package/modules/draggable-points.js.map +1 -1
- package/modules/draggable-points.src.js +5 -4
- package/modules/drilldown.d.ts +0 -10
- package/modules/drilldown.js +29 -29
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.d.ts +0 -10
- package/modules/drilldown.src.js +12 -9
- package/modules/dumbbell.js +1 -1
- package/modules/dumbbell.src.js +1 -1
- package/modules/export-data.js +25 -24
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +607 -499
- package/modules/exporting.js +38 -38
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.js +559 -507
- package/modules/full-screen.js +8 -8
- package/modules/full-screen.js.map +1 -1
- package/modules/full-screen.src.js +76 -26
- package/modules/funnel.js +1 -1
- package/modules/funnel.src.js +1 -1
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.js.map +1 -1
- package/modules/funnel3d.src.js +2 -2
- package/modules/gantt.js +217 -216
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +1481 -1440
- package/modules/grid-axis.js +1 -1
- package/modules/grid-axis.src.js +1 -1
- package/modules/heatmap.js +1 -1
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +10 -2
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.src.js +1 -1
- package/modules/histogram-bellcurve.js +1 -1
- package/modules/histogram-bellcurve.src.js +1 -1
- package/modules/hollowcandlestick.js +1 -1
- package/modules/hollowcandlestick.src.js +1 -1
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +1 -1
- package/modules/lollipop.js +6 -6
- package/modules/lollipop.js.map +1 -1
- package/modules/lollipop.src.js +37 -22
- package/modules/map.d.ts +3 -3
- package/modules/map.js +171 -171
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +3 -3
- package/modules/map.src.js +442 -414
- package/modules/marker-clusters.js +1 -1
- package/modules/marker-clusters.js.map +1 -1
- package/modules/marker-clusters.src.js +3 -1
- package/modules/networkgraph.js +55 -50
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.js +2259 -1938
- package/modules/no-data-to-display.js +1 -1
- package/modules/no-data-to-display.src.js +1 -1
- package/modules/offline-exporting.js +2 -2
- package/modules/offline-exporting.src.js +2 -2
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +1 -1
- package/modules/oldie.js +2 -2
- package/modules/oldie.src.js +2 -2
- package/modules/organization.js +15 -15
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +10 -2
- package/modules/overlapping-datalabels.js +1 -1
- package/modules/overlapping-datalabels.src.js +1 -1
- package/modules/parallel-coordinates.js +11 -11
- package/modules/parallel-coordinates.js.map +1 -1
- package/modules/parallel-coordinates.src.js +13 -8
- package/modules/pareto.js +1 -1
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.js +1 -1
- package/modules/pattern-fill.src.js +1 -1
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/sankey.js +1 -1
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.js +14 -2
- package/modules/series-label.js +5 -5
- package/modules/series-label.js.map +1 -1
- package/modules/series-label.src.js +3 -3
- package/modules/series-on-point.js +1 -1
- package/modules/series-on-point.js.map +1 -1
- package/modules/series-on-point.src.js +6 -2
- package/modules/solid-gauge.js +1 -1
- package/modules/solid-gauge.src.js +2 -2
- package/modules/sonification.d.ts +2 -2
- package/modules/sonification.js +1 -1
- package/modules/sonification.src.d.ts +2 -2
- package/modules/sonification.src.js +2 -2
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.d.ts +1 -23
- package/modules/stock-tools.js +109 -179
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.d.ts +1 -23
- package/modules/stock-tools.src.js +2605 -6335
- package/modules/stock.d.ts +8 -0
- package/modules/stock.js +105 -105
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.d.ts +8 -0
- package/modules/stock.src.js +105 -45
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +72 -72
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +38 -12
- package/modules/tilemap.js +1 -1
- package/modules/tilemap.src.js +1 -1
- package/modules/timeline.js +1 -1
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +3 -1
- package/modules/treegrid.js +57 -57
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +1022 -1014
- package/modules/treemap.js +1 -1
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +8 -4
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +1 -1
- package/modules/variwide.src.js +1 -1
- package/modules/vector.js +2 -2
- package/modules/vector.js.map +1 -1
- package/modules/vector.src.js +3 -5
- package/modules/venn.js +1 -1
- package/modules/venn.src.js +5 -5
- package/modules/windbarb.js +1 -1
- package/modules/windbarb.src.js +1 -1
- package/modules/wordcloud.js +1 -1
- package/modules/wordcloud.src.js +3 -3
- package/modules/xrange.js +17 -17
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +411 -397
- package/package.json +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/brand-dark.js +1 -1
- package/themes/brand-dark.src.js +1 -1
- package/themes/brand-light.js +1 -1
- package/themes/brand-light.src.js +1 -1
- package/themes/dark-blue.js +1 -1
- package/themes/dark-blue.src.js +1 -1
- package/themes/dark-green.js +1 -1
- package/themes/dark-green.src.js +1 -1
- package/themes/dark-unica.js +1 -1
- package/themes/dark-unica.src.js +1 -1
- package/themes/gray.js +1 -1
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.src.js +1 -1
- package/themes/grid.js +1 -1
- package/themes/grid.src.js +1 -1
- package/themes/high-contrast-dark.js +1 -1
- package/themes/high-contrast-dark.src.js +1 -1
- package/themes/high-contrast-light.js +1 -1
- package/themes/high-contrast-light.src.js +1 -1
- package/themes/sand-signika.js +1 -1
- package/themes/sand-signika.src.js +1 -1
- package/themes/skies.js +1 -1
- package/themes/skies.src.js +1 -1
- package/themes/sunset.js +1 -1
- package/themes/sunset.src.js +1 -1
- package/es-modules/Core/Axis/StackingAxis.js +0 -215
- package/es-modules/Core/Axis/TreeGridAxis.js +0 -720
- package/es-modules/Core/Axis/TreeGridTick.js +0 -317
- package/es-modules/Extensions/Annotations/AnnotationsDefaults.js +0 -0
- package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +0 -179
- package/es-modules/Extensions/Annotations/Popup.js +0 -1123
- package/es-modules/Extensions/Boost/BoostAttach.js +0 -154
- package/es-modules/Extensions/Boost/BoostInit.js +0 -324
- package/es-modules/Extensions/Boost/BoostOptions.js +0 -245
- package/es-modules/Extensions/Boost/BoostOverrides.js +0 -386
- package/es-modules/Extensions/Boost/BoostUtils.js +0 -255
- package/es-modules/Extensions/Boost/WGLVBuffer.js +0 -153
- package/es-modules/Extensions/Stacking.js +0 -517
- package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -132
- package/es-modules/Series/Networkgraph/Integrations.js +0 -348
- package/es-modules/Series/Networkgraph/Networkgraph.js +0 -1180
- package/es-modules/Series/XRange/XRangeComposition.js +0 -49
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
/* *
|
|
2
|
-
*
|
|
3
|
-
* Copyright (c) 2019-2021 Highsoft AS
|
|
4
|
-
*
|
|
5
|
-
* Boost module: stripped-down renderer for higher performance
|
|
6
|
-
*
|
|
7
|
-
* License: highcharts.com/license
|
|
8
|
-
*
|
|
9
|
-
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
|
-
*
|
|
11
|
-
* */
|
|
12
|
-
'use strict';
|
|
13
|
-
import '../../Core/Globals.js';
|
|
14
|
-
/**
|
|
15
|
-
* Options for the Boost module. The Boost module allows certain series types
|
|
16
|
-
* to be rendered by WebGL instead of the default SVG. This allows hundreds of
|
|
17
|
-
* thousands of data points to be rendered in milliseconds. In addition to the
|
|
18
|
-
* WebGL rendering it saves time by skipping processing and inspection of the
|
|
19
|
-
* data wherever possible. This introduces some limitations to what features are
|
|
20
|
-
* available in boost mode. See [the docs](
|
|
21
|
-
* https://www.highcharts.com/docs/advanced-chart-features/boost-module) for
|
|
22
|
-
* details.
|
|
23
|
-
*
|
|
24
|
-
* In addition to the global `boost` option, each series has a
|
|
25
|
-
* [boostThreshold](#plotOptions.series.boostThreshold) that defines when the
|
|
26
|
-
* boost should kick in.
|
|
27
|
-
*
|
|
28
|
-
* Requires the `modules/boost.js` module.
|
|
29
|
-
*
|
|
30
|
-
* @sample {highstock} highcharts/boost/line-series-heavy-stock
|
|
31
|
-
* Stock chart
|
|
32
|
-
* @sample {highstock} highcharts/boost/line-series-heavy-dynamic
|
|
33
|
-
* Dynamic stock chart
|
|
34
|
-
* @sample highcharts/boost/line
|
|
35
|
-
* Line chart
|
|
36
|
-
* @sample highcharts/boost/line-series-heavy
|
|
37
|
-
* Line chart with hundreds of series
|
|
38
|
-
* @sample highcharts/boost/scatter
|
|
39
|
-
* Scatter chart
|
|
40
|
-
* @sample highcharts/boost/area
|
|
41
|
-
* Area chart
|
|
42
|
-
* @sample highcharts/boost/arearange
|
|
43
|
-
* Area range chart
|
|
44
|
-
* @sample highcharts/boost/column
|
|
45
|
-
* Column chart
|
|
46
|
-
* @sample highcharts/boost/columnrange
|
|
47
|
-
* Column range chart
|
|
48
|
-
* @sample highcharts/boost/bubble
|
|
49
|
-
* Bubble chart
|
|
50
|
-
* @sample highcharts/boost/heatmap
|
|
51
|
-
* Heat map
|
|
52
|
-
* @sample highcharts/boost/treemap
|
|
53
|
-
* Tree map
|
|
54
|
-
*
|
|
55
|
-
* @product highcharts highstock
|
|
56
|
-
* @requires modules/boost
|
|
57
|
-
* @apioption boost
|
|
58
|
-
*/
|
|
59
|
-
/**
|
|
60
|
-
* Set the series threshold for when the boost should kick in globally.
|
|
61
|
-
*
|
|
62
|
-
* Setting to e.g. 20 will cause the whole chart to enter boost mode
|
|
63
|
-
* if there are 20 or more series active. When the chart is in boost mode,
|
|
64
|
-
* every series in it will be rendered to a common canvas. This offers
|
|
65
|
-
* a significant speed improvment in charts with a very high
|
|
66
|
-
* amount of series.
|
|
67
|
-
*
|
|
68
|
-
* @type {number}
|
|
69
|
-
* @default 50
|
|
70
|
-
* @apioption boost.seriesThreshold
|
|
71
|
-
*/
|
|
72
|
-
/**
|
|
73
|
-
* Enable or disable boost on a chart.
|
|
74
|
-
*
|
|
75
|
-
* @type {boolean}
|
|
76
|
-
* @default true
|
|
77
|
-
* @apioption boost.enabled
|
|
78
|
-
*/
|
|
79
|
-
/**
|
|
80
|
-
* Debugging options for boost.
|
|
81
|
-
* Useful for benchmarking, and general timing.
|
|
82
|
-
*
|
|
83
|
-
* @apioption boost.debug
|
|
84
|
-
*/
|
|
85
|
-
/**
|
|
86
|
-
* Time the series rendering.
|
|
87
|
-
*
|
|
88
|
-
* This outputs the time spent on actual rendering in the console when
|
|
89
|
-
* set to true.
|
|
90
|
-
*
|
|
91
|
-
* @type {boolean}
|
|
92
|
-
* @default false
|
|
93
|
-
* @apioption boost.debug.timeRendering
|
|
94
|
-
*/
|
|
95
|
-
/**
|
|
96
|
-
* Time the series processing.
|
|
97
|
-
*
|
|
98
|
-
* This outputs the time spent on transforming the series data to
|
|
99
|
-
* vertex buffers when set to true.
|
|
100
|
-
*
|
|
101
|
-
* @type {boolean}
|
|
102
|
-
* @default false
|
|
103
|
-
* @apioption boost.debug.timeSeriesProcessing
|
|
104
|
-
*/
|
|
105
|
-
/**
|
|
106
|
-
* Time the the WebGL setup.
|
|
107
|
-
*
|
|
108
|
-
* This outputs the time spent on setting up the WebGL context,
|
|
109
|
-
* creating shaders, and textures.
|
|
110
|
-
*
|
|
111
|
-
* @type {boolean}
|
|
112
|
-
* @default false
|
|
113
|
-
* @apioption boost.debug.timeSetup
|
|
114
|
-
*/
|
|
115
|
-
/**
|
|
116
|
-
* Time the building of the k-d tree.
|
|
117
|
-
*
|
|
118
|
-
* This outputs the time spent building the k-d tree used for
|
|
119
|
-
* markers etc.
|
|
120
|
-
*
|
|
121
|
-
* Note that the k-d tree is built async, and runs post-rendering.
|
|
122
|
-
* Following, it does not affect the performance of the rendering itself.
|
|
123
|
-
*
|
|
124
|
-
* @type {boolean}
|
|
125
|
-
* @default false
|
|
126
|
-
* @apioption boost.debug.timeKDTree
|
|
127
|
-
*/
|
|
128
|
-
/**
|
|
129
|
-
* Show the number of points skipped through culling.
|
|
130
|
-
*
|
|
131
|
-
* When set to true, the number of points skipped in series processing
|
|
132
|
-
* is outputted. Points are skipped if they are closer than 1 pixel from
|
|
133
|
-
* each other.
|
|
134
|
-
*
|
|
135
|
-
* @type {boolean}
|
|
136
|
-
* @default false
|
|
137
|
-
* @apioption boost.debug.showSkipSummary
|
|
138
|
-
*/
|
|
139
|
-
/**
|
|
140
|
-
* Time the WebGL to SVG buffer copy
|
|
141
|
-
*
|
|
142
|
-
* After rendering, the result is copied to an image which is injected
|
|
143
|
-
* into the SVG.
|
|
144
|
-
*
|
|
145
|
-
* If this property is set to true, the time it takes for the buffer copy
|
|
146
|
-
* to complete is outputted.
|
|
147
|
-
*
|
|
148
|
-
* @type {boolean}
|
|
149
|
-
* @default false
|
|
150
|
-
* @apioption boost.debug.timeBufferCopy
|
|
151
|
-
*/
|
|
152
|
-
/**
|
|
153
|
-
* The pixel ratio for the WebGL content. If 0, the `window.devicePixelRatio` is
|
|
154
|
-
* used. This ensures sharp graphics on high DPI displays like Apple's Retina,
|
|
155
|
-
* as well as when a page is zoomed.
|
|
156
|
-
*
|
|
157
|
-
* The default is left at 1 for now, as this is a new feature that has the
|
|
158
|
-
* potential to break existing setups. Over time, when it has been battle
|
|
159
|
-
* tested, the intention is to set it to 0 by default.
|
|
160
|
-
*
|
|
161
|
-
* Another use case for this option is to set it to 2 in order to make exported
|
|
162
|
-
* and upscaled charts render sharp.
|
|
163
|
-
*
|
|
164
|
-
* One limitation when using the `pixelRatio` is that the line width of graphs
|
|
165
|
-
* is scaled down. Since the Boost module currently can only render 1px line
|
|
166
|
-
* widths, it is scaled down to a thin 0.5 pixels on a Retina display.
|
|
167
|
-
*
|
|
168
|
-
* @sample highcharts/boost/line-devicepixelratio
|
|
169
|
-
* Enable the `devicePixelRatio`
|
|
170
|
-
* @sample highcharts/boost/line-export-pixelratio
|
|
171
|
-
* Sharper graphics in export
|
|
172
|
-
*
|
|
173
|
-
* @type {number}
|
|
174
|
-
* @since 10.0.0
|
|
175
|
-
* @default 1
|
|
176
|
-
* @apioption boost.pixelRatio
|
|
177
|
-
*/
|
|
178
|
-
/**
|
|
179
|
-
* Enable or disable GPU translations. GPU translations are faster than doing
|
|
180
|
-
* the translation in JavaScript.
|
|
181
|
-
*
|
|
182
|
-
* This option may cause rendering issues with certain datasets.
|
|
183
|
-
* Namely, if your dataset has large numbers with small increments (such as
|
|
184
|
-
* timestamps), it won't work correctly. This is due to floating point
|
|
185
|
-
* precission.
|
|
186
|
-
*
|
|
187
|
-
* @type {boolean}
|
|
188
|
-
* @default false
|
|
189
|
-
* @apioption boost.useGPUTranslations
|
|
190
|
-
*/
|
|
191
|
-
/**
|
|
192
|
-
* Enable or disable pre-allocation of vertex buffers.
|
|
193
|
-
*
|
|
194
|
-
* Enabling this will make it so that the binary data arrays required for
|
|
195
|
-
* storing the series data will be allocated prior to transforming the data
|
|
196
|
-
* to a WebGL-compatible format.
|
|
197
|
-
*
|
|
198
|
-
* This saves a copy operation on the order of O(n) and so is significantly more
|
|
199
|
-
* performant. However, this is currently an experimental option, and may cause
|
|
200
|
-
* visual artifacts with some datasets.
|
|
201
|
-
*
|
|
202
|
-
* As such, care should be taken when using this setting to make sure that
|
|
203
|
-
* it doesn't cause any rendering glitches with the given use-case.
|
|
204
|
-
*
|
|
205
|
-
* @type {boolean}
|
|
206
|
-
* @default false
|
|
207
|
-
* @apioption boost.usePreallocated
|
|
208
|
-
*/
|
|
209
|
-
/**
|
|
210
|
-
* Set the point threshold for when a series should enter boost mode.
|
|
211
|
-
*
|
|
212
|
-
* Setting it to e.g. 2000 will cause the series to enter boost mode when there
|
|
213
|
-
* are 2000 or more points in the series.
|
|
214
|
-
*
|
|
215
|
-
* To disable boosting on the series, set the `boostThreshold` to 0. Setting it
|
|
216
|
-
* to 1 will force boosting.
|
|
217
|
-
*
|
|
218
|
-
* Note that the [cropThreshold](plotOptions.series.cropThreshold) also affects
|
|
219
|
-
* this setting. When zooming in on a series that has fewer points than the
|
|
220
|
-
* `cropThreshold`, all points are rendered although outside the visible plot
|
|
221
|
-
* area, and the `boostThreshold` won't take effect.
|
|
222
|
-
*
|
|
223
|
-
* @type {number}
|
|
224
|
-
* @default 5000
|
|
225
|
-
* @requires modules/boost
|
|
226
|
-
* @apioption plotOptions.series.boostThreshold
|
|
227
|
-
*/
|
|
228
|
-
/**
|
|
229
|
-
* If set to true, the whole chart will be boosted if one of the series
|
|
230
|
-
* crosses its threshold, and all the series can be boosted.
|
|
231
|
-
*
|
|
232
|
-
* @type {boolean}
|
|
233
|
-
* @default true
|
|
234
|
-
* @apioption boost.allowForce
|
|
235
|
-
*/
|
|
236
|
-
/**
|
|
237
|
-
* Sets the color blending in the boost module.
|
|
238
|
-
*
|
|
239
|
-
* @type {string}
|
|
240
|
-
* @default undefined
|
|
241
|
-
* @validvalue ["add", "multiply", "darken"]
|
|
242
|
-
* @requires modules/boost
|
|
243
|
-
* @apioption plotOptions.series.boostBlending
|
|
244
|
-
*/
|
|
245
|
-
''; // adds doclets above to transpiled file
|
|
@@ -1,386 +0,0 @@
|
|
|
1
|
-
/* *
|
|
2
|
-
*
|
|
3
|
-
* Copyright (c) 2019-2021 Highsoft AS
|
|
4
|
-
*
|
|
5
|
-
* Boost module: stripped-down renderer for higher performance
|
|
6
|
-
*
|
|
7
|
-
* License: highcharts.com/license
|
|
8
|
-
*
|
|
9
|
-
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
|
-
*
|
|
11
|
-
* */
|
|
12
|
-
'use strict';
|
|
13
|
-
import Chart from '../../Core/Chart/Chart.js';
|
|
14
|
-
import D from '../../Core/DefaultOptions.js';
|
|
15
|
-
var getOptions = D.getOptions;
|
|
16
|
-
import Point from '../../Core/Series/Point.js';
|
|
17
|
-
import Series from '../../Core/Series/Series.js';
|
|
18
|
-
import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
|
|
19
|
-
var seriesTypes = SeriesRegistry.seriesTypes;
|
|
20
|
-
import U from '../../Core/Utilities.js';
|
|
21
|
-
var addEvent = U.addEvent, error = U.error, isArray = U.isArray, isNumber = U.isNumber, pick = U.pick, wrap = U.wrap;
|
|
22
|
-
import '../../Core/DefaultOptions.js';
|
|
23
|
-
import butils from './BoostUtils.js';
|
|
24
|
-
import boostable from './Boostables.js';
|
|
25
|
-
import boostableMap from './BoostableMap.js';
|
|
26
|
-
var boostEnabled = butils.boostEnabled, shouldForceChartSeriesBoosting = butils.shouldForceChartSeriesBoosting, plotOptions = getOptions().plotOptions;
|
|
27
|
-
/**
|
|
28
|
-
* Returns true if the chart is in series boost mode.
|
|
29
|
-
*
|
|
30
|
-
* @function Highcharts.Chart#isChartSeriesBoosting
|
|
31
|
-
*
|
|
32
|
-
* @param {Highcharts.Chart} chart
|
|
33
|
-
* the chart to check
|
|
34
|
-
*
|
|
35
|
-
* @return {boolean}
|
|
36
|
-
* true if the chart is in series boost mode
|
|
37
|
-
*/
|
|
38
|
-
Chart.prototype.isChartSeriesBoosting = function () {
|
|
39
|
-
var isSeriesBoosting, threshold = pick(this.options.boost && this.options.boost.seriesThreshold, 50);
|
|
40
|
-
isSeriesBoosting = threshold <= this.series.length ||
|
|
41
|
-
shouldForceChartSeriesBoosting(this);
|
|
42
|
-
return isSeriesBoosting;
|
|
43
|
-
};
|
|
44
|
-
/* eslint-disable valid-jsdoc */
|
|
45
|
-
/**
|
|
46
|
-
* Get the clip rectangle for a target, either a series or the chart. For the
|
|
47
|
-
* chart, we need to consider the maximum extent of its Y axes, in case of
|
|
48
|
-
* Highcharts Stock panes and navigator.
|
|
49
|
-
*
|
|
50
|
-
* @private
|
|
51
|
-
* @function Highcharts.Chart#getBoostClipRect
|
|
52
|
-
*/
|
|
53
|
-
Chart.prototype.getBoostClipRect = function (target) {
|
|
54
|
-
var clipBox = {
|
|
55
|
-
x: this.plotLeft,
|
|
56
|
-
y: this.plotTop,
|
|
57
|
-
width: this.plotWidth,
|
|
58
|
-
height: this.plotHeight
|
|
59
|
-
};
|
|
60
|
-
if (target === this) {
|
|
61
|
-
var verticalAxes = this.inverted ? this.xAxis : this.yAxis; // #14444
|
|
62
|
-
if (verticalAxes.length <= 1) {
|
|
63
|
-
clipBox.y = Math.min(verticalAxes[0].pos, clipBox.y);
|
|
64
|
-
clipBox.height = (verticalAxes[0].pos -
|
|
65
|
-
this.plotTop +
|
|
66
|
-
verticalAxes[0].len);
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
clipBox.height = this.plotHeight;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
return clipBox;
|
|
73
|
-
};
|
|
74
|
-
/**
|
|
75
|
-
* Return a full Point object based on the index.
|
|
76
|
-
* The boost module uses stripped point objects for performance reasons.
|
|
77
|
-
*
|
|
78
|
-
* @function Highcharts.Series#getPoint
|
|
79
|
-
*
|
|
80
|
-
* @param {object|Highcharts.Point} boostPoint
|
|
81
|
-
* A stripped-down point object
|
|
82
|
-
*
|
|
83
|
-
* @return {Highcharts.Point}
|
|
84
|
-
* A Point object as per https://api.highcharts.com/highcharts#Point
|
|
85
|
-
*/
|
|
86
|
-
Series.prototype.getPoint = function (boostPoint) {
|
|
87
|
-
var point = boostPoint, xData = (this.xData || this.options.xData || this.processedXData ||
|
|
88
|
-
false);
|
|
89
|
-
if (boostPoint && !(boostPoint instanceof this.pointClass)) {
|
|
90
|
-
point = (new this.pointClass()).init(// eslint-disable-line new-cap
|
|
91
|
-
this, this.options.data[boostPoint.i], xData ? xData[boostPoint.i] : void 0);
|
|
92
|
-
point.category = pick(this.xAxis.categories ?
|
|
93
|
-
this.xAxis.categories[point.x] :
|
|
94
|
-
point.x, // @todo simplify
|
|
95
|
-
point.x);
|
|
96
|
-
point.dist = boostPoint.dist;
|
|
97
|
-
point.distX = boostPoint.distX;
|
|
98
|
-
point.plotX = boostPoint.plotX;
|
|
99
|
-
point.plotY = boostPoint.plotY;
|
|
100
|
-
point.index = boostPoint.i;
|
|
101
|
-
point.isInside = this.isPointInside(boostPoint);
|
|
102
|
-
}
|
|
103
|
-
return point;
|
|
104
|
-
};
|
|
105
|
-
/* eslint-disable no-invalid-this */
|
|
106
|
-
// Return a point instance from the k-d-tree
|
|
107
|
-
wrap(Series.prototype, 'searchPoint', function (proceed) {
|
|
108
|
-
return this.getPoint(proceed.apply(this, [].slice.call(arguments, 1)));
|
|
109
|
-
});
|
|
110
|
-
// For inverted series, we need to swap X-Y values before running base methods
|
|
111
|
-
wrap(Point.prototype, 'haloPath', function (proceed) {
|
|
112
|
-
var halo, point = this, series = point.series, chart = series.chart, plotX = point.plotX, plotY = point.plotY, inverted = chart.inverted;
|
|
113
|
-
if (series.isSeriesBoosting && inverted) {
|
|
114
|
-
point.plotX = series.yAxis.len - plotY;
|
|
115
|
-
point.plotY = series.xAxis.len - plotX;
|
|
116
|
-
}
|
|
117
|
-
halo = proceed.apply(this, Array.prototype.slice.call(arguments, 1));
|
|
118
|
-
if (series.isSeriesBoosting && inverted) {
|
|
119
|
-
point.plotX = plotX;
|
|
120
|
-
point.plotY = plotY;
|
|
121
|
-
}
|
|
122
|
-
return halo;
|
|
123
|
-
});
|
|
124
|
-
wrap(Series.prototype, 'markerAttribs', function (proceed, point) {
|
|
125
|
-
var attribs, series = this, chart = series.chart, plotX = point.plotX, plotY = point.plotY, inverted = chart.inverted;
|
|
126
|
-
if (series.isSeriesBoosting && inverted) {
|
|
127
|
-
point.plotX = series.yAxis.len - plotY;
|
|
128
|
-
point.plotY = series.xAxis.len - plotX;
|
|
129
|
-
}
|
|
130
|
-
attribs = proceed.apply(this, Array.prototype.slice.call(arguments, 1));
|
|
131
|
-
if (series.isSeriesBoosting && inverted) {
|
|
132
|
-
point.plotX = plotX;
|
|
133
|
-
point.plotY = plotY;
|
|
134
|
-
}
|
|
135
|
-
return attribs;
|
|
136
|
-
});
|
|
137
|
-
/*
|
|
138
|
-
* Extend series.destroy to also remove the fake k-d-tree points (#5137).
|
|
139
|
-
* Normally this is handled by Series.destroy that calls Point.destroy,
|
|
140
|
-
* but the fake search points are not registered like that.
|
|
141
|
-
*/
|
|
142
|
-
addEvent(Series, 'destroy', function () {
|
|
143
|
-
var series = this, chart = series.chart;
|
|
144
|
-
if (chart.markerGroup === series.markerGroup) {
|
|
145
|
-
series.markerGroup = null;
|
|
146
|
-
}
|
|
147
|
-
if (chart.hoverPoints) {
|
|
148
|
-
chart.hoverPoints = chart.hoverPoints.filter(function (point) {
|
|
149
|
-
return point.series === series;
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
if (chart.hoverPoint && chart.hoverPoint.series === series) {
|
|
153
|
-
chart.hoverPoint = null;
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
/*
|
|
157
|
-
* Do not compute extremes when min and max are set.
|
|
158
|
-
* If we use this in the core, we can add the hook
|
|
159
|
-
* to hasExtremes to the methods directly.
|
|
160
|
-
*/
|
|
161
|
-
wrap(Series.prototype, 'getExtremes', function (proceed) {
|
|
162
|
-
if (!this.isSeriesBoosting || (!this.hasExtremes || !this.hasExtremes())) {
|
|
163
|
-
return proceed.apply(this, Array.prototype.slice.call(arguments, 1));
|
|
164
|
-
}
|
|
165
|
-
return {};
|
|
166
|
-
});
|
|
167
|
-
/*
|
|
168
|
-
* Override a bunch of methods the same way. If the number of points is
|
|
169
|
-
* below the threshold, run the original method. If not, check for a
|
|
170
|
-
* canvas version or do nothing.
|
|
171
|
-
*
|
|
172
|
-
* Note that we're not overriding any of these for heatmaps.
|
|
173
|
-
*/
|
|
174
|
-
[
|
|
175
|
-
'translate',
|
|
176
|
-
'generatePoints',
|
|
177
|
-
'drawTracker',
|
|
178
|
-
'drawPoints',
|
|
179
|
-
'render'
|
|
180
|
-
].forEach(function (method) {
|
|
181
|
-
/**
|
|
182
|
-
* @private
|
|
183
|
-
*/
|
|
184
|
-
function branch(proceed) {
|
|
185
|
-
var letItPass = this.options.stacking &&
|
|
186
|
-
(method === 'translate' || method === 'generatePoints');
|
|
187
|
-
if (!this.isSeriesBoosting ||
|
|
188
|
-
letItPass ||
|
|
189
|
-
!boostEnabled(this.chart) ||
|
|
190
|
-
this.type === 'heatmap' ||
|
|
191
|
-
this.type === 'treemap' ||
|
|
192
|
-
!boostableMap[this.type] ||
|
|
193
|
-
this.options.boostThreshold === 0) {
|
|
194
|
-
proceed.call(this);
|
|
195
|
-
// If a canvas version of the method exists, like renderCanvas(), run
|
|
196
|
-
}
|
|
197
|
-
else if (this[method + 'Canvas']) {
|
|
198
|
-
this[method + 'Canvas']();
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
wrap(Series.prototype, method, branch);
|
|
202
|
-
// A special case for some types - their translate method is already wrapped
|
|
203
|
-
if (method === 'translate') {
|
|
204
|
-
[
|
|
205
|
-
'column',
|
|
206
|
-
'bar',
|
|
207
|
-
'arearange',
|
|
208
|
-
'columnrange',
|
|
209
|
-
'heatmap',
|
|
210
|
-
'treemap'
|
|
211
|
-
].forEach(function (type) {
|
|
212
|
-
if (seriesTypes[type]) {
|
|
213
|
-
wrap(seriesTypes[type].prototype, method, branch);
|
|
214
|
-
}
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
|
-
});
|
|
218
|
-
// If the series is a heatmap or treemap, or if the series is not boosting
|
|
219
|
-
// do the default behaviour. Otherwise, process if the series has no extremes.
|
|
220
|
-
wrap(Series.prototype, 'processData', function (proceed) {
|
|
221
|
-
var series = this;
|
|
222
|
-
var dataToMeasure = this.options.data;
|
|
223
|
-
/**
|
|
224
|
-
* Used twice in this function, first on this.options.data, the second
|
|
225
|
-
* time it runs the check again after processedXData is built.
|
|
226
|
-
* If the data is going to be grouped, the series shouldn't be boosted.
|
|
227
|
-
* @private
|
|
228
|
-
*/
|
|
229
|
-
function getSeriesBoosting(data) {
|
|
230
|
-
// Check if will be grouped.
|
|
231
|
-
if (series.forceCrop) {
|
|
232
|
-
return false;
|
|
233
|
-
}
|
|
234
|
-
return series.chart.isChartSeriesBoosting() || ((data ? data.length : 0) >=
|
|
235
|
-
(series.options.boostThreshold || Number.MAX_VALUE));
|
|
236
|
-
}
|
|
237
|
-
if (boostEnabled(this.chart) && boostableMap[this.type]) {
|
|
238
|
-
// If there are no extremes given in the options, we also need to
|
|
239
|
-
// process the data to read the data extremes. If this is a heatmap, do
|
|
240
|
-
// default behaviour.
|
|
241
|
-
if (!getSeriesBoosting(dataToMeasure) || // First pass with options.data
|
|
242
|
-
this.type === 'heatmap' ||
|
|
243
|
-
this.type === 'treemap' ||
|
|
244
|
-
this.options.stacking || // processedYData for the stack (#7481)
|
|
245
|
-
!this.hasExtremes ||
|
|
246
|
-
!this.hasExtremes(true)) {
|
|
247
|
-
proceed.apply(this, Array.prototype.slice.call(arguments, 1));
|
|
248
|
-
dataToMeasure = this.processedXData;
|
|
249
|
-
}
|
|
250
|
-
// Set the isBoosting flag, second pass with processedXData to see if we
|
|
251
|
-
// have zoomed.
|
|
252
|
-
this.isSeriesBoosting = getSeriesBoosting(dataToMeasure);
|
|
253
|
-
// Enter or exit boost mode
|
|
254
|
-
if (this.isSeriesBoosting) {
|
|
255
|
-
// Force turbo-mode:
|
|
256
|
-
var firstPoint = void 0;
|
|
257
|
-
if (this.options.data && this.options.data.length) {
|
|
258
|
-
firstPoint = this.getFirstValidPoint(this.options.data);
|
|
259
|
-
if (!isNumber(firstPoint) && !isArray(firstPoint)) {
|
|
260
|
-
error(12, false, this.chart);
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
this.enterBoost();
|
|
264
|
-
}
|
|
265
|
-
else if (this.exitBoost) {
|
|
266
|
-
this.exitBoost();
|
|
267
|
-
}
|
|
268
|
-
// The series type is not boostable
|
|
269
|
-
}
|
|
270
|
-
else {
|
|
271
|
-
proceed.apply(this, Array.prototype.slice.call(arguments, 1));
|
|
272
|
-
}
|
|
273
|
-
});
|
|
274
|
-
addEvent(Series, 'hide', function () {
|
|
275
|
-
if (this.canvas && this.renderTarget) {
|
|
276
|
-
if (this.ogl) {
|
|
277
|
-
this.ogl.clear();
|
|
278
|
-
}
|
|
279
|
-
this.boostClear();
|
|
280
|
-
}
|
|
281
|
-
});
|
|
282
|
-
/**
|
|
283
|
-
* Enter boost mode and apply boost-specific properties.
|
|
284
|
-
*
|
|
285
|
-
* @function Highcharts.Series#enterBoost
|
|
286
|
-
*/
|
|
287
|
-
Series.prototype.enterBoost = function () {
|
|
288
|
-
this.alteredByBoost = [];
|
|
289
|
-
// Save the original values, including whether it was an own property or
|
|
290
|
-
// inherited from the prototype.
|
|
291
|
-
['allowDG', 'directTouch', 'stickyTracking'].forEach(function (prop) {
|
|
292
|
-
this.alteredByBoost.push({
|
|
293
|
-
prop: prop,
|
|
294
|
-
val: this[prop],
|
|
295
|
-
own: Object.hasOwnProperty.call(this, prop)
|
|
296
|
-
});
|
|
297
|
-
}, this);
|
|
298
|
-
this.allowDG = false;
|
|
299
|
-
this.directTouch = false;
|
|
300
|
-
this.stickyTracking = true;
|
|
301
|
-
// Prevent animation when zooming in on boosted series(#13421).
|
|
302
|
-
this.finishedAnimating = true;
|
|
303
|
-
// Hide series label if any
|
|
304
|
-
if (this.labelBySeries) {
|
|
305
|
-
this.labelBySeries = this.labelBySeries.destroy();
|
|
306
|
-
}
|
|
307
|
-
};
|
|
308
|
-
/**
|
|
309
|
-
* Exit from boost mode and restore non-boost properties.
|
|
310
|
-
*
|
|
311
|
-
* @function Highcharts.Series#exitBoost
|
|
312
|
-
*/
|
|
313
|
-
Series.prototype.exitBoost = function () {
|
|
314
|
-
// Reset instance properties and/or delete instance properties and go back
|
|
315
|
-
// to prototype
|
|
316
|
-
(this.alteredByBoost || []).forEach(function (setting) {
|
|
317
|
-
if (setting.own) {
|
|
318
|
-
this[setting.prop] = setting.val;
|
|
319
|
-
}
|
|
320
|
-
else {
|
|
321
|
-
// Revert to prototype
|
|
322
|
-
delete this[setting.prop];
|
|
323
|
-
}
|
|
324
|
-
}, this);
|
|
325
|
-
// Clear previous run
|
|
326
|
-
if (this.boostClear) {
|
|
327
|
-
this.boostClear();
|
|
328
|
-
}
|
|
329
|
-
};
|
|
330
|
-
/**
|
|
331
|
-
* @private
|
|
332
|
-
* @function Highcharts.Series#hasExtremes
|
|
333
|
-
*/
|
|
334
|
-
Series.prototype.hasExtremes = function (checkX) {
|
|
335
|
-
var options = this.options, data = options.data, xAxis = this.xAxis && this.xAxis.options, yAxis = this.yAxis && this.yAxis.options, colorAxis = this.colorAxis && this.colorAxis.options;
|
|
336
|
-
return data.length > (options.boostThreshold || Number.MAX_VALUE) &&
|
|
337
|
-
// Defined yAxis extremes
|
|
338
|
-
isNumber(yAxis.min) &&
|
|
339
|
-
isNumber(yAxis.max) &&
|
|
340
|
-
// Defined (and required) xAxis extremes
|
|
341
|
-
(!checkX ||
|
|
342
|
-
(isNumber(xAxis.min) && isNumber(xAxis.max))) &&
|
|
343
|
-
// Defined (e.g. heatmap) colorAxis extremes
|
|
344
|
-
(!colorAxis ||
|
|
345
|
-
(isNumber(colorAxis.min) && isNumber(colorAxis.max)));
|
|
346
|
-
};
|
|
347
|
-
/**
|
|
348
|
-
* If implemented in the core, parts of this can probably be
|
|
349
|
-
* shared with other similar methods in Highcharts.
|
|
350
|
-
*
|
|
351
|
-
* @function Highcharts.Series#destroyGraphics
|
|
352
|
-
*/
|
|
353
|
-
Series.prototype.destroyGraphics = function () {
|
|
354
|
-
var _this = this;
|
|
355
|
-
var series = this, points = this.points, point, i;
|
|
356
|
-
if (points) {
|
|
357
|
-
for (i = 0; i < points.length; i = i + 1) {
|
|
358
|
-
point = points[i];
|
|
359
|
-
if (point && point.destroyElements) {
|
|
360
|
-
point.destroyElements(); // #7557
|
|
361
|
-
}
|
|
362
|
-
}
|
|
363
|
-
}
|
|
364
|
-
['graph', 'area', 'tracker'].forEach(function (prop) {
|
|
365
|
-
if (series[prop]) {
|
|
366
|
-
series[prop] = series[prop].destroy();
|
|
367
|
-
}
|
|
368
|
-
});
|
|
369
|
-
if (this.getZonesGraphs) {
|
|
370
|
-
var props = this.getZonesGraphs([['graph', 'highcharts-graph']]);
|
|
371
|
-
props.forEach(function (prop) {
|
|
372
|
-
var zoneGraph = _this[prop[0]];
|
|
373
|
-
if (zoneGraph) {
|
|
374
|
-
_this[prop[0]] = zoneGraph.destroy();
|
|
375
|
-
}
|
|
376
|
-
});
|
|
377
|
-
}
|
|
378
|
-
};
|
|
379
|
-
// Set default options
|
|
380
|
-
boostable.forEach(function (type) {
|
|
381
|
-
if (plotOptions[type]) {
|
|
382
|
-
plotOptions[type].boostThreshold = 5000;
|
|
383
|
-
plotOptions[type].boostData = [];
|
|
384
|
-
seriesTypes[type].prototype.fillOpacity = true;
|
|
385
|
-
}
|
|
386
|
-
});
|