highcharts 13.0.0 → 13.0.2
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 +2 -1
- package/es-modules/Accessibility/A11yI18n.js +4 -4
- package/es-modules/Accessibility/Accessibility.js +38 -1
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +6 -4
- package/es-modules/Accessibility/Components/LegendComponent.js +3 -4
- package/es-modules/Accessibility/Components/NavigatorComponent.js +3 -4
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +13 -10
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +8 -4
- package/es-modules/Accessibility/Components/ZoomComponent.js +2 -2
- package/es-modules/Accessibility/FocusBorder.js +2 -2
- package/es-modules/Accessibility/Options/A11yDefaults.js +12 -3
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +1 -2
- package/es-modules/Accessibility/ProxyElement.js +1 -0
- package/es-modules/Core/Animation/AnimationUtilities.js +34 -43
- package/es-modules/Core/Animation/Fx.js +16 -19
- package/es-modules/Core/Axis/Axis.js +49 -59
- package/es-modules/Core/Axis/Axis3DComposition.js +8 -6
- package/es-modules/Core/Axis/AxisDefaults.js +12 -2
- package/es-modules/Core/Axis/BrokenAxis.js +6 -5
- package/es-modules/Core/Axis/Color/ColorAxis.js +24 -12
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -3
- package/es-modules/Core/Axis/GridAxis.js +12 -5
- package/es-modules/Core/Axis/LogarithmicAxis.js +5 -3
- package/es-modules/Core/Axis/NavigatorAxisComposition.js +2 -2
- package/es-modules/Core/Axis/OrdinalAxis.js +21 -11
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -2
- package/es-modules/Core/Axis/RadialAxis.js +23 -22
- package/es-modules/Core/Axis/ScrollbarAxis.js +3 -3
- package/es-modules/Core/Axis/Stacking/StackItem.js +5 -5
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +5 -6
- package/es-modules/Core/Axis/Tick.js +10 -11
- package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +1 -1
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -3
- package/es-modules/Core/Chart/Chart.js +58 -53
- package/es-modules/Core/Chart/Chart3D.js +3 -3
- package/es-modules/Core/Chart/ChartDefaults.js +24 -1
- package/es-modules/Core/Chart/MapChart.js +7 -10
- package/es-modules/Core/Chart/StockChart.js +15 -11
- package/es-modules/Core/Color/Color.js +3 -1
- package/es-modules/Core/Defaults.js +44 -2
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/Legend/Legend.js +20 -17
- package/es-modules/Core/Legend/LegendSymbol.js +2 -2
- package/es-modules/Core/MSPointer.js +2 -2
- package/es-modules/Core/Math3D.js +6 -7
- package/es-modules/Core/Pointer.js +20 -10
- package/es-modules/Core/Renderer/HTML/AST.js +5 -1
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -16
- package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGElement.js +12 -11
- package/es-modules/Core/Renderer/SVG/SVGElement3D.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +5 -5
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +6 -6
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +13 -12
- package/es-modules/Core/Renderer/SVG/Symbols.js +6 -5
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
- package/es-modules/Core/Responsive.js +7 -5
- package/es-modules/Core/Series/DataLabel.js +9 -8
- package/es-modules/Core/Series/OverlappingDataLabels.js +5 -2
- package/es-modules/Core/Series/Point.js +31 -24
- package/es-modules/Core/Series/Series.js +125 -82
- package/es-modules/Core/Series/Series3D.js +2 -2
- package/es-modules/Core/Series/SeriesDefaults.js +33 -0
- package/es-modules/Core/Templating.js +18 -15
- package/es-modules/Core/Tooltip.js +12 -9
- package/es-modules/Core/Utilities.js +4 -3
- package/es-modules/Data/Connectors/DataConnector.js +2 -2
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
- package/es-modules/Data/DataTable.js +17 -0
- package/es-modules/Data/DataTableCore.js +1 -1
- package/es-modules/Extensions/Annotations/Annotation.js +5 -6
- package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -2
- package/es-modules/Extensions/Annotations/AnnotationDefaults.js +4 -4
- package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +2 -2
- package/es-modules/Extensions/Annotations/EventEmitter.js +4 -4
- package/es-modules/Extensions/Annotations/MockPoint.js +7 -9
- package/es-modules/Extensions/Annotations/NavigationBindings.js +6 -3
- package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +31 -4
- package/es-modules/Extensions/Annotations/Popup/Popup.js +3 -2
- package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +6 -8
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -4
- package/es-modules/Extensions/Annotations/Types/Measure.js +28 -10
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +4 -2
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -1
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +3 -3
- package/es-modules/Extensions/Boost/Boost.js +13 -0
- package/es-modules/Extensions/Boost/BoostChart.js +11 -4
- package/es-modules/Extensions/Boost/BoostSeries.js +17 -11
- package/es-modules/Extensions/Boost/WGLRenderer.js +9 -6
- package/es-modules/Extensions/Boost/WGLShader.js +3 -3
- package/es-modules/Extensions/BoostCanvas.js +2 -2
- package/es-modules/Extensions/BorderRadius.js +12 -10
- package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +6 -5
- package/es-modules/Extensions/DataGrouping/DataGrouping.js +2 -2
- package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +4 -3
- package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +2 -2
- package/es-modules/Extensions/DraggablePoints/DragDropProps.js +2 -3
- package/es-modules/Extensions/DraggablePoints/DraggableChart.js +1 -2
- package/es-modules/Extensions/Drilldown/Drilldown.js +1 -2
- package/es-modules/Extensions/Drilldown/DrilldownSeries.js +1 -2
- package/es-modules/Extensions/ExportData/ExportData.js +21 -16
- package/es-modules/Extensions/Exporting/Exporting.js +28 -28
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +32 -0
- package/es-modules/Extensions/MarkerClusters/MarkerClusterScatter.js +1 -2
- package/es-modules/Extensions/MarkerClusters/MarkerClusters.js +1 -2
- package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +2 -2
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +31 -4
- package/es-modules/Extensions/Pane/PaneComposition.js +2 -2
- package/es-modules/Extensions/Pane/PaneDefaults.js +1 -1
- package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -2
- package/es-modules/Extensions/ParallelCoordinates/ParallelCoordinates.js +3 -0
- package/es-modules/Extensions/PatternFill.js +7 -5
- package/es-modules/Extensions/PriceIndication.js +5 -4
- package/es-modules/Extensions/ScrollablePlotArea.js +8 -2
- package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +8 -9
- package/es-modules/Extensions/Sonification/MIDI.js +2 -3
- package/es-modules/Extensions/Sonification/Sonification.js +2 -2
- package/es-modules/Extensions/Sonification/SonificationSpeaker.js +3 -2
- package/es-modules/Extensions/Sonification/SynthPatch.js +4 -4
- package/es-modules/Extensions/Sonification/TimelineFromChart.js +11 -11
- package/es-modules/Gantt/Legacy.js +2 -2
- package/es-modules/Gantt/Pathfinder.js +3 -3
- package/es-modules/Gantt/PathfinderAlgorithms.js +4 -3
- package/es-modules/Gantt/Tree.js +1 -1
- package/es-modules/Maps/GeoJSONComposition.js +14 -1
- package/es-modules/Maps/MapNavigation.js +4 -4
- package/es-modules/Maps/MapPointer.js +2 -2
- package/es-modules/Maps/MapView.js +3 -3
- package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +8 -6
- package/es-modules/Series/Area/AreaSeries.js +4 -5
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +87 -147
- package/es-modules/Series/AreaRange/AreaRangeSeriesDefaults.js +42 -4
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +10 -6
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +40 -32
- package/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js +33 -1
- package/es-modules/Series/Bubble/BubbleLegendItem.js +10 -6
- package/es-modules/Series/Bubble/BubbleSeries.js +25 -9
- package/es-modules/Series/Bullet/BulletSeries.js +17 -10
- package/es-modules/Series/Candlestick/CandlestickSeries.js +3 -3
- package/es-modules/Series/CenteredUtilities.js +12 -9
- package/es-modules/Series/ColorMapComposition.js +7 -4
- package/es-modules/Series/Column/ColumnPoint.js +2 -0
- package/es-modules/Series/Column/ColumnSeries.js +14 -14
- package/es-modules/Series/Column/ColumnSeriesDefaults.js +4 -2
- package/es-modules/Series/Column3D/Column3DComposition.js +22 -19
- package/es-modules/Series/ColumnPyramid/ColumnPyramidPoint.js +18 -0
- package/es-modules/Series/ColumnPyramid/ColumnPyramidPointOptions.js +12 -0
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +7 -6
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeriesOptions.js +12 -0
- package/es-modules/Series/ColumnRange/ColumnRangePoint.js +2 -0
- package/es-modules/Series/ColumnRange/ColumnRangePointOptions.js +12 -0
- package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +13 -144
- package/es-modules/Series/ColumnRange/ColumnRangeSeriesDefaults.js +148 -0
- package/es-modules/Series/ColumnRange/ColumnRangeSeriesOptions.js +12 -0
- package/es-modules/Series/Contour/ContourPoint.js +2 -0
- package/es-modules/Series/Contour/ContourSeries.js +1 -0
- package/es-modules/Series/Contour/ContourSeriesDefaults.js +7 -0
- package/es-modules/Series/Contour/ContourShader.js +9 -1
- package/es-modules/Series/CrossSymbol.js +3 -2
- package/es-modules/Series/Cylinder/CylinderComposition.js +12 -12
- package/es-modules/Series/Cylinder/CylinderPoint.js +2 -0
- package/es-modules/Series/Cylinder/CylinderPointOptions.js +15 -0
- package/es-modules/Series/Cylinder/CylinderSeries.js +2 -1
- package/es-modules/Series/Cylinder/CylinderSeriesOptions.js +15 -0
- package/es-modules/Series/Cylinder/SVGElement3DCylinder.js +2 -0
- package/es-modules/Series/DataModifyComposition.js +9 -7
- package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +3 -1
- package/es-modules/Series/DependencyWheel/DependencyWheelPointOptions.js +14 -0
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +8 -8
- package/es-modules/Series/DependencyWheel/DependencyWheelSeriesOptions.js +14 -0
- package/es-modules/Series/DerivedComposition.js +9 -8
- package/es-modules/Series/DotPlot/DotPlotPoint.js +18 -0
- package/es-modules/Series/DotPlot/DotPlotPointOptions.js +12 -0
- package/es-modules/Series/DotPlot/DotPlotSeries.js +6 -4
- package/es-modules/Series/DotPlot/DotPlotSeriesOptions.js +12 -0
- package/es-modules/Series/DragNodesComposition.js +11 -8
- package/es-modules/Series/DrawPointUtilities.js +3 -1
- package/es-modules/Series/Dumbbell/DumbbellPoint.js +19 -6
- package/es-modules/Series/Dumbbell/DumbbellPointOptions.js +12 -0
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +33 -15
- package/es-modules/Series/Dumbbell/DumbbellSeriesOptions.js +12 -0
- package/es-modules/Series/ErrorBar/ErrorBarPoint.js +18 -0
- package/es-modules/Series/ErrorBar/ErrorBarPointOptions.js +12 -0
- package/es-modules/Series/ErrorBar/ErrorBarSeries.js +6 -9
- package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +15 -1
- package/es-modules/Series/ErrorBar/ErrorBarSeriesOptions.js +12 -0
- package/es-modules/Series/Flags/FlagsSeries.js +5 -14
- package/es-modules/Series/Flags/FlagsSeriesDefaults.js +2 -1
- package/es-modules/Series/FlowMap/FlowMapPoint.js +5 -3
- package/es-modules/Series/FlowMap/FlowMapSeries.js +17 -9
- package/es-modules/Series/Funnel/FunnelSeries.js +25 -26
- package/es-modules/Series/Funnel/FunnelSeriesDefaults.js +12 -0
- package/es-modules/Series/Funnel3D/Funnel3DSeries.js +7 -5
- package/es-modules/Series/Gantt/GanttSeries.js +2 -1
- package/es-modules/Series/Gauge/GaugeSeries.js +2 -2
- package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +9 -9
- package/es-modules/Series/GraphLayoutComposition.js +3 -3
- package/es-modules/Series/Heatmap/HeatmapPoint.js +6 -6
- package/es-modules/Series/Heatmap/HeatmapPointOptions.js +12 -0
- package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -13
- package/es-modules/Series/Heatmap/HeatmapSeriesOptions.js +12 -0
- package/es-modules/Series/Histogram/HistogramPoint.js +17 -0
- package/es-modules/Series/Histogram/HistogramPointOptions.js +12 -0
- package/es-modules/Series/Histogram/HistogramSeries.js +15 -3
- package/es-modules/Series/Histogram/HistogramSeriesOptions.js +12 -0
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -9
- package/es-modules/Series/InterpolationUtilities.js +5 -5
- package/es-modules/Series/Item/ItemPointOptions.js +14 -0
- package/es-modules/Series/Item/ItemSeries.js +18 -6
- package/es-modules/Series/Item/ItemSeriesOptions.js +14 -0
- package/es-modules/Series/Map/MapPoint.js +5 -3
- package/es-modules/Series/Map/MapSeries.js +6 -10
- package/es-modules/Series/Map/MapSeriesDefaults.js +11 -1
- package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +3 -3
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +14 -9
- package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +12 -0
- package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +18 -9
- package/es-modules/Series/NodesComposition.js +9 -10
- package/es-modules/Series/OHLC/OHLCPoint.js +2 -2
- package/es-modules/Series/OHLC/OHLCSeries.js +1 -0
- package/es-modules/Series/Organization/OrganizationPoint.js +3 -2
- package/es-modules/Series/Organization/OrganizationSeries.js +29 -7
- package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +11 -4
- package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +5 -5
- package/es-modules/Series/Pictorial/PictorialSeries.js +4 -2
- package/es-modules/Series/Pie/PieDataLabel.js +2 -2
- package/es-modules/Series/Pie/PiePoint.js +3 -4
- package/es-modules/Series/Pie/PieSeries.js +3 -2
- package/es-modules/Series/Pie3D/Pie3DSeries.js +8 -4
- package/es-modules/Series/PolarComposition.js +13 -14
- package/es-modules/Series/Polygon/PolygonSeries.js +2 -2
- package/es-modules/Series/Polygon/PolygonSeriesDefaults.js +20 -0
- package/es-modules/Series/RangeDataLabel.js +128 -0
- package/es-modules/Series/Sankey/SankeySeries.js +13 -7
- package/es-modules/Series/Sankey/SankeySeriesDefaults.js +2 -2
- package/es-modules/Series/Scatter/ScatterSeries.js +6 -5
- package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +2 -0
- package/es-modules/Series/SimulationSeriesUtilities.js +1 -2
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +4 -4
- package/es-modules/Series/Spline/SplineSeries.js +5 -5
- package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +8 -0
- package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +20 -12
- package/es-modules/Series/Tilemap/TilemapSeriesDefaults.js +2 -1
- package/es-modules/Series/Tilemap/TilemapShapes.js +2 -2
- package/es-modules/Series/Timeline/TimelinePoint.js +2 -2
- package/es-modules/Series/Timeline/TimelineSeries.js +13 -6
- package/es-modules/Series/TreeUtilities.js +16 -7
- package/es-modules/Series/Treegraph/TreegraphLink.js +2 -2
- package/es-modules/Series/Treegraph/TreegraphSeries.js +22 -13
- package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +14 -11
- package/es-modules/Series/Treemap/TreemapSeriesDefaults.js +22 -1
- package/es-modules/Series/VariablePie/VariablePieSeries.js +6 -4
- package/es-modules/Series/VariablePie/VariablePieSeriesDefaults.js +3 -2
- package/es-modules/Series/Variwide/VariwideSeries.js +2 -2
- package/es-modules/Series/Vector/VectorSeries.js +7 -9
- package/es-modules/Series/Venn/VennSeries.js +3 -4
- package/es-modules/Series/Waterfall/WaterfallSeries.js +3 -3
- package/es-modules/Series/Windbarb/WindbarbSeries.js +8 -10
- package/es-modules/Series/XRange/XRangeSeries.js +8 -8
- package/es-modules/Shared/TimeBase.js +13 -8
- package/es-modules/Shared/Utilities.js +9 -7
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -3
- package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +4 -3
- package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +1 -1
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -2
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +1 -2
- package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +4 -4
- package/es-modules/Stock/Navigator/Navigator.js +26 -26
- package/es-modules/Stock/Navigator/NavigatorDefaults.js +9 -2
- package/es-modules/Stock/Navigator/NavigatorSymbols.js +2 -1
- package/es-modules/Stock/Navigator/StandaloneNavigator.js +55 -14
- package/es-modules/Stock/RangeSelector/RangeSelector.js +15 -11
- package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +3 -3
- package/es-modules/Stock/Scrollbar/Scrollbar.js +8 -7
- package/es-modules/Stock/StockTools/StockToolbar.js +6 -6
- package/es-modules/Stock/StockTools/StockTools.js +2 -2
- package/es-modules/Stock/StockTools/StockToolsBindings.js +7 -7
- package/es-modules/Stock/StockTools/StockToolsGui.js +6 -4
- package/es-modules/masters/highcharts-3d.src.js +1 -1
- package/es-modules/masters/highcharts-autoload.src.js +1 -1
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +1 -1
- package/es-modules/masters/highcharts.src.js +13 -8
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
- package/es-modules/masters/i18n/fr-FR.src.js +1 -1
- package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
- package/es-modules/masters/i18n/nb-NO.src.js +1 -1
- package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
- package/es-modules/masters/i18n/zh-CN.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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/es-modules/masters/modules/annotations.src.js +1 -1
- 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 +1 -1
- 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/contour.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-sorting.src.js +1 -1
- package/es-modules/masters/modules/data-tools.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 +1 -1
- 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 +1 -1
- package/es-modules/masters/modules/exporting.src.js +1 -1
- package/es-modules/masters/modules/flowmap.src.js +2 -1
- package/es-modules/masters/modules/full-screen.src.js +1 -1
- 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 +1 -1
- package/es-modules/masters/modules/geoheatmap.src.js +1 -1
- 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 +1 -1
- package/es-modules/masters/modules/marker-clusters.src.js +1 -1
- package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
- package/es-modules/masters/modules/navigator.src.js +1 -1
- package/es-modules/masters/modules/networkgraph.src.js +1 -1
- package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
- package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/organization.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/pictorial.src.js +1 -1
- package/es-modules/masters/modules/pointandfigure.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/renko.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 +1 -1
- 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 +3 -2
- package/es-modules/masters/modules/textpath.src.js +1 -1
- package/es-modules/masters/modules/tiledwebmap.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/treegraph.src.js +1 -1
- package/es-modules/masters/modules/treegrid.src.js +1 -1
- 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 +1 -1
- package/es-modules/masters/standalone-navigator.src.js +1 -1
- package/es-modules/masters/themes/adaptive.src.js +1 -1
- package/es-modules/masters/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/high-contrast.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/es-modules/tsconfig.tsbuildinfo +1 -1
- package/esm/highcharts-3d.js +2 -2
- package/esm/highcharts-3d.src.js +78 -55
- package/esm/highcharts-autoload.js +2 -2
- package/esm/highcharts-autoload.src.js +22 -8
- package/esm/highcharts-gantt.js +2 -2
- package/esm/highcharts-gantt.src.js +1 -24
- package/esm/highcharts-more.js +2 -2
- package/esm/highcharts-more.src.js +1198 -981
- package/esm/highcharts.js +5 -5
- package/esm/highcharts.src.js +702 -515
- package/esm/highmaps.js +2 -2
- package/esm/highmaps.src.js +1 -24
- package/esm/highstock.js +2 -2
- package/esm/highstock.src.js +1 -24
- package/esm/i18n/fr-FR.js +2 -2
- package/esm/i18n/fr-FR.src.js +22 -8
- package/esm/i18n/nb-NO.js +2 -2
- package/esm/i18n/nb-NO.src.js +22 -8
- package/esm/i18n/zh-CN.js +2 -2
- package/esm/i18n/zh-CN.src.js +22 -8
- package/esm/indicators/acceleration-bands.js +2 -2
- package/esm/indicators/acceleration-bands.src.js +22 -8
- package/esm/indicators/accumulation-distribution.js +2 -2
- package/esm/indicators/accumulation-distribution.src.js +22 -8
- package/esm/indicators/ao.js +2 -2
- package/esm/indicators/ao.src.js +22 -8
- package/esm/indicators/apo.js +2 -2
- package/esm/indicators/apo.src.js +22 -8
- package/esm/indicators/aroon-oscillator.js +2 -2
- package/esm/indicators/aroon-oscillator.src.js +22 -8
- package/esm/indicators/aroon.js +2 -2
- package/esm/indicators/aroon.src.js +24 -10
- package/esm/indicators/atr.js +2 -2
- package/esm/indicators/atr.src.js +22 -8
- package/esm/indicators/bollinger-bands.js +2 -2
- package/esm/indicators/bollinger-bands.src.js +22 -8
- package/esm/indicators/cci.js +2 -2
- package/esm/indicators/cci.src.js +22 -8
- package/esm/indicators/chaikin.js +2 -2
- package/esm/indicators/chaikin.src.js +22 -8
- package/esm/indicators/cmf.js +2 -2
- package/esm/indicators/cmf.src.js +22 -8
- package/esm/indicators/cmo.js +2 -2
- package/esm/indicators/cmo.src.js +22 -8
- package/esm/indicators/dema.js +2 -2
- package/esm/indicators/dema.src.js +22 -8
- package/esm/indicators/disparity-index.js +2 -2
- package/esm/indicators/disparity-index.src.js +22 -8
- package/esm/indicators/dmi.js +2 -2
- package/esm/indicators/dmi.src.js +22 -8
- package/esm/indicators/dpo.js +2 -2
- package/esm/indicators/dpo.src.js +25 -10
- package/esm/indicators/ichimoku-kinko-hyo.js +2 -2
- package/esm/indicators/ichimoku-kinko-hyo.src.js +22 -8
- package/esm/indicators/indicators-all.js +2 -2
- package/esm/indicators/indicators-all.src.js +31 -17
- package/esm/indicators/indicators.js +2 -2
- package/esm/indicators/indicators.src.js +24 -10
- package/esm/indicators/keltner-channels.js +2 -2
- package/esm/indicators/keltner-channels.src.js +22 -8
- package/esm/indicators/klinger.js +2 -2
- package/esm/indicators/klinger.src.js +22 -8
- package/esm/indicators/macd.js +2 -2
- package/esm/indicators/macd.src.js +22 -8
- package/esm/indicators/mfi.js +2 -2
- package/esm/indicators/mfi.src.js +22 -8
- package/esm/indicators/momentum.js +2 -2
- package/esm/indicators/momentum.src.js +22 -8
- package/esm/indicators/natr.js +2 -2
- package/esm/indicators/natr.src.js +22 -8
- package/esm/indicators/obv.js +2 -2
- package/esm/indicators/obv.src.js +22 -8
- package/esm/indicators/pivot-points.js +2 -2
- package/esm/indicators/pivot-points.src.js +22 -8
- package/esm/indicators/ppo.js +2 -2
- package/esm/indicators/ppo.src.js +22 -8
- package/esm/indicators/price-channel.js +2 -2
- package/esm/indicators/price-channel.src.js +22 -8
- package/esm/indicators/price-envelopes.js +2 -2
- package/esm/indicators/price-envelopes.src.js +22 -8
- package/esm/indicators/psar.js +2 -2
- package/esm/indicators/psar.src.js +22 -8
- package/esm/indicators/regressions.js +2 -2
- package/esm/indicators/regressions.src.js +22 -8
- package/esm/indicators/roc.js +2 -2
- package/esm/indicators/roc.src.js +22 -8
- package/esm/indicators/rsi.js +2 -2
- package/esm/indicators/rsi.src.js +23 -9
- package/esm/indicators/slow-stochastic.js +2 -2
- package/esm/indicators/slow-stochastic.src.js +22 -8
- package/esm/indicators/stochastic.js +2 -2
- package/esm/indicators/stochastic.src.js +22 -8
- package/esm/indicators/supertrend.js +2 -2
- package/esm/indicators/supertrend.src.js +22 -8
- package/esm/indicators/tema.js +2 -2
- package/esm/indicators/tema.src.js +22 -8
- package/esm/indicators/trendline.js +2 -2
- package/esm/indicators/trendline.src.js +22 -8
- package/esm/indicators/trix.js +2 -2
- package/esm/indicators/trix.src.js +22 -8
- package/esm/indicators/volume-by-price.js +2 -2
- package/esm/indicators/volume-by-price.src.js +23 -10
- package/esm/indicators/vwap.js +2 -2
- package/esm/indicators/vwap.src.js +22 -8
- package/esm/indicators/williams-r.js +2 -2
- package/esm/indicators/williams-r.src.js +22 -8
- package/esm/indicators/wma.js +2 -2
- package/esm/indicators/wma.src.js +22 -8
- package/esm/indicators/zigzag.js +2 -2
- package/esm/indicators/zigzag.src.js +22 -8
- package/esm/modules/accessibility.js +2 -2
- package/esm/modules/accessibility.src.js +564 -92
- package/esm/modules/annotations-advanced.js +11 -11
- package/esm/modules/annotations-advanced.src.js +224 -162
- package/esm/modules/annotations.js +11 -11
- package/esm/modules/annotations.src.js +184 -144
- package/esm/modules/arc-diagram.js +2 -2
- package/esm/modules/arc-diagram.src.js +37 -22
- package/esm/modules/arrow-symbols.js +3 -3
- package/esm/modules/arrow-symbols.src.js +22 -8
- package/esm/modules/boost-canvas.js +2 -2
- package/esm/modules/boost-canvas.src.js +60 -30
- package/esm/modules/boost.js +2 -2
- package/esm/modules/boost.src.js +72 -29
- package/esm/modules/broken-axis.js +2 -2
- package/esm/modules/broken-axis.src.js +27 -12
- package/esm/modules/bullet.js +2 -2
- package/esm/modules/bullet.src.js +38 -17
- package/esm/modules/coloraxis.js +2 -2
- package/esm/modules/coloraxis.src.js +47 -21
- package/esm/modules/contour.js +3 -3
- package/esm/modules/contour.src.js +46 -13
- package/esm/modules/current-date-indicator.js +2 -2
- package/esm/modules/current-date-indicator.src.js +22 -8
- package/esm/modules/cylinder.js +2 -2
- package/esm/modules/cylinder.src.js +46 -28
- package/esm/modules/data-sorting.js +2 -2
- package/esm/modules/data-sorting.src.js +22 -8
- package/esm/modules/data-tools.js +2 -2
- package/esm/modules/data-tools.src.js +44 -13
- package/esm/modules/data.js +4 -4
- package/esm/modules/data.src.js +23 -9
- package/esm/modules/datagrouping.js +2 -2
- package/esm/modules/datagrouping.src.js +28 -13
- package/esm/modules/debugger.js +2 -2
- package/esm/modules/debugger.src.js +22 -8
- package/esm/modules/dependency-wheel.js +2 -2
- package/esm/modules/dependency-wheel.src.js +428 -17
- package/esm/modules/dotplot.js +2 -2
- package/esm/modules/dotplot.src.js +27 -11
- package/esm/modules/drag-panes.js +2 -2
- package/esm/modules/drag-panes.src.js +22 -8
- package/esm/modules/draggable-points.js +2 -2
- package/esm/modules/draggable-points.src.js +24 -12
- package/esm/modules/drilldown.js +2 -2
- package/esm/modules/drilldown.src.js +38 -25
- package/esm/modules/dumbbell.js +2 -2
- package/esm/modules/dumbbell.src.js +72 -27
- package/esm/modules/export-data.js +2 -2
- package/esm/modules/export-data.src.js +42 -23
- package/esm/modules/exporting.js +2 -2
- package/esm/modules/exporting.src.js +83 -37
- package/esm/modules/flowmap.js +3 -2
- package/esm/modules/flowmap.src.js +43 -18
- package/esm/modules/full-screen.js +2 -2
- package/esm/modules/full-screen.src.js +22 -8
- package/esm/modules/funnel.js +2 -2
- package/esm/modules/funnel.src.js +73 -42
- package/esm/modules/funnel3d.js +2 -2
- package/esm/modules/funnel3d.src.js +35 -20
- package/esm/modules/gantt.js +2 -2
- package/esm/modules/gantt.src.js +542 -100
- package/esm/modules/geoheatmap.js +2 -2
- package/esm/modules/geoheatmap.src.js +35 -21
- package/esm/modules/grid-axis.js +2 -2
- package/esm/modules/grid-axis.src.js +33 -12
- package/esm/modules/heatmap.js +2 -2
- package/esm/modules/heatmap.src.js +50 -33
- package/esm/modules/heikinashi.js +2 -2
- package/esm/modules/heikinashi.src.js +22 -8
- package/esm/modules/histogram-bellcurve.js +2 -2
- package/esm/modules/histogram-bellcurve.src.js +56 -25
- package/esm/modules/hollowcandlestick.js +2 -2
- package/esm/modules/hollowcandlestick.src.js +31 -17
- package/esm/modules/item-series.js +2 -2
- package/esm/modules/item-series.src.js +72 -13
- package/esm/modules/lollipop.js +2 -2
- package/esm/modules/lollipop.src.js +22 -8
- package/esm/modules/map.js +2 -2
- package/esm/modules/map.src.js +148 -91
- package/esm/modules/marker-clusters.js +2 -2
- package/esm/modules/marker-clusters.src.js +25 -13
- package/esm/modules/mouse-wheel-zoom.js +2 -2
- package/esm/modules/mouse-wheel-zoom.src.js +54 -13
- package/esm/modules/navigator.js +2 -2
- package/esm/modules/navigator.src.js +534 -74
- package/esm/modules/networkgraph.js +2 -2
- package/esm/modules/networkgraph.src.js +87 -46
- package/esm/modules/no-data-to-display.js +2 -2
- package/esm/modules/no-data-to-display.src.js +22 -8
- package/esm/modules/non-cartesian-zoom.js +2 -2
- package/esm/modules/non-cartesian-zoom.src.js +22 -8
- package/esm/modules/offline-exporting.js +2 -2
- package/esm/modules/offline-exporting.src.js +53 -12
- package/esm/modules/organization.js +4 -2
- package/esm/modules/organization.src.js +63 -19
- package/esm/modules/parallel-coordinates.js +2 -2
- package/esm/modules/parallel-coordinates.src.js +26 -9
- package/esm/modules/pareto.js +2 -2
- package/esm/modules/pareto.src.js +31 -16
- package/esm/modules/pathfinder.js +2 -2
- package/esm/modules/pathfinder.src.js +28 -13
- package/esm/modules/pattern-fill.js +2 -2
- package/esm/modules/pattern-fill.src.js +28 -12
- package/esm/modules/pictorial.js +2 -2
- package/esm/modules/pictorial.src.js +36 -19
- package/esm/modules/pointandfigure.js +2 -2
- package/esm/modules/pointandfigure.src.js +26 -11
- package/esm/modules/price-indicator.js +2 -2
- package/esm/modules/price-indicator.src.js +26 -11
- package/esm/modules/pyramid3d.js +2 -2
- package/esm/modules/pyramid3d.src.js +22 -8
- package/esm/modules/renko.js +2 -2
- package/esm/modules/renko.src.js +22 -8
- package/esm/modules/sankey.js +2 -2
- package/esm/modules/sankey.src.js +59 -31
- package/esm/modules/series-label.js +2 -2
- package/esm/modules/series-label.src.js +31 -18
- package/esm/modules/series-on-point.js +2 -2
- package/esm/modules/series-on-point.src.js +23 -9
- package/esm/modules/solid-gauge.js +2 -2
- package/esm/modules/solid-gauge.src.js +40 -20
- package/esm/modules/sonification.js +2 -2
- package/esm/modules/sonification.src.js +45 -30
- package/esm/modules/static-scale.js +2 -2
- package/esm/modules/static-scale.src.js +22 -8
- package/esm/modules/stock-tools.js +3 -3
- package/esm/modules/stock-tools.src.js +73 -27
- package/esm/modules/stock.js +2 -2
- package/esm/modules/stock.src.js +554 -122
- package/esm/modules/streamgraph.js +2 -2
- package/esm/modules/streamgraph.src.js +22 -8
- package/esm/modules/sunburst.js +2 -2
- package/esm/modules/sunburst.src.js +110 -45
- package/esm/modules/textpath.js +2 -2
- package/esm/modules/textpath.src.js +22 -8
- package/esm/modules/tiledwebmap.js +3 -3
- package/esm/modules/tiledwebmap.src.js +44 -19
- package/esm/modules/tilemap.js +2 -2
- package/esm/modules/tilemap.src.js +27 -12
- package/esm/modules/timeline.js +2 -2
- package/esm/modules/timeline.src.js +35 -14
- package/esm/modules/treegraph.js +2 -2
- package/esm/modules/treegraph.src.js +59 -27
- package/esm/modules/treegrid.js +2 -2
- package/esm/modules/treegrid.src.js +58 -27
- package/esm/modules/treemap.js +2 -2
- package/esm/modules/treemap.src.js +89 -36
- package/esm/modules/variable-pie.js +2 -2
- package/esm/modules/variable-pie.src.js +30 -13
- package/esm/modules/variwide.js +2 -2
- package/esm/modules/variwide.src.js +23 -9
- package/esm/modules/vector.js +2 -2
- package/esm/modules/vector.src.js +28 -16
- package/esm/modules/venn.js +2 -2
- package/esm/modules/venn.src.js +28 -13
- package/esm/modules/windbarb.js +2 -2
- package/esm/modules/windbarb.src.js +29 -17
- package/esm/modules/wordcloud.js +2 -2
- package/esm/modules/wordcloud.src.js +25 -9
- package/esm/modules/xrange.js +2 -2
- package/esm/modules/xrange.src.js +29 -15
- package/esm/standalone-navigator.js +5 -5
- package/esm/standalone-navigator.src.js +808 -570
- package/esm/themes/adaptive.js +3 -3
- package/esm/themes/adaptive.src.js +22 -8
- package/esm/themes/avocado.js +2 -2
- package/esm/themes/avocado.src.js +22 -8
- package/esm/themes/dark-unica.js +2 -2
- package/esm/themes/dark-unica.src.js +22 -8
- package/esm/themes/grid-light.js +2 -2
- package/esm/themes/grid-light.src.js +22 -8
- package/esm/themes/high-contrast.js +2 -2
- package/esm/themes/high-contrast.src.js +22 -8
- package/esm/themes/sand-signika.js +2 -2
- package/esm/themes/sand-signika.src.js +22 -8
- package/esm/themes/sunset.js +2 -2
- package/esm/themes/sunset.src.js +22 -8
- package/highcharts-3d.js +2 -2
- package/highcharts-3d.src.js +116 -92
- package/highcharts-autoload.d.ts +15 -5
- package/highcharts-autoload.js +4 -4
- package/highcharts-autoload.src.d.ts +15 -5
- package/highcharts-autoload.src.js +724 -499
- package/highcharts-gantt.js +4 -4
- package/highcharts-gantt.src.js +851 -590
- package/highcharts-more.d.ts +7 -3
- package/highcharts-more.js +2 -2
- package/highcharts-more.src.d.ts +7 -3
- package/highcharts-more.src.js +1313 -1095
- package/highcharts.d.ts +34795 -25647
- package/highcharts.js +4 -4
- package/highcharts.src.d.ts +34795 -25647
- package/highcharts.src.js +723 -498
- package/highmaps.js +4 -4
- package/highmaps.src.js +863 -583
- package/highstock.js +4 -4
- package/highstock.src.js +899 -619
- package/i18n/fr-FR.js +2 -2
- package/i18n/fr-FR.src.js +32 -16
- package/i18n/nb-NO.js +2 -2
- package/i18n/nb-NO.src.js +32 -16
- package/i18n/zh-CN.js +2 -2
- package/i18n/zh-CN.src.js +32 -16
- package/indicators/acceleration-bands.js +2 -2
- package/indicators/acceleration-bands.src.js +31 -16
- package/indicators/accumulation-distribution.js +2 -2
- package/indicators/accumulation-distribution.src.js +31 -16
- package/indicators/ao.js +2 -2
- package/indicators/ao.src.js +31 -16
- package/indicators/apo.js +2 -2
- package/indicators/apo.src.js +31 -16
- package/indicators/aroon-oscillator.js +2 -2
- package/indicators/aroon-oscillator.src.js +31 -16
- package/indicators/aroon.js +2 -2
- package/indicators/aroon.src.js +33 -18
- package/indicators/atr.js +2 -2
- package/indicators/atr.src.js +31 -16
- package/indicators/bollinger-bands.js +2 -2
- package/indicators/bollinger-bands.src.js +31 -16
- package/indicators/cci.js +2 -2
- package/indicators/cci.src.js +31 -16
- package/indicators/chaikin.js +2 -2
- package/indicators/chaikin.src.js +31 -16
- package/indicators/cmf.js +2 -2
- package/indicators/cmf.src.js +31 -16
- package/indicators/cmo.js +2 -2
- package/indicators/cmo.src.js +31 -16
- package/indicators/dema.js +2 -2
- package/indicators/dema.src.js +31 -16
- package/indicators/disparity-index.js +2 -2
- package/indicators/disparity-index.src.js +31 -16
- package/indicators/dmi.js +2 -2
- package/indicators/dmi.src.js +31 -16
- package/indicators/dpo.js +2 -2
- package/indicators/dpo.src.js +34 -18
- package/indicators/ichimoku-kinko-hyo.js +2 -2
- package/indicators/ichimoku-kinko-hyo.src.js +41 -26
- package/indicators/indicators-all.js +2 -2
- package/indicators/indicators-all.src.js +52 -37
- package/indicators/indicators.js +2 -2
- package/indicators/indicators.src.js +39 -24
- package/indicators/keltner-channels.js +2 -2
- package/indicators/keltner-channels.src.js +31 -16
- package/indicators/klinger.js +2 -2
- package/indicators/klinger.src.js +31 -16
- package/indicators/macd.js +2 -2
- package/indicators/macd.src.js +31 -16
- package/indicators/mfi.js +2 -2
- package/indicators/mfi.src.js +31 -16
- package/indicators/momentum.js +2 -2
- package/indicators/momentum.src.js +31 -16
- package/indicators/natr.js +2 -2
- package/indicators/natr.src.js +31 -16
- package/indicators/obv.js +2 -2
- package/indicators/obv.src.js +31 -16
- package/indicators/pivot-points.js +2 -2
- package/indicators/pivot-points.src.js +31 -16
- package/indicators/ppo.js +2 -2
- package/indicators/ppo.src.js +31 -16
- package/indicators/price-channel.js +2 -2
- package/indicators/price-channel.src.js +31 -16
- package/indicators/price-envelopes.js +2 -2
- package/indicators/price-envelopes.src.js +31 -16
- package/indicators/psar.js +2 -2
- package/indicators/psar.src.js +31 -16
- package/indicators/regressions.js +2 -2
- package/indicators/regressions.src.js +31 -16
- package/indicators/roc.js +2 -2
- package/indicators/roc.src.js +31 -16
- package/indicators/rsi.js +2 -2
- package/indicators/rsi.src.js +32 -17
- package/indicators/slow-stochastic.js +2 -2
- package/indicators/slow-stochastic.src.js +31 -16
- package/indicators/stochastic.js +2 -2
- package/indicators/stochastic.src.js +31 -16
- package/indicators/supertrend.js +2 -2
- package/indicators/supertrend.src.js +31 -16
- package/indicators/tema.js +2 -2
- package/indicators/tema.src.js +31 -16
- package/indicators/trendline.js +2 -2
- package/indicators/trendline.src.js +31 -16
- package/indicators/trix.js +2 -2
- package/indicators/trix.src.js +31 -16
- package/indicators/volume-by-price.js +2 -2
- package/indicators/volume-by-price.src.js +32 -18
- package/indicators/vwap.js +2 -2
- package/indicators/vwap.src.js +31 -16
- package/indicators/williams-r.js +2 -2
- package/indicators/williams-r.src.js +31 -16
- package/indicators/wma.js +2 -2
- package/indicators/wma.src.js +31 -16
- package/indicators/zigzag.js +2 -2
- package/indicators/zigzag.src.js +31 -16
- package/modules/accessibility.d.ts +47 -0
- package/modules/accessibility.js +2 -2
- package/modules/accessibility.src.d.ts +47 -0
- package/modules/accessibility.src.js +603 -130
- package/modules/annotations-advanced.js +11 -11
- package/modules/annotations-advanced.src.js +246 -183
- package/modules/annotations.js +11 -11
- package/modules/annotations.src.js +206 -165
- package/modules/arc-diagram.js +2 -2
- package/modules/arc-diagram.src.js +58 -42
- package/modules/arrow-symbols.js +2 -2
- package/modules/arrow-symbols.src.js +28 -13
- package/modules/boost-canvas.js +2 -2
- package/modules/boost-canvas.src.js +69 -38
- package/modules/boost.js +2 -2
- package/modules/boost.src.js +81 -37
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.src.js +36 -20
- package/modules/bullet.js +2 -2
- package/modules/bullet.src.js +50 -28
- package/modules/coloraxis.js +2 -2
- package/modules/coloraxis.src.js +65 -38
- package/modules/contour.js +5 -5
- package/modules/contour.src.js +91 -44
- package/modules/current-date-indicator.js +2 -2
- package/modules/current-date-indicator.src.js +28 -13
- package/modules/cylinder.js +2 -2
- package/modules/cylinder.src.js +67 -48
- package/modules/data-sorting.js +2 -2
- package/modules/data-sorting.src.js +28 -13
- package/modules/data-tools.js +2 -2
- package/modules/data-tools.src.js +50 -18
- package/modules/data.js +2 -2
- package/modules/data.src.js +50 -35
- package/modules/datagrouping.js +2 -2
- package/modules/datagrouping.src.js +42 -26
- package/modules/debugger.js +2 -2
- package/modules/debugger.src.js +28 -13
- package/modules/dependency-wheel.d.ts +7 -1
- package/modules/dependency-wheel.js +2 -2
- package/modules/dependency-wheel.src.d.ts +7 -1
- package/modules/dependency-wheel.src.js +440 -28
- package/modules/dotplot.js +2 -2
- package/modules/dotplot.src.js +36 -19
- package/modules/drag-panes.js +2 -2
- package/modules/drag-panes.src.js +28 -13
- package/modules/draggable-points.js +2 -2
- package/modules/draggable-points.src.js +30 -17
- package/modules/drilldown.js +2 -2
- package/modules/drilldown.src.js +49 -35
- package/modules/dumbbell.js +2 -2
- package/modules/dumbbell.src.js +86 -40
- package/modules/export-data.d.ts +66 -1
- package/modules/export-data.js +2 -2
- package/modules/export-data.src.d.ts +66 -1
- package/modules/export-data.src.js +56 -36
- package/modules/exporting.d.ts +0 -103
- package/modules/exporting.js +2 -2
- package/modules/exporting.src.d.ts +0 -103
- package/modules/exporting.src.js +97 -50
- package/modules/flowmap.js +3 -2
- package/modules/flowmap.src.js +52 -26
- package/modules/full-screen.js +2 -2
- package/modules/full-screen.src.js +31 -16
- package/modules/funnel.d.ts +3 -3
- package/modules/funnel.js +2 -2
- package/modules/funnel.src.d.ts +3 -3
- package/modules/funnel.src.js +82 -50
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.src.js +56 -40
- package/modules/gantt.d.ts +47 -0
- package/modules/gantt.js +8 -8
- package/modules/gantt.src.d.ts +47 -0
- package/modules/gantt.src.js +602 -156
- package/modules/geoheatmap.d.ts +13 -12
- package/modules/geoheatmap.js +2 -2
- package/modules/geoheatmap.src.d.ts +13 -12
- package/modules/geoheatmap.src.js +44 -29
- package/modules/grid-axis.js +2 -2
- package/modules/grid-axis.src.js +42 -20
- package/modules/heatmap.d.ts +0 -12
- package/modules/heatmap.js +4 -4
- package/modules/heatmap.src.d.ts +0 -12
- package/modules/heatmap.src.js +102 -71
- package/modules/heikinashi.js +2 -2
- package/modules/heikinashi.src.js +31 -16
- package/modules/histogram-bellcurve.js +2 -2
- package/modules/histogram-bellcurve.src.js +70 -38
- package/modules/hollowcandlestick.js +2 -2
- package/modules/hollowcandlestick.src.js +45 -30
- package/modules/item-series.js +2 -2
- package/modules/item-series.src.js +81 -21
- package/modules/lollipop.js +2 -2
- package/modules/lollipop.src.js +36 -21
- package/modules/map.d.ts +0 -20
- package/modules/map.js +4 -4
- package/modules/map.src.d.ts +0 -20
- package/modules/map.src.js +212 -140
- package/modules/marker-clusters.js +2 -2
- package/modules/marker-clusters.src.js +31 -18
- package/modules/mouse-wheel-zoom.js +2 -2
- package/modules/mouse-wheel-zoom.src.js +60 -18
- package/modules/navigator.d.ts +47 -0
- package/modules/navigator.js +2 -2
- package/modules/navigator.src.d.ts +47 -0
- package/modules/navigator.src.js +556 -95
- package/modules/networkgraph.js +2 -2
- package/modules/networkgraph.src.js +99 -57
- package/modules/no-data-to-display.js +2 -2
- package/modules/no-data-to-display.src.js +31 -16
- package/modules/non-cartesian-zoom.js +2 -2
- package/modules/non-cartesian-zoom.src.js +28 -13
- package/modules/offline-exporting.js +2 -2
- package/modules/offline-exporting.src.js +67 -25
- package/modules/organization.js +4 -2
- package/modules/organization.src.js +75 -30
- package/modules/parallel-coordinates.js +2 -2
- package/modules/parallel-coordinates.src.js +37 -19
- package/modules/pareto.js +2 -2
- package/modules/pareto.src.js +45 -29
- package/modules/pathfinder.js +2 -2
- package/modules/pathfinder.src.js +37 -21
- package/modules/pattern-fill.js +2 -2
- package/modules/pattern-fill.src.js +34 -17
- package/modules/pictorial.js +2 -2
- package/modules/pictorial.src.js +62 -43
- package/modules/pointandfigure.js +2 -2
- package/modules/pointandfigure.src.js +35 -19
- package/modules/price-indicator.js +2 -2
- package/modules/price-indicator.src.js +32 -16
- package/modules/pyramid3d.js +2 -2
- package/modules/pyramid3d.src.js +31 -16
- package/modules/renko.js +2 -2
- package/modules/renko.src.js +34 -19
- package/modules/sankey.js +2 -2
- package/modules/sankey.src.js +80 -51
- package/modules/series-label.js +2 -2
- package/modules/series-label.src.js +42 -28
- package/modules/series-on-point.js +2 -2
- package/modules/series-on-point.src.js +40 -25
- package/modules/solid-gauge.d.ts +3 -3
- package/modules/solid-gauge.js +2 -2
- package/modules/solid-gauge.src.d.ts +3 -3
- package/modules/solid-gauge.src.js +54 -33
- package/modules/sonification.js +2 -2
- package/modules/sonification.src.js +56 -40
- package/modules/static-scale.js +2 -2
- package/modules/static-scale.src.js +28 -13
- package/modules/stock-tools.js +3 -3
- package/modules/stock-tools.src.js +90 -43
- package/modules/stock.d.ts +47 -0
- package/modules/stock.js +6 -6
- package/modules/stock.src.d.ts +47 -0
- package/modules/stock.src.js +650 -185
- package/modules/streamgraph.js +2 -2
- package/modules/streamgraph.src.js +31 -16
- package/modules/sunburst.js +2 -2
- package/modules/sunburst.src.js +137 -71
- package/modules/textpath.js +2 -2
- package/modules/textpath.src.js +28 -13
- package/modules/tiledwebmap.js +3 -3
- package/modules/tiledwebmap.src.js +65 -32
- package/modules/tilemap.js +2 -2
- package/modules/tilemap.src.js +41 -25
- package/modules/timeline.js +2 -2
- package/modules/timeline.src.js +47 -25
- package/modules/treegraph.js +2 -2
- package/modules/treegraph.src.js +83 -50
- package/modules/treegrid.js +2 -2
- package/modules/treegrid.src.js +76 -44
- package/modules/treemap.js +2 -2
- package/modules/treemap.src.js +116 -62
- package/modules/variable-pie.js +2 -2
- package/modules/variable-pie.src.js +39 -21
- package/modules/variwide.js +2 -2
- package/modules/variwide.src.js +32 -17
- package/modules/vector.js +2 -2
- package/modules/vector.src.js +37 -24
- package/modules/venn.js +2 -2
- package/modules/venn.src.js +42 -26
- package/modules/windbarb.js +2 -2
- package/modules/windbarb.src.js +51 -38
- package/modules/wordcloud.js +2 -2
- package/modules/wordcloud.src.js +34 -17
- package/modules/xrange.js +2 -2
- package/modules/xrange.src.js +43 -28
- package/options/abands.d.ts +722 -83
- package/options/abands.src.d.ts +722 -83
- package/options/ad.d.ts +381 -26
- package/options/ad.src.d.ts +381 -26
- package/options/ao.d.ts +744 -70
- package/options/ao.src.d.ts +744 -70
- package/options/apo.d.ts +381 -26
- package/options/apo.src.d.ts +381 -26
- package/options/arcdiagram.d.ts +80 -534
- package/options/arcdiagram.src.d.ts +80 -534
- package/options/area.d.ts +432 -129
- package/options/area.src.d.ts +432 -129
- package/options/arearange.d.ts +46 -4
- package/options/arearange.src.d.ts +46 -4
- package/options/areaspline.d.ts +141 -866
- package/options/areaspline.src.d.ts +141 -866
- package/options/areasplinerange.d.ts +221 -871
- package/options/areasplinerange.src.d.ts +221 -871
- package/options/aroon.d.ts +432 -124
- package/options/aroon.src.d.ts +432 -124
- package/options/aroonoscillator.d.ts +127 -689
- package/options/aroonoscillator.src.d.ts +127 -689
- package/options/atr.d.ts +381 -71
- package/options/atr.src.d.ts +381 -71
- package/options/bar.d.ts +103 -12
- package/options/bar.src.d.ts +103 -12
- package/options/bb.d.ts +87 -762
- package/options/bb.src.d.ts +87 -762
- package/options/bellcurve.d.ts +87 -364
- package/options/bellcurve.src.d.ts +87 -364
- package/options/boxplot.d.ts +82 -13
- package/options/boxplot.src.d.ts +82 -13
- package/options/bubble.d.ts +83 -874
- package/options/bubble.src.d.ts +83 -874
- package/options/bullet.d.ts +354 -717
- package/options/bullet.src.d.ts +354 -717
- package/options/candlestick.d.ts +99 -1214
- package/options/candlestick.src.d.ts +99 -1214
- package/options/cci.d.ts +381 -26
- package/options/cci.src.d.ts +381 -26
- package/options/chaikin.d.ts +728 -83
- package/options/chaikin.src.d.ts +728 -83
- package/options/cmf.d.ts +381 -26
- package/options/cmf.src.d.ts +381 -26
- package/options/cmo.d.ts +730 -79
- package/options/cmo.src.d.ts +730 -79
- package/options/column.d.ts +1265 -99
- package/options/column.src.d.ts +1265 -99
- package/options/columnpyramid.d.ts +102 -1158
- package/options/columnpyramid.src.d.ts +102 -1158
- package/options/columnrange.d.ts +952 -95
- package/options/columnrange.src.d.ts +952 -95
- package/options/contour.d.ts +31 -443
- package/options/contour.src.d.ts +31 -443
- package/options/cylinder.d.ts +100 -12
- package/options/cylinder.src.d.ts +100 -12
- package/options/dema.d.ts +80 -736
- package/options/dema.src.d.ts +80 -736
- package/options/dependencywheel.d.ts +599 -218
- package/options/dependencywheel.src.d.ts +599 -218
- package/options/disparityindex.d.ts +84 -365
- package/options/disparityindex.src.d.ts +84 -365
- package/options/dmi.d.ts +86 -775
- package/options/dmi.src.d.ts +86 -775
- package/options/dpo.d.ts +83 -365
- package/options/dpo.src.d.ts +83 -365
- package/options/dumbbell.d.ts +27 -4
- package/options/dumbbell.src.d.ts +27 -4
- package/options/ema.d.ts +81 -703
- package/options/ema.src.d.ts +81 -703
- package/options/errorbar.d.ts +91 -1161
- package/options/errorbar.src.d.ts +91 -1161
- package/options/flags.d.ts +98 -1192
- package/options/flags.src.d.ts +98 -1192
- package/options/flowmap.d.ts +48 -373
- package/options/flowmap.src.d.ts +48 -373
- package/options/funnel.d.ts +40 -3
- package/options/funnel.src.d.ts +40 -3
- package/options/gantt.d.ts +37 -40
- package/options/gantt.src.d.ts +37 -40
- package/options/gauge.d.ts +398 -472
- package/options/gauge.src.d.ts +398 -472
- package/options/geoheatmap.d.ts +462 -63
- package/options/geoheatmap.src.d.ts +462 -63
- package/options/heatmap.d.ts +31 -380
- package/options/heatmap.src.d.ts +31 -380
- package/options/heikinashi.d.ts +20 -2
- package/options/heikinashi.src.d.ts +20 -2
- package/options/hlc.d.ts +20 -2
- package/options/hlc.src.d.ts +20 -2
- package/options/ikh.d.ts +750 -103
- package/options/ikh.src.d.ts +750 -103
- package/options/item.d.ts +34 -74
- package/options/item.src.d.ts +34 -74
- package/options/keltnerchannels.d.ts +87 -708
- package/options/keltnerchannels.src.d.ts +87 -708
- package/options/klinger.d.ts +34 -365
- package/options/klinger.src.d.ts +34 -365
- package/options/line.d.ts +151 -851
- package/options/line.src.d.ts +151 -851
- package/options/linearregression.d.ts +960 -85
- package/options/linearregression.src.d.ts +960 -85
- package/options/linearregressionangle.d.ts +96 -699
- package/options/linearregressionangle.src.d.ts +96 -699
- package/options/linearregressionintercept.d.ts +381 -26
- package/options/linearregressionintercept.src.d.ts +381 -26
- package/options/linearregressionslope.d.ts +381 -26
- package/options/linearregressionslope.src.d.ts +381 -26
- package/options/lollipop.d.ts +214 -851
- package/options/lollipop.src.d.ts +214 -851
- package/options/macd.d.ts +386 -83
- package/options/macd.src.d.ts +386 -83
- package/options/map.d.ts +470 -36
- package/options/map.src.d.ts +470 -36
- package/options/mapbubble.d.ts +43 -532
- package/options/mapbubble.src.d.ts +43 -532
- package/options/mapline.d.ts +135 -58
- package/options/mapline.src.d.ts +135 -58
- package/options/mappoint.d.ts +205 -283
- package/options/mappoint.src.d.ts +205 -283
- package/options/mfi.d.ts +772 -82
- package/options/mfi.src.d.ts +772 -82
- package/options/momentum.d.ts +381 -71
- package/options/momentum.src.d.ts +381 -71
- package/options/natr.d.ts +776 -75
- package/options/natr.src.d.ts +776 -75
- package/options/networkgraph.d.ts +184 -207
- package/options/networkgraph.src.d.ts +184 -207
- package/options/obv.d.ts +426 -26
- package/options/obv.src.d.ts +426 -26
- package/options/ohlc.d.ts +77 -14
- package/options/ohlc.src.d.ts +77 -14
- package/options/packedbubble.d.ts +76 -696
- package/options/packedbubble.src.d.ts +76 -696
- package/options/pareto.d.ts +28 -364
- package/options/pareto.src.d.ts +28 -364
- package/options/pc.d.ts +724 -85
- package/options/pc.src.d.ts +724 -85
- package/options/pictorial.d.ts +1093 -58
- package/options/pictorial.src.d.ts +1093 -58
- package/options/pie.d.ts +595 -129
- package/options/pie.src.d.ts +595 -129
- package/options/pivotpoints.d.ts +34 -365
- package/options/pivotpoints.src.d.ts +34 -365
- package/options/pointandfigure.d.ts +10 -50
- package/options/pointandfigure.src.d.ts +10 -50
- package/options/polygon.d.ts +803 -74
- package/options/polygon.src.d.ts +803 -74
- package/options/ppo.d.ts +34 -365
- package/options/ppo.src.d.ts +34 -365
- package/options/priceenvelopes.d.ts +93 -719
- package/options/priceenvelopes.src.d.ts +93 -719
- package/options/psar.d.ts +34 -365
- package/options/psar.src.d.ts +34 -365
- package/options/pyramid.d.ts +35 -3
- package/options/pyramid.src.d.ts +35 -3
- package/options/renko.d.ts +25 -2
- package/options/renko.src.d.ts +25 -2
- package/options/roc.d.ts +78 -712
- package/options/roc.src.d.ts +78 -712
- package/options/rsi.d.ts +34 -365
- package/options/rsi.src.d.ts +34 -365
- package/options/sankey.d.ts +27 -5
- package/options/sankey.src.d.ts +27 -5
- package/options/scatter.d.ts +896 -290
- package/options/scatter.src.d.ts +896 -290
- package/options/series.d.ts +938 -83
- package/options/series.src.d.ts +938 -83
- package/options/slowstochastic.d.ts +381 -26
- package/options/slowstochastic.src.d.ts +381 -26
- package/options/sma.d.ts +729 -79
- package/options/sma.src.d.ts +729 -79
- package/options/solidgauge.d.ts +882 -105
- package/options/solidgauge.src.d.ts +882 -105
- package/options/spline.d.ts +389 -90
- package/options/spline.src.d.ts +389 -90
- package/options/stochastic.d.ts +83 -716
- package/options/stochastic.src.d.ts +83 -716
- package/options/streamgraph.d.ts +97 -364
- package/options/streamgraph.src.d.ts +97 -364
- package/options/sunburst.d.ts +87 -19
- package/options/sunburst.src.d.ts +87 -19
- package/options/supertrend.d.ts +77 -749
- package/options/supertrend.src.d.ts +77 -749
- package/options/tema.d.ts +83 -365
- package/options/tema.src.d.ts +83 -365
- package/options/tiledwebmap.d.ts +13 -72
- package/options/tiledwebmap.src.d.ts +13 -72
- package/options/tilemap.d.ts +372 -533
- package/options/tilemap.src.d.ts +372 -533
- package/options/timeline.d.ts +49 -154
- package/options/timeline.src.d.ts +49 -154
- package/options/treegraph.d.ts +174 -696
- package/options/treegraph.src.d.ts +174 -696
- package/options/treemap.d.ts +468 -1079
- package/options/treemap.src.d.ts +468 -1079
- package/options/trendline.d.ts +381 -26
- package/options/trendline.src.d.ts +381 -26
- package/options/trix.d.ts +712 -82
- package/options/trix.src.d.ts +712 -82
- package/options/variablepie.d.ts +130 -587
- package/options/variablepie.src.d.ts +130 -587
- package/options/variwide.d.ts +1123 -94
- package/options/variwide.src.d.ts +1123 -94
- package/options/vbp.d.ts +57 -383
- package/options/vbp.src.d.ts +57 -383
- package/options/vector.d.ts +22 -58
- package/options/vector.src.d.ts +22 -58
- package/options/venn.d.ts +32 -78
- package/options/venn.src.d.ts +32 -78
- package/options/vwap.d.ts +122 -703
- package/options/vwap.src.d.ts +122 -703
- package/options/waterfall.d.ts +139 -1150
- package/options/waterfall.src.d.ts +139 -1150
- package/options/williamsr.d.ts +381 -76
- package/options/williamsr.src.d.ts +381 -76
- package/options/windbarb.d.ts +39 -2
- package/options/windbarb.src.d.ts +39 -2
- package/options/wma.d.ts +78 -704
- package/options/wma.src.d.ts +78 -704
- package/options/wordcloud.d.ts +98 -595
- package/options/wordcloud.src.d.ts +98 -595
- package/options/xrange.d.ts +166 -1056
- package/options/xrange.src.d.ts +166 -1056
- package/options/zigzag.d.ts +34 -410
- package/options/zigzag.src.d.ts +34 -410
- package/package.json +1 -1
- package/standalone-navigator.js +4 -4
- package/standalone-navigator.src.js +829 -553
- package/themes/adaptive.js +2 -2
- package/themes/adaptive.src.js +33 -18
- package/themes/avocado.js +2 -2
- package/themes/avocado.src.js +28 -13
- package/themes/dark-unica.js +2 -2
- package/themes/dark-unica.src.js +28 -13
- package/themes/grid-light.js +2 -2
- package/themes/grid-light.src.js +28 -13
- package/themes/high-contrast.js +2 -2
- package/themes/high-contrast.src.js +28 -13
- package/themes/sand-signika.js +2 -2
- package/themes/sand-signika.src.js +28 -13
- package/themes/sunset.js +2 -2
- package/themes/sunset.src.js +28 -13
- package/css/.stylelintrc.json +0 -8
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// SPDX-License-Identifier: LicenseRef-Highcharts
|
|
2
2
|
/**
|
|
3
|
-
* @license Highcharts JS v13.0.
|
|
3
|
+
* @license Highcharts JS v13.0.2 (2026-08-27)
|
|
4
4
|
* @module highcharts/highcharts-more
|
|
5
5
|
* @requires highcharts
|
|
6
6
|
*
|
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__ from "./highcharts.src.js";
|
|
13
13
|
/******/ // The require scope
|
|
14
|
-
/******/
|
|
14
|
+
/******/ const __webpack_require__ = {};
|
|
15
15
|
/******/
|
|
16
16
|
/************************************************************************/
|
|
17
17
|
/******/ /* webpack/runtime/compat get default export */
|
|
18
18
|
/******/ (() => {
|
|
19
19
|
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
20
20
|
/******/ __webpack_require__.n = (module) => {
|
|
21
|
-
/******/
|
|
21
|
+
/******/ const getter = module && module.__esModule ?
|
|
22
22
|
/******/ () => (module['default']) :
|
|
23
23
|
/******/ () => (module);
|
|
24
24
|
/******/ __webpack_require__.d(getter, { a: getter });
|
|
@@ -28,11 +28,26 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__ from "./high
|
|
|
28
28
|
/******/
|
|
29
29
|
/******/ /* webpack/runtime/define property getters */
|
|
30
30
|
/******/ (() => {
|
|
31
|
-
/******/ // define getter functions for harmony exports
|
|
31
|
+
/******/ // define getter/value functions for harmony exports
|
|
32
32
|
/******/ __webpack_require__.d = (exports, definition) => {
|
|
33
|
-
/******/
|
|
34
|
-
/******/
|
|
35
|
-
/******/
|
|
33
|
+
/******/ if(Array.isArray(definition)) {
|
|
34
|
+
/******/ var i = 0;
|
|
35
|
+
/******/ while(i < definition.length) {
|
|
36
|
+
/******/ var key = definition[i++];
|
|
37
|
+
/******/ var binding = definition[i++];
|
|
38
|
+
/******/ if(!__webpack_require__.o(exports, key)) {
|
|
39
|
+
/******/ if(binding === 0) {
|
|
40
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, value: definition[i++] });
|
|
41
|
+
/******/ } else {
|
|
42
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: binding });
|
|
43
|
+
/******/ }
|
|
44
|
+
/******/ } else if(binding === 0) { i++; }
|
|
45
|
+
/******/ }
|
|
46
|
+
/******/ } else {
|
|
47
|
+
/******/ for(var key in definition) {
|
|
48
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
49
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
50
|
+
/******/ }
|
|
36
51
|
/******/ }
|
|
37
52
|
/******/ }
|
|
38
53
|
/******/ };
|
|
@@ -44,7 +59,6 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__ from "./high
|
|
|
44
59
|
/******/ })();
|
|
45
60
|
/******/
|
|
46
61
|
/************************************************************************/
|
|
47
|
-
var __webpack_exports__ = {};
|
|
48
62
|
|
|
49
63
|
;// external ["./highcharts.src.js","default"]
|
|
50
64
|
const external_highcharts_src_js_default_namespaceObject = __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__["default"];
|
|
@@ -69,7 +83,7 @@ var external_highcharts_src_js_default_SeriesRegistry_default = /*#__PURE__*/__w
|
|
|
69
83
|
const { deg2rad } = (external_highcharts_src_js_default_default());
|
|
70
84
|
|
|
71
85
|
/**
|
|
72
|
-
* @
|
|
86
|
+
* @internal
|
|
73
87
|
*/
|
|
74
88
|
var CenteredUtilities;
|
|
75
89
|
(function (CenteredUtilities) {
|
|
@@ -87,7 +101,7 @@ var CenteredUtilities;
|
|
|
87
101
|
* Get the center of the pie based on the size and center options relative
|
|
88
102
|
* to the plot area. Borrowed by the polar and gauge series types.
|
|
89
103
|
*
|
|
90
|
-
* @
|
|
104
|
+
* @internal
|
|
91
105
|
* @function Highcharts.CenteredSeriesMixin.getCenter
|
|
92
106
|
*/
|
|
93
107
|
function getCenter() {
|
|
@@ -100,11 +114,13 @@ var CenteredUtilities;
|
|
|
100
114
|
innerSize = parseFloat(innerSize);
|
|
101
115
|
}
|
|
102
116
|
const positions = [
|
|
103
|
-
(
|
|
104
|
-
(
|
|
117
|
+
(centerOption?.[0] ?? '50%'),
|
|
118
|
+
(centerOption?.[1] ?? '50%'),
|
|
105
119
|
// Prevent from negative values
|
|
106
|
-
(
|
|
107
|
-
(
|
|
120
|
+
((size && size < 0 ? void 0 : options.size) ?? '100%'),
|
|
121
|
+
((innerSize && innerSize < 0 ?
|
|
122
|
+
void 0 :
|
|
123
|
+
options.innerSize || 0) ?? '0%')
|
|
108
124
|
];
|
|
109
125
|
for (i = 0; i < 4; ++i) {
|
|
110
126
|
value = positions[i];
|
|
@@ -132,7 +148,7 @@ var CenteredUtilities;
|
|
|
132
148
|
* GetStartAndEndRadians - Calculates start and end angles in radians.
|
|
133
149
|
* Used in series types such as pie and sunburst.
|
|
134
150
|
*
|
|
135
|
-
* @
|
|
151
|
+
* @internal
|
|
136
152
|
* @function Highcharts.CenteredSeriesMixin.getStartAndEndRadians
|
|
137
153
|
*
|
|
138
154
|
* @param {number} [start]
|
|
@@ -164,6 +180,7 @@ var CenteredUtilities;
|
|
|
164
180
|
* Default Export
|
|
165
181
|
*
|
|
166
182
|
* */
|
|
183
|
+
/** @internal */
|
|
167
184
|
/* harmony default export */ const Series_CenteredUtilities = (CenteredUtilities);
|
|
168
185
|
/* *
|
|
169
186
|
*
|
|
@@ -171,7 +188,7 @@ var CenteredUtilities;
|
|
|
171
188
|
*
|
|
172
189
|
* */
|
|
173
190
|
/**
|
|
174
|
-
* @
|
|
191
|
+
* @internal
|
|
175
192
|
* @interface Highcharts.RadianAngles
|
|
176
193
|
*/ /**
|
|
177
194
|
* @name Highcharts.RadianAngles#end
|
|
@@ -304,7 +321,7 @@ function onPointerBeforeGetHoverData(eventArgs) {
|
|
|
304
321
|
eventArgs.filter = function (s) {
|
|
305
322
|
return (s.visible &&
|
|
306
323
|
!(!eventArgs.shared && s.directTouch) && // #3821
|
|
307
|
-
(
|
|
324
|
+
(s.options.enableMouseTracking ?? true) &&
|
|
308
325
|
(!chart.hoverPane || s.xAxis.pane === chart.hoverPane));
|
|
309
326
|
};
|
|
310
327
|
}
|
|
@@ -353,7 +370,7 @@ const { defaultOptions } = (external_highcharts_src_js_default_default());
|
|
|
353
370
|
* @sample {highcharts} highcharts/series-solidgauge/pane-borderradius
|
|
354
371
|
* Solid gauge with background settings
|
|
355
372
|
*
|
|
356
|
-
* @type {
|
|
373
|
+
* @type {null|*|Array<*>}
|
|
357
374
|
* @requires highcharts-more
|
|
358
375
|
* @optionparent pane.background
|
|
359
376
|
*/
|
|
@@ -1037,6 +1054,139 @@ class AreaRangePoint extends AreaPoint {
|
|
|
1037
1054
|
*/
|
|
1038
1055
|
''; // Keeps doclets above in JS file.
|
|
1039
1056
|
|
|
1057
|
+
;// external ["./highcharts.src.js","default","Series","types","column"]
|
|
1058
|
+
const external_highcharts_src_js_default_Series_types_column_namespaceObject = __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__["default"].Series.types.column;
|
|
1059
|
+
var external_highcharts_src_js_default_Series_types_column_default = /*#__PURE__*/__webpack_require__.n(external_highcharts_src_js_default_Series_types_column_namespaceObject);
|
|
1060
|
+
;// ./code/es-modules/Series/RangeDataLabel.js
|
|
1061
|
+
/* *
|
|
1062
|
+
*
|
|
1063
|
+
* (c) 2010-2026 Highsoft AS
|
|
1064
|
+
* Author: Andrzej Buleczka
|
|
1065
|
+
*
|
|
1066
|
+
* */
|
|
1067
|
+
|
|
1068
|
+
|
|
1069
|
+
|
|
1070
|
+
/* *
|
|
1071
|
+
*
|
|
1072
|
+
* Declarations
|
|
1073
|
+
*
|
|
1074
|
+
* */
|
|
1075
|
+
var RangeDataLabel;
|
|
1076
|
+
(function (RangeDataLabel) {
|
|
1077
|
+
const plotYKeys = {
|
|
1078
|
+
close: ['plotClose'],
|
|
1079
|
+
high: ['highPlot', 'plotHigh'],
|
|
1080
|
+
low: ['lowPlot', 'plotLow'],
|
|
1081
|
+
median: ['medianPlot'],
|
|
1082
|
+
open: ['plotOpen'],
|
|
1083
|
+
q1: ['q1Plot'],
|
|
1084
|
+
q3: ['q3Plot'],
|
|
1085
|
+
y: ['plotY']
|
|
1086
|
+
};
|
|
1087
|
+
/* *
|
|
1088
|
+
*
|
|
1089
|
+
* Functions
|
|
1090
|
+
*
|
|
1091
|
+
* */
|
|
1092
|
+
function getPointPlotY(point, pointValKey) {
|
|
1093
|
+
const keys = plotYKeys[pointValKey] ?? [];
|
|
1094
|
+
for (const key of keys) {
|
|
1095
|
+
const value = point[key];
|
|
1096
|
+
if ((0,external_highcharts_src_js_default_namespaceObject.isNumber)(value)) {
|
|
1097
|
+
return value;
|
|
1098
|
+
}
|
|
1099
|
+
}
|
|
1100
|
+
}
|
|
1101
|
+
function getBelow(point, options, plotY) {
|
|
1102
|
+
const plotHigh = getPointPlotY(point, 'high'), plotLow = getPointPlotY(point, 'low');
|
|
1103
|
+
if ((0,external_highcharts_src_js_default_namespaceObject.isNumber)(plotHigh) && (0,external_highcharts_src_js_default_namespaceObject.isNumber)(plotLow)) {
|
|
1104
|
+
return options.inside ?
|
|
1105
|
+
plotY === Math.min(plotHigh, plotLow) :
|
|
1106
|
+
plotY === Math.max(plotHigh, plotLow);
|
|
1107
|
+
}
|
|
1108
|
+
return false;
|
|
1109
|
+
}
|
|
1110
|
+
function compose(SeriesClass) {
|
|
1111
|
+
const seriesProto = SeriesClass.prototype;
|
|
1112
|
+
seriesProto.alignDataLabel = alignDataLabel;
|
|
1113
|
+
return SeriesClass;
|
|
1114
|
+
}
|
|
1115
|
+
RangeDataLabel.compose = compose;
|
|
1116
|
+
/**
|
|
1117
|
+
* Default formatter for range series data labels. Renders the value of
|
|
1118
|
+
* the point key the label is aligned to, so the legacy high and low
|
|
1119
|
+
* labels keep showing their respective values without an explicit format.
|
|
1120
|
+
* Does not modify `point.y`. Falls back to `point.y` (the value of
|
|
1121
|
+
* `series.pointValKey`) for an unresolved key.
|
|
1122
|
+
* @internal
|
|
1123
|
+
*/
|
|
1124
|
+
function formatter(options) {
|
|
1125
|
+
const rawValue = options.alignToKey ?
|
|
1126
|
+
this.getNestedProperty(options.alignToKey) :
|
|
1127
|
+
this.y, value = (0,external_highcharts_src_js_default_namespaceObject.isNumber)(rawValue) ? rawValue : this.y;
|
|
1128
|
+
return (0,external_highcharts_src_js_default_namespaceObject.isNumber)(value) ?
|
|
1129
|
+
this.series.chart.numberFormatter(value, -1) :
|
|
1130
|
+
'';
|
|
1131
|
+
}
|
|
1132
|
+
RangeDataLabel.formatter = formatter;
|
|
1133
|
+
/**
|
|
1134
|
+
* Rewrite a label's `format` so that `{y}` and `{point.y}` references
|
|
1135
|
+
* resolve to the value of the point key the label is aligned to, keeping
|
|
1136
|
+
* the legacy per-label `{y}` behavior of range data labels.
|
|
1137
|
+
* @internal
|
|
1138
|
+
*/
|
|
1139
|
+
function applyAlignToKeyValue(options) {
|
|
1140
|
+
const { alignToKey, format } = options;
|
|
1141
|
+
// An explicit `format` ignores `alignToKey`, so its `{y}` (and
|
|
1142
|
+
// `{point.y}`) tokens point at the whole point. Rewrite them to the
|
|
1143
|
+
// aligned key so each range label keeps rendering its own value.
|
|
1144
|
+
// The default formatter already reads `alignToKey`.
|
|
1145
|
+
if (alignToKey && format) {
|
|
1146
|
+
options.format = format.replace(/\{(?:point\.)?y([:}])/g, '{point.' + alignToKey + '$1');
|
|
1147
|
+
}
|
|
1148
|
+
}
|
|
1149
|
+
RangeDataLabel.applyAlignToKeyValue = applyAlignToKeyValue;
|
|
1150
|
+
function resolveAlignToKey(series, rawKey) {
|
|
1151
|
+
return rawKey && series.pointArrayMap.indexOf(rawKey) > -1 ?
|
|
1152
|
+
rawKey :
|
|
1153
|
+
series.pointValKey;
|
|
1154
|
+
}
|
|
1155
|
+
RangeDataLabel.resolveAlignToKey = resolveAlignToKey;
|
|
1156
|
+
function alignDataLabel(point, dataLabel, options, alignTo, isNew) {
|
|
1157
|
+
const series = this, alignToKey = resolveAlignToKey(series, options.alignToKey), plotY = getPointPlotY(point, alignToKey), shapeArgs = point.shapeArgs, originalPlotY = point.plotY, originalDlBox = point.dlBox, originalBelow = point.below;
|
|
1158
|
+
if ((0,external_highcharts_src_js_default_namespaceObject.isNumber)(plotY)) {
|
|
1159
|
+
point.plotY = plotY;
|
|
1160
|
+
if (shapeArgs && !options.inside) {
|
|
1161
|
+
point.dlBox = {
|
|
1162
|
+
x: shapeArgs.x ?? 0,
|
|
1163
|
+
y: (0,external_highcharts_src_js_default_namespaceObject.crisp)(plotY, series.borderWidth, series.chart.inverted),
|
|
1164
|
+
width: shapeArgs.width ?? 0,
|
|
1165
|
+
height: 0
|
|
1166
|
+
};
|
|
1167
|
+
}
|
|
1168
|
+
const below = point.below = getBelow(point, options, plotY);
|
|
1169
|
+
if (series.chart.inverted) {
|
|
1170
|
+
options.align ?? (options.align = below ? 'right' : 'left');
|
|
1171
|
+
}
|
|
1172
|
+
else {
|
|
1173
|
+
options.verticalAlign ?? (options.verticalAlign = below ? 'top' : 'bottom');
|
|
1174
|
+
}
|
|
1175
|
+
}
|
|
1176
|
+
external_highcharts_src_js_default_Series_types_column_default().prototype.alignDataLabel.call(series, point, dataLabel, options, alignTo, isNew);
|
|
1177
|
+
point.plotY = originalPlotY;
|
|
1178
|
+
point.dlBox = originalDlBox;
|
|
1179
|
+
point.below = originalBelow;
|
|
1180
|
+
}
|
|
1181
|
+
RangeDataLabel.alignDataLabel = alignDataLabel;
|
|
1182
|
+
})(RangeDataLabel || (RangeDataLabel = {}));
|
|
1183
|
+
/* *
|
|
1184
|
+
*
|
|
1185
|
+
* Default Export
|
|
1186
|
+
*
|
|
1187
|
+
* */
|
|
1188
|
+
/* harmony default export */ const Series_RangeDataLabel = (RangeDataLabel);
|
|
1189
|
+
|
|
1040
1190
|
;// ./code/es-modules/Series/AreaRange/AreaRangeSeries.js
|
|
1041
1191
|
/* *
|
|
1042
1192
|
*
|
|
@@ -1054,7 +1204,8 @@ class AreaRangePoint extends AreaPoint {
|
|
|
1054
1204
|
|
|
1055
1205
|
const { noop } = (external_highcharts_src_js_default_default());
|
|
1056
1206
|
|
|
1057
|
-
|
|
1207
|
+
|
|
1208
|
+
const { area: AreaSeries, area: { prototype: AreaRangeSeries_areaProto } } = (external_highcharts_src_js_default_SeriesRegistry_default()).seriesTypes;
|
|
1058
1209
|
|
|
1059
1210
|
/* *
|
|
1060
1211
|
*
|
|
@@ -1139,12 +1290,10 @@ const areaRangeSeriesOptions = {
|
|
|
1139
1290
|
trackByArea: true,
|
|
1140
1291
|
/**
|
|
1141
1292
|
* Extended data labels for range series types. Range series data
|
|
1142
|
-
* labels
|
|
1143
|
-
*
|
|
1144
|
-
* data label sets individually.
|
|
1293
|
+
* labels can be positioned individually by defining them as an array
|
|
1294
|
+
* and setting `alignToKey` to `high` or `low`.
|
|
1145
1295
|
*
|
|
1146
1296
|
* @declare Highcharts.SeriesAreaRangeDataLabelsOptionsObject
|
|
1147
|
-
* @exclude x, y
|
|
1148
1297
|
* @since 2.3.0
|
|
1149
1298
|
* @product highcharts highstock
|
|
1150
1299
|
*
|
|
@@ -1152,39 +1301,103 @@ const areaRangeSeriesOptions = {
|
|
|
1152
1301
|
*/
|
|
1153
1302
|
dataLabels: {
|
|
1154
1303
|
align: void 0,
|
|
1304
|
+
formatter: Series_RangeDataLabel.formatter,
|
|
1155
1305
|
verticalAlign: void 0,
|
|
1156
1306
|
/**
|
|
1157
1307
|
* X offset of the lower data labels relative to the point value.
|
|
1158
1308
|
*
|
|
1309
|
+
* Deprecated. Use a data labels array with `alignToKey: 'low'` and
|
|
1310
|
+
* the regular `x` option instead.
|
|
1311
|
+
*
|
|
1159
1312
|
* @sample highcharts/plotoptions/arearange-datalabels/
|
|
1160
1313
|
* Data labels on range series
|
|
1161
1314
|
* @sample highcharts/plotoptions/arearange-datalabels/
|
|
1162
1315
|
* Data labels on range series
|
|
1316
|
+
* @deprecated 13.0.1
|
|
1163
1317
|
*/
|
|
1164
1318
|
xLow: 0,
|
|
1165
1319
|
/**
|
|
1166
1320
|
* X offset of the higher data labels relative to the point value.
|
|
1167
1321
|
*
|
|
1322
|
+
* Deprecated. Use a data labels array with `alignToKey: 'high'` and
|
|
1323
|
+
* the regular `x` option instead.
|
|
1324
|
+
*
|
|
1168
1325
|
* @sample highcharts/plotoptions/arearange-datalabels/
|
|
1169
1326
|
* Data labels on range series
|
|
1327
|
+
* @deprecated 13.0.1
|
|
1170
1328
|
*/
|
|
1171
1329
|
xHigh: 0,
|
|
1172
1330
|
/**
|
|
1173
1331
|
* Y offset of the lower data labels relative to the point value.
|
|
1174
1332
|
*
|
|
1333
|
+
* Deprecated. Use a data labels array with `alignToKey: 'low'` and
|
|
1334
|
+
* the regular `y` option instead.
|
|
1335
|
+
*
|
|
1175
1336
|
* @sample highcharts/plotoptions/arearange-datalabels/
|
|
1176
1337
|
* Data labels on range series
|
|
1338
|
+
* @deprecated 13.0.1
|
|
1177
1339
|
*/
|
|
1178
1340
|
yLow: 0,
|
|
1179
1341
|
/**
|
|
1180
1342
|
* Y offset of the higher data labels relative to the point value.
|
|
1181
1343
|
*
|
|
1344
|
+
* Deprecated. Use a data labels array with `alignToKey: 'high'` and
|
|
1345
|
+
* the regular `y` option instead.
|
|
1346
|
+
*
|
|
1182
1347
|
* @sample highcharts/plotoptions/arearange-datalabels/
|
|
1183
1348
|
* Data labels on range series
|
|
1349
|
+
* @deprecated 13.0.1
|
|
1184
1350
|
*/
|
|
1185
1351
|
yHigh: 0
|
|
1186
1352
|
}
|
|
1187
1353
|
};
|
|
1354
|
+
/* *
|
|
1355
|
+
*
|
|
1356
|
+
* Functions
|
|
1357
|
+
*
|
|
1358
|
+
* */
|
|
1359
|
+
/**
|
|
1360
|
+
* Normalize the dataLabels config into a per-label array. Resolves the
|
|
1361
|
+
* `alignToKey` default (`high` for the first label, `low` for the second) and
|
|
1362
|
+
* maps the deprecated `xLow/xHigh/yLow/yHigh` offsets onto each label's `x/y`.
|
|
1363
|
+
* @internal
|
|
1364
|
+
*/
|
|
1365
|
+
function getRangeDataLabelOptions(series) {
|
|
1366
|
+
const dataLabels = series.options.dataLabels;
|
|
1367
|
+
if ((0,external_highcharts_src_js_default_namespaceObject.isArray)(dataLabels)) {
|
|
1368
|
+
return Array.from({
|
|
1369
|
+
length: Math.max(dataLabels.length, 2)
|
|
1370
|
+
}, (_, index) => {
|
|
1371
|
+
const options = dataLabels[index], defaultAlignToKey = index === 0 ? 'high' :
|
|
1372
|
+
index === 1 ? 'low' :
|
|
1373
|
+
series.pointValKey, alignToKey = options?.alignToKey ?? defaultAlignToKey;
|
|
1374
|
+
return (0,external_highcharts_src_js_default_namespaceObject.merge)(options ?? { enabled: false }, { alignToKey });
|
|
1375
|
+
});
|
|
1376
|
+
}
|
|
1377
|
+
if (dataLabels?.alignToKey) {
|
|
1378
|
+
return [
|
|
1379
|
+
(0,external_highcharts_src_js_default_namespaceObject.merge)(dataLabels, dataLabels.alignToKey === 'high' ? {
|
|
1380
|
+
x: dataLabels.xHigh,
|
|
1381
|
+
y: dataLabels.yHigh
|
|
1382
|
+
} : dataLabels.alignToKey === 'low' ? {
|
|
1383
|
+
x: dataLabels.xLow,
|
|
1384
|
+
y: dataLabels.yLow
|
|
1385
|
+
} : {})
|
|
1386
|
+
];
|
|
1387
|
+
}
|
|
1388
|
+
return [
|
|
1389
|
+
(0,external_highcharts_src_js_default_namespaceObject.merge)(dataLabels, {
|
|
1390
|
+
alignToKey: 'high',
|
|
1391
|
+
x: dataLabels?.xHigh,
|
|
1392
|
+
y: dataLabels?.yHigh
|
|
1393
|
+
}),
|
|
1394
|
+
(0,external_highcharts_src_js_default_namespaceObject.merge)(dataLabels, {
|
|
1395
|
+
alignToKey: 'low',
|
|
1396
|
+
x: dataLabels?.xLow,
|
|
1397
|
+
y: dataLabels?.yLow
|
|
1398
|
+
})
|
|
1399
|
+
];
|
|
1400
|
+
}
|
|
1188
1401
|
/* *
|
|
1189
1402
|
*
|
|
1190
1403
|
* Class
|
|
@@ -1258,7 +1471,7 @@ class AreaRangeSeries extends AreaSeries {
|
|
|
1258
1471
|
rectPlotX: point.rectPlotX,
|
|
1259
1472
|
yBottom: point.yBottom,
|
|
1260
1473
|
// `plotHighX` is for polar charts
|
|
1261
|
-
plotX:
|
|
1474
|
+
plotX: point.plotHighX ?? point.plotX,
|
|
1262
1475
|
plotY: point.plotHigh,
|
|
1263
1476
|
isNull: point.isNull
|
|
1264
1477
|
};
|
|
@@ -1308,151 +1521,27 @@ class AreaRangeSeries extends AreaSeries {
|
|
|
1308
1521
|
this.areaPath.xMap = lowerPath.xMap;
|
|
1309
1522
|
return linePath;
|
|
1310
1523
|
}
|
|
1311
|
-
/**
|
|
1312
|
-
* Extend the basic drawDataLabels method by running it for both lower and
|
|
1313
|
-
* higher values.
|
|
1314
|
-
* @internal
|
|
1315
|
-
*/
|
|
1316
1524
|
drawDataLabels() {
|
|
1317
|
-
const
|
|
1318
|
-
let i, point, up, upperDataLabelOptions, lowerDataLabelOptions;
|
|
1525
|
+
const series = this, dataLabelOptions = series.options.dataLabels;
|
|
1319
1526
|
if (dataLabelOptions) {
|
|
1320
|
-
|
|
1321
|
-
//
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
};
|
|
1336
|
-
}
|
|
1337
|
-
else {
|
|
1338
|
-
// Make copies
|
|
1339
|
-
upperDataLabelOptions = (0,external_highcharts_src_js_default_namespaceObject.extend)({}, dataLabelOptions);
|
|
1340
|
-
upperDataLabelOptions.x = dataLabelOptions.xHigh;
|
|
1341
|
-
upperDataLabelOptions.y = dataLabelOptions.yHigh;
|
|
1342
|
-
lowerDataLabelOptions = (0,external_highcharts_src_js_default_namespaceObject.extend)({}, dataLabelOptions);
|
|
1343
|
-
lowerDataLabelOptions.x = dataLabelOptions.xLow;
|
|
1344
|
-
lowerDataLabelOptions.y = dataLabelOptions.yLow;
|
|
1345
|
-
}
|
|
1346
|
-
// Draw upper labels
|
|
1347
|
-
if (upperDataLabelOptions.enabled || this.hasDataLabels?.()) {
|
|
1348
|
-
// Set preliminary values for plotY and dataLabel
|
|
1349
|
-
// and draw the upper labels
|
|
1350
|
-
i = length;
|
|
1351
|
-
while (i--) {
|
|
1352
|
-
point = data[i];
|
|
1353
|
-
if (point) {
|
|
1354
|
-
const { plotHigh = 0, plotLow = 0 } = point;
|
|
1355
|
-
up = upperDataLabelOptions.inside ?
|
|
1356
|
-
plotHigh < plotLow :
|
|
1357
|
-
plotHigh > plotLow;
|
|
1358
|
-
point.y = point.high;
|
|
1359
|
-
point._plotY = point.plotY;
|
|
1360
|
-
point.plotY = plotHigh;
|
|
1361
|
-
// Store original data labels and set preliminary label
|
|
1362
|
-
// objects to be picked up in the uber method
|
|
1363
|
-
originalDataLabels[i] = point.dataLabel;
|
|
1364
|
-
point.dataLabel = point.dataLabelUpper;
|
|
1365
|
-
// Set the default offset
|
|
1366
|
-
point.below = up;
|
|
1367
|
-
if (inverted) {
|
|
1368
|
-
if (!upperDataLabelOptions.align) {
|
|
1369
|
-
upperDataLabelOptions.align = up ?
|
|
1370
|
-
'right' : 'left';
|
|
1371
|
-
}
|
|
1372
|
-
}
|
|
1373
|
-
else {
|
|
1374
|
-
if (!upperDataLabelOptions.verticalAlign) {
|
|
1375
|
-
upperDataLabelOptions.verticalAlign = up ?
|
|
1376
|
-
'top' :
|
|
1377
|
-
'bottom';
|
|
1378
|
-
}
|
|
1379
|
-
}
|
|
1380
|
-
}
|
|
1381
|
-
}
|
|
1382
|
-
this.options.dataLabels = upperDataLabelOptions;
|
|
1383
|
-
if (AreaRangeSeries_areaProto.drawDataLabels) {
|
|
1384
|
-
// #1209:
|
|
1385
|
-
AreaRangeSeries_areaProto.drawDataLabels.apply(this, arguments);
|
|
1386
|
-
}
|
|
1387
|
-
// Reset state after the upper labels were created. Move
|
|
1388
|
-
// it to point.dataLabelUpper and reassign the originals.
|
|
1389
|
-
// We do this here to support not drawing a lower label.
|
|
1390
|
-
i = length;
|
|
1391
|
-
while (i--) {
|
|
1392
|
-
point = data[i];
|
|
1393
|
-
if (point) {
|
|
1394
|
-
point.dataLabelUpper = point.dataLabel;
|
|
1395
|
-
point.dataLabel = originalDataLabels[i];
|
|
1396
|
-
delete point.dataLabels;
|
|
1397
|
-
point.y = point.low;
|
|
1398
|
-
point.plotY = point._plotY;
|
|
1399
|
-
}
|
|
1400
|
-
}
|
|
1401
|
-
}
|
|
1402
|
-
// Draw lower labels
|
|
1403
|
-
if (lowerDataLabelOptions.enabled || this.hasDataLabels?.()) {
|
|
1404
|
-
i = length;
|
|
1405
|
-
while (i--) {
|
|
1406
|
-
point = data[i];
|
|
1407
|
-
if (point) {
|
|
1408
|
-
const { plotHigh = 0, plotLow = 0 } = point;
|
|
1409
|
-
up = lowerDataLabelOptions.inside ?
|
|
1410
|
-
plotHigh < plotLow :
|
|
1411
|
-
plotHigh > plotLow;
|
|
1412
|
-
// Set the default offset
|
|
1413
|
-
point.below = !up;
|
|
1414
|
-
if (inverted) {
|
|
1415
|
-
if (!lowerDataLabelOptions.align) {
|
|
1416
|
-
lowerDataLabelOptions.align = up ?
|
|
1417
|
-
'left' : 'right';
|
|
1418
|
-
}
|
|
1419
|
-
}
|
|
1420
|
-
else {
|
|
1421
|
-
if (!lowerDataLabelOptions.verticalAlign) {
|
|
1422
|
-
lowerDataLabelOptions.verticalAlign = up ?
|
|
1423
|
-
'bottom' :
|
|
1424
|
-
'top';
|
|
1425
|
-
}
|
|
1426
|
-
}
|
|
1427
|
-
}
|
|
1428
|
-
}
|
|
1429
|
-
this.options.dataLabels = lowerDataLabelOptions;
|
|
1430
|
-
if (AreaRangeSeries_areaProto.drawDataLabels) {
|
|
1431
|
-
AreaRangeSeries_areaProto.drawDataLabels.apply(this, arguments);
|
|
1432
|
-
}
|
|
1433
|
-
}
|
|
1434
|
-
// Merge upper and lower into point.dataLabels for later destroying
|
|
1435
|
-
if (upperDataLabelOptions.enabled) {
|
|
1436
|
-
i = length;
|
|
1437
|
-
while (i--) {
|
|
1438
|
-
point = data[i];
|
|
1439
|
-
if (point) {
|
|
1440
|
-
point.dataLabels = [
|
|
1441
|
-
point.dataLabelUpper,
|
|
1442
|
-
point.dataLabel
|
|
1443
|
-
].filter(function (label) {
|
|
1444
|
-
return !!label;
|
|
1445
|
-
});
|
|
1446
|
-
}
|
|
1447
|
-
}
|
|
1527
|
+
const rangeOptions = getRangeDataLabelOptions(series);
|
|
1528
|
+
// Resolve value references like `{y}` against the aligned key
|
|
1529
|
+
rangeOptions.forEach(Series_RangeDataLabel.applyAlignToKeyValue);
|
|
1530
|
+
series.options.dataLabels = rangeOptions;
|
|
1531
|
+
if (AreaRangeSeries_areaProto.drawDataLabels) {
|
|
1532
|
+
// #1209
|
|
1533
|
+
AreaRangeSeries_areaProto.drawDataLabels.call(series);
|
|
1534
|
+
}
|
|
1535
|
+
series.options.dataLabels = dataLabelOptions;
|
|
1536
|
+
for (const point of series.points) {
|
|
1537
|
+
const labels = point.dataLabels ?? [];
|
|
1538
|
+
point.dataLabelUpper = labels.find((label) => (Series_RangeDataLabel.resolveAlignToKey(series, label.options
|
|
1539
|
+
?.alignToKey) === 'high'));
|
|
1540
|
+
point.dataLabel = labels.find((label) => (Series_RangeDataLabel.resolveAlignToKey(series, label.options
|
|
1541
|
+
?.alignToKey) === 'low'));
|
|
1448
1542
|
}
|
|
1449
|
-
// Reset options
|
|
1450
|
-
this.options.dataLabels = dataLabelOptions;
|
|
1451
1543
|
}
|
|
1452
1544
|
}
|
|
1453
|
-
alignDataLabel() {
|
|
1454
|
-
columnProto.alignDataLabel.apply(this, arguments);
|
|
1455
|
-
}
|
|
1456
1545
|
modifyMarkerSettings() {
|
|
1457
1546
|
const series = this, originalMarkerSettings = {
|
|
1458
1547
|
marker: series.options.marker,
|
|
@@ -1503,7 +1592,7 @@ class AreaRangeSeries extends AreaSeries {
|
|
|
1503
1592
|
if ((0,external_highcharts_src_js_default_namespaceObject.defined)(point.plotHighX)) {
|
|
1504
1593
|
point.plotX = point.plotHighX;
|
|
1505
1594
|
}
|
|
1506
|
-
point.y =
|
|
1595
|
+
point.y = point.high ?? point.origProps.y; // #15523
|
|
1507
1596
|
point.negative = point.y < (series.options.threshold || 0);
|
|
1508
1597
|
if (series.zones.length) {
|
|
1509
1598
|
point.zone = point.getZone();
|
|
@@ -1601,6 +1690,7 @@ AreaRangeSeries.defaultOptions = (0,external_highcharts_src_js_default_namespace
|
|
|
1601
1690
|
pointValKey: 'low',
|
|
1602
1691
|
setStackedPoints: noop
|
|
1603
1692
|
});
|
|
1693
|
+
Series_RangeDataLabel.compose(AreaRangeSeries);
|
|
1604
1694
|
external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('arearange', AreaRangeSeries);
|
|
1605
1695
|
/* *
|
|
1606
1696
|
*
|
|
@@ -1785,10 +1875,15 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
1785
1875
|
*/
|
|
1786
1876
|
''; // Adds doclets above to transpiled file
|
|
1787
1877
|
|
|
1788
|
-
;// ./code/es-modules/
|
|
1878
|
+
;// ./code/es-modules/Extensions/BorderRadius.js
|
|
1879
|
+
/* unused harmony import specifier */ var relativeLength;
|
|
1880
|
+
/* unused harmony import specifier */ var isObject;
|
|
1881
|
+
/* unused harmony import specifier */ var extend;
|
|
1882
|
+
/* unused harmony import specifier */ var addEvent;
|
|
1789
1883
|
/* *
|
|
1790
1884
|
*
|
|
1791
|
-
*
|
|
1885
|
+
* Highcharts Border Radius module
|
|
1886
|
+
*
|
|
1792
1887
|
* Author: Torstein Hønsi
|
|
1793
1888
|
*
|
|
1794
1889
|
* Integration of this software requires a license.
|
|
@@ -1798,44 +1893,448 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
1798
1893
|
*
|
|
1799
1894
|
* */
|
|
1800
1895
|
|
|
1896
|
+
|
|
1897
|
+
const { defaultOptions: BorderRadius_defaultOptions } = (external_highcharts_src_js_default_default());
|
|
1898
|
+
|
|
1899
|
+
const { noop: BorderRadius_noop } = (external_highcharts_src_js_default_default());
|
|
1900
|
+
|
|
1801
1901
|
/* *
|
|
1802
1902
|
*
|
|
1803
|
-
*
|
|
1903
|
+
* Constants
|
|
1804
1904
|
*
|
|
1805
1905
|
* */
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1906
|
+
const defaultBorderRadiusOptions = {
|
|
1907
|
+
radius: 0,
|
|
1908
|
+
scope: 'stack',
|
|
1909
|
+
where: void 0
|
|
1910
|
+
};
|
|
1911
|
+
/* *
|
|
1811
1912
|
*
|
|
1812
|
-
*
|
|
1813
|
-
* Box plot
|
|
1814
|
-
* @sample {highcharts} highcharts/css/boxplot/
|
|
1815
|
-
* Box plot in styled mode
|
|
1816
|
-
* @sample {highcharts} highcharts/series-scatter/jitter-boxplot
|
|
1817
|
-
* Jittered scatter plot on top of a box plot
|
|
1913
|
+
* Variables
|
|
1818
1914
|
*
|
|
1819
|
-
*
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
*
|
|
1823
|
-
*
|
|
1824
|
-
*
|
|
1915
|
+
* */
|
|
1916
|
+
let oldArc = (/* unused pure expression or super */ null && (BorderRadius_noop));
|
|
1917
|
+
let oldRoundedRect = (/* unused pure expression or super */ null && (BorderRadius_noop));
|
|
1918
|
+
/* *
|
|
1919
|
+
*
|
|
1920
|
+
* Functions
|
|
1921
|
+
*
|
|
1922
|
+
* */
|
|
1923
|
+
/** @internal */
|
|
1924
|
+
function applyBorderRadius(path, i, r) {
|
|
1925
|
+
const a = path[i];
|
|
1926
|
+
let b = path[i + 1];
|
|
1927
|
+
if (b[0] === 'Z') {
|
|
1928
|
+
b = path[0];
|
|
1929
|
+
}
|
|
1930
|
+
let line, arc, fromLineToArc;
|
|
1931
|
+
// From straight line to arc
|
|
1932
|
+
if ((a[0] === 'M' || a[0] === 'L') && b[0] === 'A') {
|
|
1933
|
+
line = a;
|
|
1934
|
+
arc = b;
|
|
1935
|
+
fromLineToArc = true;
|
|
1936
|
+
// From arc to straight line
|
|
1937
|
+
}
|
|
1938
|
+
else if (a[0] === 'A' && (b[0] === 'M' || b[0] === 'L')) {
|
|
1939
|
+
line = b;
|
|
1940
|
+
arc = a;
|
|
1941
|
+
}
|
|
1942
|
+
if (line && arc && arc.params) {
|
|
1943
|
+
const bigR = arc[1],
|
|
1944
|
+
// In our use cases, outer pie slice arcs are clockwise and inner
|
|
1945
|
+
// arcs (donut/sunburst etc) are anti-clockwise
|
|
1946
|
+
clockwise = arc[5], params = arc.params, { start, end, cx, cy } = params;
|
|
1947
|
+
// Some geometric constants
|
|
1948
|
+
const relativeR = clockwise ? (bigR - r) : (bigR + r),
|
|
1949
|
+
// The angle, on the big arc, that the border radius arc takes up
|
|
1950
|
+
angleOfBorderRadius = relativeR ? Math.asin(r / relativeR) : 0, angleOffset = clockwise ?
|
|
1951
|
+
angleOfBorderRadius :
|
|
1952
|
+
-angleOfBorderRadius,
|
|
1953
|
+
// The distance along the radius of the big arc to the starting
|
|
1954
|
+
// point of the small border radius arc
|
|
1955
|
+
distanceBigCenterToStartArc = (Math.cos(angleOfBorderRadius) *
|
|
1956
|
+
relativeR);
|
|
1957
|
+
// From line to arc
|
|
1958
|
+
if (fromLineToArc) {
|
|
1959
|
+
// Update the cache
|
|
1960
|
+
params.start = start + angleOffset;
|
|
1961
|
+
// First move to the start position at the radial line. We want to
|
|
1962
|
+
// start one borderRadius closer to the center.
|
|
1963
|
+
line[1] = cx + distanceBigCenterToStartArc * Math.cos(start);
|
|
1964
|
+
line[2] = cy + distanceBigCenterToStartArc * Math.sin(start);
|
|
1965
|
+
// Now draw an arc towards the point where the small circle touches
|
|
1966
|
+
// the great circle.
|
|
1967
|
+
path.splice(i + 1, 0, [
|
|
1968
|
+
'A',
|
|
1969
|
+
r,
|
|
1970
|
+
r,
|
|
1971
|
+
0, // Slanting,
|
|
1972
|
+
0, // Long arc
|
|
1973
|
+
1, // Clockwise
|
|
1974
|
+
cx + bigR * Math.cos(params.start),
|
|
1975
|
+
cy + bigR * Math.sin(params.start)
|
|
1976
|
+
]);
|
|
1977
|
+
// From arc to line
|
|
1978
|
+
}
|
|
1979
|
+
else {
|
|
1980
|
+
// Update the cache
|
|
1981
|
+
params.end = end - angleOffset;
|
|
1982
|
+
// End the big arc a bit earlier
|
|
1983
|
+
arc[6] = cx + bigR * Math.cos(params.end);
|
|
1984
|
+
arc[7] = cy + bigR * Math.sin(params.end);
|
|
1985
|
+
// Draw a small arc towards a point on the end angle, but one
|
|
1986
|
+
// borderRadius closer to the center relative to the perimeter.
|
|
1987
|
+
path.splice(i + 1, 0, [
|
|
1988
|
+
'A',
|
|
1989
|
+
r,
|
|
1990
|
+
r,
|
|
1991
|
+
0,
|
|
1992
|
+
0,
|
|
1993
|
+
1,
|
|
1994
|
+
cx + distanceBigCenterToStartArc * Math.cos(end),
|
|
1995
|
+
cy + distanceBigCenterToStartArc * Math.sin(end)
|
|
1996
|
+
]);
|
|
1997
|
+
}
|
|
1998
|
+
// Long or short arc must be reconsidered because we have modified the
|
|
1999
|
+
// start and end points
|
|
2000
|
+
arc[4] = Math.abs(params.end - params.start) < Math.PI ? 0 : 1;
|
|
2001
|
+
}
|
|
2002
|
+
}
|
|
2003
|
+
/**
|
|
2004
|
+
* Extend arc with borderRadius.
|
|
2005
|
+
* @internal
|
|
1825
2006
|
*/
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
2007
|
+
function arc(x, y, w, h, options = {}) {
|
|
2008
|
+
const path = oldArc(x, y, w, h, options), { brStart = true, brEnd = true, innerR = 0, r = w, start = 0, end = 0 } = options;
|
|
2009
|
+
if (options.open || !options.borderRadius) {
|
|
2010
|
+
return path;
|
|
2011
|
+
}
|
|
2012
|
+
const alpha = end - start, sinHalfAlpha = Math.sin(alpha / 2), borderRadius = Math.max(Math.min(relativeLength(borderRadiusObject(options.borderRadius).radius, r - innerR),
|
|
2013
|
+
// Cap to half the sector radius
|
|
2014
|
+
(r - innerR) / 2,
|
|
2015
|
+
// For smaller pie slices, cap to the largest small circle that
|
|
2016
|
+
// can be fitted within the sector
|
|
2017
|
+
(r * sinHalfAlpha) / (1 + sinHalfAlpha)), 0),
|
|
2018
|
+
// For the inner radius, we need an extra cap because the inner arc
|
|
2019
|
+
// is shorter than the outer arc
|
|
2020
|
+
innerBorderRadius = Math.min(borderRadius, 2 * (alpha / Math.PI) * innerR);
|
|
2021
|
+
// Apply turn-by-turn border radius. Start at the end since we're
|
|
2022
|
+
// splicing in arc segments.
|
|
2023
|
+
let i = path.length - 1;
|
|
2024
|
+
while (i--) {
|
|
2025
|
+
if ((!brStart && (i === 0 || i === 3)) ||
|
|
2026
|
+
(!brEnd && (i === 1 || i === 2))) {
|
|
2027
|
+
continue;
|
|
2028
|
+
}
|
|
2029
|
+
applyBorderRadius(path, i, i > 1 ? innerBorderRadius : borderRadius);
|
|
2030
|
+
}
|
|
2031
|
+
return path;
|
|
2032
|
+
}
|
|
2033
|
+
/** @internal */
|
|
2034
|
+
function seriesOnAfterColumnTranslate() {
|
|
2035
|
+
if (this.options.borderRadius &&
|
|
2036
|
+
!(this.chart.is3d && this.chart.is3d())) {
|
|
2037
|
+
const { options, yAxis } = this, percent = options.stacking === 'percent', seriesDefault = BorderRadius_defaultOptions.plotOptions?.[this.type]
|
|
2038
|
+
?.borderRadius, borderRadius = borderRadiusObject(options.borderRadius, isObject(seriesDefault) ? seriesDefault : {}), reversed = yAxis.options.reversed;
|
|
2039
|
+
for (const point of this.points) {
|
|
2040
|
+
const { shapeArgs } = point;
|
|
2041
|
+
if (point.shapeType === 'roundedRect' && shapeArgs) {
|
|
2042
|
+
const { width = 0, height = 0, y = 0 } = shapeArgs;
|
|
2043
|
+
let brBoxY = y, brBoxHeight = height;
|
|
2044
|
+
// It would be nice to refactor StackItem.getStackBox/
|
|
2045
|
+
// setOffset so that we could get a reliable box out of
|
|
2046
|
+
// it. Currently it is close if we remove the label
|
|
2047
|
+
// offset, but we still need to run crispCol and also
|
|
2048
|
+
// flip it if inverted, so atm it is simpler to do it
|
|
2049
|
+
// like the below.
|
|
2050
|
+
if (borderRadius.scope === 'stack' &&
|
|
2051
|
+
point.stackTotal) {
|
|
2052
|
+
const stackEnd = yAxis.translate(percent ? 100 : point.stackTotal, false, true, false, true), stackThreshold = yAxis.translate(options.threshold || 0, false, true, false, true), box = this.crispCol(0, Math.min(stackEnd, stackThreshold), 0, Math.abs(stackEnd - stackThreshold));
|
|
2053
|
+
brBoxY = box.y;
|
|
2054
|
+
brBoxHeight = box.height;
|
|
2055
|
+
}
|
|
2056
|
+
const flip = (point.negative ? -1 : 1) *
|
|
2057
|
+
(reversed ? -1 : 1) === -1;
|
|
2058
|
+
// Handle the where option
|
|
2059
|
+
let where = borderRadius.where;
|
|
2060
|
+
// Waterfall, hanging columns should have rounding on
|
|
2061
|
+
// all sides
|
|
2062
|
+
if (!where &&
|
|
2063
|
+
this.is('waterfall') &&
|
|
2064
|
+
Math.abs((point.yBottom || 0) -
|
|
2065
|
+
(this.translatedThreshold || 0)) > this.borderWidth) {
|
|
2066
|
+
where = 'all';
|
|
2067
|
+
}
|
|
2068
|
+
if (!where) {
|
|
2069
|
+
where = 'end';
|
|
2070
|
+
}
|
|
2071
|
+
// Get the radius
|
|
2072
|
+
const r = Math.min(relativeLength(borderRadius.radius, width), width / 2,
|
|
2073
|
+
// Cap to the height, but not if where is `end`
|
|
2074
|
+
where === 'all' ? brBoxHeight / 2 : Infinity) || 0;
|
|
2075
|
+
// If the `where` option is 'end', cut off the
|
|
2076
|
+
// rectangles by making the border-radius box one r
|
|
2077
|
+
// greater, so that the imaginary radius falls outside
|
|
2078
|
+
// the rectangle.
|
|
2079
|
+
if (where === 'end') {
|
|
2080
|
+
if (flip) {
|
|
2081
|
+
brBoxY -= r;
|
|
2082
|
+
brBoxHeight += r;
|
|
2083
|
+
}
|
|
2084
|
+
else {
|
|
2085
|
+
brBoxHeight += r;
|
|
2086
|
+
}
|
|
2087
|
+
}
|
|
2088
|
+
extend(shapeArgs, { brBoxHeight, brBoxY, r });
|
|
2089
|
+
}
|
|
2090
|
+
}
|
|
2091
|
+
}
|
|
2092
|
+
}
|
|
2093
|
+
/** @internal */
|
|
2094
|
+
function composeBorderRadius(SeriesClass, SVGElementClass, SVGRendererClass) {
|
|
2095
|
+
const PieSeriesClass = SeriesClass.types.pie;
|
|
2096
|
+
if (!SVGElementClass.symbolCustomAttribs.includes('borderRadius')) {
|
|
2097
|
+
const symbols = SVGRendererClass.prototype.symbols;
|
|
2098
|
+
addEvent(SeriesClass, 'afterColumnTranslate', seriesOnAfterColumnTranslate, {
|
|
2099
|
+
// After columnrange and polar column modifications
|
|
2100
|
+
order: 9
|
|
2101
|
+
});
|
|
2102
|
+
addEvent(PieSeriesClass, 'afterTranslate', pieSeriesOnAfterTranslate);
|
|
2103
|
+
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY', 'brEnd', 'brStart');
|
|
2104
|
+
oldArc = symbols.arc;
|
|
2105
|
+
oldRoundedRect = symbols.roundedRect;
|
|
2106
|
+
symbols.arc = arc;
|
|
2107
|
+
symbols.roundedRect = roundedRect;
|
|
2108
|
+
}
|
|
2109
|
+
}
|
|
2110
|
+
/**
|
|
2111
|
+
* Utility function to get the full border radius options object, from a simple
|
|
2112
|
+
* number or a partial options object.
|
|
2113
|
+
* @internal
|
|
2114
|
+
*/
|
|
2115
|
+
function borderRadiusObject(options, seriesBROptions) {
|
|
2116
|
+
if (!(0,external_highcharts_src_js_default_namespaceObject.isObject)(options)) {
|
|
2117
|
+
options = { radius: options || 0 };
|
|
2118
|
+
}
|
|
2119
|
+
return (0,external_highcharts_src_js_default_namespaceObject.merge)(defaultBorderRadiusOptions, seriesBROptions, options);
|
|
2120
|
+
}
|
|
2121
|
+
/** @internal */
|
|
2122
|
+
function pieSeriesOnAfterTranslate() {
|
|
2123
|
+
const borderRadius = borderRadiusObject(this.options.borderRadius);
|
|
2124
|
+
for (const point of this.points) {
|
|
2125
|
+
const shapeArgs = point.shapeArgs;
|
|
2126
|
+
if (shapeArgs) {
|
|
2127
|
+
shapeArgs.borderRadius = relativeLength(borderRadius.radius, (shapeArgs.r || 0) - ((shapeArgs.innerR) || 0));
|
|
2128
|
+
}
|
|
2129
|
+
}
|
|
2130
|
+
}
|
|
2131
|
+
/**
|
|
2132
|
+
* Extend roundedRect with individual cutting through rOffset.
|
|
2133
|
+
* @internal
|
|
2134
|
+
*/
|
|
2135
|
+
function roundedRect(x, y, width, height, options = {}) {
|
|
2136
|
+
const path = oldRoundedRect(x, y, width, height, options), { r = 0, brBoxHeight = height, brBoxY = y } = options, brOffsetTop = y - brBoxY, brOffsetBtm = (brBoxY + brBoxHeight) - (y + height),
|
|
2137
|
+
// When the distance to the border-radius box is greater than the r
|
|
2138
|
+
// itself, it means no border radius. The -0.1 accounts for float
|
|
2139
|
+
// rounding errors.
|
|
2140
|
+
rTop = (brOffsetTop - r) > -0.1 ? 0 : r, rBtm = (brOffsetBtm - r) > -0.1 ? 0 : r, cutTop = Math.max(rTop && brOffsetTop, 0), cutBtm = Math.max(rBtm && brOffsetBtm, 0);
|
|
2141
|
+
/*
|
|
2142
|
+
|
|
2143
|
+
The naming of control points:
|
|
2144
|
+
|
|
2145
|
+
/ a -------- b \
|
|
2146
|
+
/ \
|
|
2147
|
+
h c
|
|
2148
|
+
| |
|
|
2149
|
+
| |
|
|
2150
|
+
| |
|
|
2151
|
+
g d
|
|
2152
|
+
\ /
|
|
2153
|
+
\ f -------- e /
|
|
2154
|
+
|
|
2155
|
+
*/
|
|
2156
|
+
const a = [x + rTop, y], b = [x + width - rTop, y], c = [x + width, y + rTop], d = [
|
|
2157
|
+
x + width, y + height - rBtm
|
|
2158
|
+
], e = [
|
|
2159
|
+
x + width - rBtm,
|
|
2160
|
+
y + height
|
|
2161
|
+
], f = [x + rBtm, y + height], g = [x, y + height - rBtm], h = [x, y + rTop];
|
|
2162
|
+
const applyPythagoras = (r, altitude) => Math.sqrt(Math.pow(r, 2) - Math.pow(altitude, 2));
|
|
2163
|
+
// Inside stacks, cut off part of the top
|
|
2164
|
+
if (cutTop) {
|
|
2165
|
+
const base = applyPythagoras(rTop, rTop - cutTop);
|
|
2166
|
+
a[0] -= base;
|
|
2167
|
+
b[0] += base;
|
|
2168
|
+
c[1] = h[1] = y + rTop - cutTop;
|
|
2169
|
+
}
|
|
2170
|
+
// Column is lower than the radius. Cut off bottom inside the top
|
|
2171
|
+
// radius.
|
|
2172
|
+
if (height < rTop - cutTop) {
|
|
2173
|
+
const base = applyPythagoras(rTop, rTop - cutTop - height);
|
|
2174
|
+
c[0] = d[0] = x + width - rTop + base;
|
|
2175
|
+
e[0] = Math.min(c[0], e[0]);
|
|
2176
|
+
f[0] = Math.max(d[0], f[0]);
|
|
2177
|
+
g[0] = h[0] = x + rTop - base;
|
|
2178
|
+
c[1] = h[1] = y + height;
|
|
2179
|
+
}
|
|
2180
|
+
// Inside stacks, cut off part of the bottom
|
|
2181
|
+
if (cutBtm) {
|
|
2182
|
+
const base = applyPythagoras(rBtm, rBtm - cutBtm);
|
|
2183
|
+
e[0] += base;
|
|
2184
|
+
f[0] -= base;
|
|
2185
|
+
d[1] = g[1] = y + height - rBtm + cutBtm;
|
|
2186
|
+
}
|
|
2187
|
+
// Cut off top inside the bottom radius
|
|
2188
|
+
if (height < rBtm - cutBtm) {
|
|
2189
|
+
const base = applyPythagoras(rBtm, rBtm - cutBtm - height);
|
|
2190
|
+
c[0] = d[0] = x + width - rBtm + base;
|
|
2191
|
+
b[0] = Math.min(c[0], b[0]);
|
|
2192
|
+
a[0] = Math.max(d[0], a[0]);
|
|
2193
|
+
g[0] = h[0] = x + rBtm - base;
|
|
2194
|
+
d[1] = g[1] = y;
|
|
2195
|
+
}
|
|
2196
|
+
// Preserve the box for data labels
|
|
2197
|
+
path.length = 0;
|
|
2198
|
+
path.push(['M', ...a],
|
|
2199
|
+
// Top side
|
|
2200
|
+
['L', ...b],
|
|
2201
|
+
// Top right corner
|
|
2202
|
+
['A', rTop, rTop, 0, 0, 1, ...c],
|
|
2203
|
+
// Right side
|
|
2204
|
+
['L', ...d],
|
|
2205
|
+
// Bottom right corner
|
|
2206
|
+
['A', rBtm, rBtm, 0, 0, 1, ...e],
|
|
2207
|
+
// Bottom side
|
|
2208
|
+
['L', ...f],
|
|
2209
|
+
// Bottom left corner
|
|
2210
|
+
['A', rBtm, rBtm, 0, 0, 1, ...g],
|
|
2211
|
+
// Left side
|
|
2212
|
+
['L', ...h],
|
|
2213
|
+
// Top left corner
|
|
2214
|
+
['A', rTop, rTop, 0, 0, 1, ...a], ['Z']);
|
|
2215
|
+
return path;
|
|
2216
|
+
}
|
|
2217
|
+
/* *
|
|
2218
|
+
*
|
|
2219
|
+
* API Declarations
|
|
2220
|
+
*
|
|
2221
|
+
* */
|
|
2222
|
+
/**
|
|
2223
|
+
* Detailed options for border radius.
|
|
2224
|
+
*
|
|
2225
|
+
* @sample {highcharts} highcharts/plotoptions/column-borderradius/
|
|
2226
|
+
* Rounded columns
|
|
2227
|
+
* @sample highcharts/plotoptions/series-border-radius
|
|
2228
|
+
* Column and pie with rounded border
|
|
2229
|
+
*
|
|
2230
|
+
* @interface Highcharts.BorderRadiusOptionsObject
|
|
2231
|
+
*/ /**
|
|
2232
|
+
* The border radius. A number signifies pixels. A percentage string, like for
|
|
2233
|
+
* example `50%`, signifies a relative size. For columns this is relative to the
|
|
2234
|
+
* column width, for pies it is relative to the radius and the inner radius.
|
|
2235
|
+
*
|
|
2236
|
+
* @sample {highcharts} highcharts/plotoptions/column-borderradius/
|
|
2237
|
+
* Rounded columns
|
|
2238
|
+
* @sample highcharts/plotoptions/series-border-radius
|
|
2239
|
+
* Column and pie with rounded border
|
|
2240
|
+
*
|
|
2241
|
+
* @name Highcharts.BorderRadiusOptionsObject#radius
|
|
2242
|
+
* @type {string|number|undefined}
|
|
2243
|
+
*/ /**
|
|
2244
|
+
* The scope of the rounding for column charts or plot bands. In a stacked
|
|
2245
|
+
* column chart, the value `point` means each single point will get rounded
|
|
2246
|
+
* corners. The value `stack` means the rounding will apply to the full
|
|
2247
|
+
* stack, so that only points close to the top or bottom will receive
|
|
2248
|
+
* rounding.
|
|
2249
|
+
*
|
|
2250
|
+
* Similarly, for plot bands, the `individual` value means each plot band
|
|
2251
|
+
* will get rounded corners.
|
|
2252
|
+
*
|
|
2253
|
+
* @sample {highcharts} highcharts/plotoptions/column-borderradius/
|
|
2254
|
+
* Rounded columns
|
|
2255
|
+
*
|
|
2256
|
+
* @name Highcharts.BorderRadiusOptionsObject#scope
|
|
2257
|
+
* @type {"individual"|"point"|"stack"|undefined}
|
|
2258
|
+
*/ /**
|
|
2259
|
+
* For column charts, where in the point or stack to apply rounding. The `end`
|
|
2260
|
+
* value means only those corners at the point value will be rounded, leaving
|
|
2261
|
+
* the corners at the base or threshold unrounded. This is the most intuitive
|
|
2262
|
+
* behavior. The `all` value means also the base will be rounded.
|
|
2263
|
+
*
|
|
2264
|
+
* @sample {highcharts} highcharts/plotoptions/column-borderradius-where-all
|
|
2265
|
+
* Rounding on all corners
|
|
2266
|
+
*
|
|
2267
|
+
* @name Highcharts.BorderRadiusOptionsObject#where
|
|
2268
|
+
* @type {"all"|"end"|undefined}
|
|
2269
|
+
* @default end
|
|
2270
|
+
*/
|
|
2271
|
+
(''); // Keeps doclets above in JS file
|
|
2272
|
+
|
|
2273
|
+
;// ./code/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js
|
|
2274
|
+
/* *
|
|
2275
|
+
*
|
|
2276
|
+
* (c) 2010-2026 Highsoft AS
|
|
2277
|
+
* Author: Torstein Hønsi
|
|
2278
|
+
*
|
|
2279
|
+
* Integration of this software requires a license.
|
|
2280
|
+
* - For commercial use, see www.highcharts.com/license
|
|
2281
|
+
* - For non-commercial, see www.highcharts.com/license-eula
|
|
2282
|
+
*
|
|
2283
|
+
*
|
|
2284
|
+
* */
|
|
2285
|
+
|
|
2286
|
+
/* *
|
|
2287
|
+
*
|
|
2288
|
+
* API Options
|
|
2289
|
+
*
|
|
2290
|
+
* */
|
|
2291
|
+
/**
|
|
2292
|
+
* A box plot is a convenient way of depicting groups of data through their
|
|
2293
|
+
* five-number summaries: the smallest observation (sample minimum), lower
|
|
2294
|
+
* quartile (Q1), median (Q2), upper quartile (Q3), and largest observation
|
|
2295
|
+
* (sample maximum).
|
|
2296
|
+
*
|
|
2297
|
+
* @sample highcharts/demo/box-plot/
|
|
2298
|
+
* Box plot
|
|
2299
|
+
* @sample {highcharts} highcharts/css/boxplot/
|
|
2300
|
+
* Box plot in styled mode
|
|
2301
|
+
* @sample {highcharts} highcharts/series-scatter/jitter-boxplot
|
|
2302
|
+
* Jittered scatter plot on top of a box plot
|
|
2303
|
+
*
|
|
2304
|
+
* @extends plotOptions.column
|
|
2305
|
+
* @excluding borderColor, borderWidth, groupZPadding,
|
|
2306
|
+
* states, boostThreshold, boostBlending
|
|
2307
|
+
* @product highcharts
|
|
2308
|
+
* @requires highcharts-more
|
|
2309
|
+
* @optionparent plotOptions.boxplot
|
|
2310
|
+
*/
|
|
2311
|
+
const BoxPlotSeriesDefaults = {
|
|
2312
|
+
/**
|
|
2313
|
+
* The corner radius of the border surrounding the box. A number
|
|
2314
|
+
* signifies pixels. A percentage string, like for example `50%`, signifies
|
|
2315
|
+
* a size relative to the box width.
|
|
2316
|
+
*
|
|
2317
|
+
* @sample {highcharts} highcharts/demo/violin-plot/
|
|
2318
|
+
* Box plot with rounded corners
|
|
2319
|
+
*
|
|
2320
|
+
* @type {number|string|Highcharts.BorderRadiusOptionsObject}
|
|
2321
|
+
* @default 0
|
|
2322
|
+
* @since 13.0.1
|
|
2323
|
+
* @product highcharts
|
|
2324
|
+
*/
|
|
2325
|
+
borderRadius: 0,
|
|
2326
|
+
/**
|
|
2327
|
+
* The Y axis value to serve as the base for the columns, for
|
|
2328
|
+
* distinguishing between values above and below a threshold. If `null`,
|
|
2329
|
+
* the columns extend from the padding Y axis minimum.
|
|
2330
|
+
*
|
|
2331
|
+
* @type {number|null}
|
|
2332
|
+
* @default null
|
|
2333
|
+
* @since 2.0
|
|
2334
|
+
* @product highcharts
|
|
2335
|
+
*/
|
|
2336
|
+
threshold: null,
|
|
2337
|
+
tooltip: {
|
|
1839
2338
|
pointFormat: '<span style="color:{point.color}">\u25CF</span> <b>' +
|
|
1840
2339
|
'{series.name}</b><br/>' +
|
|
1841
2340
|
'Maximum: {point.high}<br/>' +
|
|
@@ -2035,6 +2534,24 @@ const BoxPlotSeriesDefaults = {
|
|
|
2035
2534
|
* @default high
|
|
2036
2535
|
* @apioption plotOptions.boxplot.colorKey
|
|
2037
2536
|
*/
|
|
2537
|
+
/**
|
|
2538
|
+
* The point key used to position a box plot data label.
|
|
2539
|
+
*
|
|
2540
|
+
* @typedef {"low"|"q1"|"median"|"q3"|"high"} Highcharts.BoxPlotPointValKey
|
|
2541
|
+
*/
|
|
2542
|
+
/**
|
|
2543
|
+
* The point key to use for positioning this data label.
|
|
2544
|
+
* Possible values are `low`, `q1`, `median`, `q3` and `high`.
|
|
2545
|
+
*
|
|
2546
|
+
* @sample {highcharts} highcharts/series-boxplot/data-labels/
|
|
2547
|
+
* Multiple data labels
|
|
2548
|
+
*
|
|
2549
|
+
* @type {Highcharts.BoxPlotPointValKey}
|
|
2550
|
+
* @default high
|
|
2551
|
+
* @validvalue ["low", "q1", "median", "q3", "high"]
|
|
2552
|
+
* @product highcharts
|
|
2553
|
+
* @apioption plotOptions.boxplot.dataLabels.alignToKey
|
|
2554
|
+
*/
|
|
2038
2555
|
/**
|
|
2039
2556
|
* The color of the whiskers, the horizontal lines marking low and high
|
|
2040
2557
|
* values. When `undefined`, the general series color is used.
|
|
@@ -2246,9 +2763,6 @@ const BoxPlotSeriesDefaults = {
|
|
|
2246
2763
|
* */
|
|
2247
2764
|
/* harmony default export */ const BoxPlot_BoxPlotSeriesDefaults = (BoxPlotSeriesDefaults);
|
|
2248
2765
|
|
|
2249
|
-
;// external ["./highcharts.src.js","default","Series","types","column"]
|
|
2250
|
-
const external_highcharts_src_js_default_Series_types_column_namespaceObject = __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__["default"].Series.types.column;
|
|
2251
|
-
var external_highcharts_src_js_default_Series_types_column_default = /*#__PURE__*/__webpack_require__.n(external_highcharts_src_js_default_Series_types_column_namespaceObject);
|
|
2252
2766
|
;// ./code/es-modules/Series/BoxPlot/BoxPlotSeries.js
|
|
2253
2767
|
/* *
|
|
2254
2768
|
*
|
|
@@ -2265,9 +2779,11 @@ var external_highcharts_src_js_default_Series_types_column_default = /*#__PURE__
|
|
|
2265
2779
|
|
|
2266
2780
|
|
|
2267
2781
|
|
|
2782
|
+
|
|
2268
2783
|
const { noop: BoxPlotSeries_noop } = (external_highcharts_src_js_default_default());
|
|
2269
2784
|
|
|
2270
2785
|
|
|
2786
|
+
|
|
2271
2787
|
/* *
|
|
2272
2788
|
*
|
|
2273
2789
|
* Class
|
|
@@ -2323,8 +2839,9 @@ class BoxPlotSeries extends (external_highcharts_src_js_default_Series_types_col
|
|
|
2323
2839
|
// Do the translation on each point dimension
|
|
2324
2840
|
series.points.forEach(function (point) {
|
|
2325
2841
|
pointArrayMap.forEach(function (key) {
|
|
2326
|
-
|
|
2327
|
-
|
|
2842
|
+
const value = point[key];
|
|
2843
|
+
if (value !== null) {
|
|
2844
|
+
point[`${key}Plot`] = yAxis.translate(value, false, true, false, true);
|
|
2328
2845
|
}
|
|
2329
2846
|
});
|
|
2330
2847
|
point.plotHigh = point.highPlot; // For data label validation
|
|
@@ -2376,7 +2893,10 @@ class BoxPlotSeries extends (external_highcharts_src_js_default_Series_types_col
|
|
|
2376
2893
|
// Stem attributes
|
|
2377
2894
|
stemAttr.stroke =
|
|
2378
2895
|
point.stemColor || options.stemColor || color;
|
|
2379
|
-
stemAttr['stroke-width'] =
|
|
2896
|
+
stemAttr['stroke-width'] =
|
|
2897
|
+
point.stemWidth ??
|
|
2898
|
+
options.stemWidth ??
|
|
2899
|
+
options.lineWidth;
|
|
2380
2900
|
stemAttr.dashstyle = (point.stemDashStyle ||
|
|
2381
2901
|
options.stemDashStyle ||
|
|
2382
2902
|
options.dashStyle);
|
|
@@ -2386,7 +2906,10 @@ class BoxPlotSeries extends (external_highcharts_src_js_default_Series_types_col
|
|
|
2386
2906
|
whiskersAttr.stroke = (point.whiskerColor ||
|
|
2387
2907
|
options.whiskerColor ||
|
|
2388
2908
|
color);
|
|
2389
|
-
whiskersAttr['stroke-width'] =
|
|
2909
|
+
whiskersAttr['stroke-width'] =
|
|
2910
|
+
point.whiskerWidth ??
|
|
2911
|
+
options.whiskerWidth ??
|
|
2912
|
+
options.lineWidth;
|
|
2390
2913
|
whiskersAttr.dashstyle = (point.whiskerDashStyle ||
|
|
2391
2914
|
options.whiskerDashStyle ||
|
|
2392
2915
|
options.dashStyle);
|
|
@@ -2407,25 +2930,28 @@ class BoxPlotSeries extends (external_highcharts_src_js_default_Series_types_col
|
|
|
2407
2930
|
medianAttr.stroke = (point.medianColor ||
|
|
2408
2931
|
options.medianColor ||
|
|
2409
2932
|
color);
|
|
2410
|
-
medianAttr['stroke-width'] =
|
|
2933
|
+
medianAttr['stroke-width'] =
|
|
2934
|
+
point.medianWidth ??
|
|
2935
|
+
options.medianWidth ??
|
|
2936
|
+
options.lineWidth;
|
|
2411
2937
|
medianAttr.dashstyle = (point.medianDashStyle ||
|
|
2412
2938
|
options.medianDashStyle ||
|
|
2413
2939
|
options.dashStyle);
|
|
2414
2940
|
point.medianShape.attr(medianAttr);
|
|
2415
2941
|
}
|
|
2416
|
-
let d;
|
|
2417
2942
|
// The stem
|
|
2418
2943
|
const stemX = (0,external_highcharts_src_js_default_namespaceObject.crisp)((point.plotX || 0) + (series.pointXOffset || 0) +
|
|
2419
2944
|
((series.barW || 0) / 2), point.stem.strokeWidth());
|
|
2420
|
-
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
|
|
2425
|
-
|
|
2426
|
-
|
|
2427
|
-
|
|
2428
|
-
|
|
2945
|
+
point.stem[verb]({
|
|
2946
|
+
d: [
|
|
2947
|
+
// Stem up
|
|
2948
|
+
['M', stemX, q3Plot],
|
|
2949
|
+
['L', stemX, highPlot],
|
|
2950
|
+
// Stem down
|
|
2951
|
+
['M', stemX, q1Plot],
|
|
2952
|
+
['L', stemX, lowPlot]
|
|
2953
|
+
]
|
|
2954
|
+
});
|
|
2429
2955
|
// The box
|
|
2430
2956
|
if (doQuartiles) {
|
|
2431
2957
|
const boxStrokeWidth = point.box.strokeWidth();
|
|
@@ -2433,15 +2959,11 @@ class BoxPlotSeries extends (external_highcharts_src_js_default_Series_types_col
|
|
|
2433
2959
|
q3Plot = (0,external_highcharts_src_js_default_namespaceObject.crisp)(q3Plot, boxStrokeWidth);
|
|
2434
2960
|
x = (0,external_highcharts_src_js_default_namespaceObject.crisp)(x, boxStrokeWidth);
|
|
2435
2961
|
right = (0,external_highcharts_src_js_default_namespaceObject.crisp)(right, boxStrokeWidth);
|
|
2436
|
-
|
|
2437
|
-
|
|
2438
|
-
|
|
2439
|
-
|
|
2440
|
-
|
|
2441
|
-
['L', x, q3Plot],
|
|
2442
|
-
['Z']
|
|
2443
|
-
];
|
|
2444
|
-
point.box[verb]({ d });
|
|
2962
|
+
// Optionally round the corners of the box
|
|
2963
|
+
const r = Math.min((0,external_highcharts_src_js_default_namespaceObject.relativeLength)(borderRadiusObject(options.borderRadius).radius, right - x), (right - x) / 2, Math.abs(q1Plot - q3Plot) / 2);
|
|
2964
|
+
point.box[verb]({
|
|
2965
|
+
d: renderer.symbols.roundedRect(x, Math.min(q1Plot, q3Plot), right - x, Math.abs(q1Plot - q3Plot), { r })
|
|
2966
|
+
});
|
|
2445
2967
|
}
|
|
2446
2968
|
// The whiskers
|
|
2447
2969
|
if (pointWhiskerLength) {
|
|
@@ -2454,11 +2976,12 @@ class BoxPlotSeries extends (external_highcharts_src_js_default_Series_types_col
|
|
|
2454
2976
|
}
|
|
2455
2977
|
// The median
|
|
2456
2978
|
medianPlot = (0,external_highcharts_src_js_default_namespaceObject.crisp)(point.medianPlot, point.medianShape.strokeWidth());
|
|
2457
|
-
|
|
2458
|
-
[
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2979
|
+
point.medianShape[verb]({
|
|
2980
|
+
d: [
|
|
2981
|
+
['M', x, medianPlot],
|
|
2982
|
+
['L', right, medianPlot]
|
|
2983
|
+
]
|
|
2984
|
+
});
|
|
2462
2985
|
}
|
|
2463
2986
|
}
|
|
2464
2987
|
}
|
|
@@ -2478,10 +3001,9 @@ BoxPlotSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceOb
|
|
|
2478
3001
|
pointArrayMap: ['low', 'q1', 'median', 'q3', 'high'],
|
|
2479
3002
|
// Defines the top of the tracker
|
|
2480
3003
|
pointValKey: 'high',
|
|
2481
|
-
// Disable data labels for box plot
|
|
2482
|
-
drawDataLabels: BoxPlotSeries_noop,
|
|
2483
3004
|
setStackedPoints: BoxPlotSeries_noop // #3890
|
|
2484
3005
|
});
|
|
3006
|
+
Series_RangeDataLabel.compose(BoxPlotSeries);
|
|
2485
3007
|
external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('boxplot', BoxPlotSeries);
|
|
2486
3008
|
/* *
|
|
2487
3009
|
*
|
|
@@ -2847,7 +3369,7 @@ class BubbleLegendItem {
|
|
|
2847
3369
|
* Legend instance
|
|
2848
3370
|
*/
|
|
2849
3371
|
drawLegendSymbol(legend) {
|
|
2850
|
-
const itemDistance = (
|
|
3372
|
+
const itemDistance = (legend.options.itemDistance ?? 20), legendItem = this.legendItem || {}, options = this.options, ranges = options.ranges, connectorDistance = options.connectorDistance;
|
|
2851
3373
|
let connectorSpace;
|
|
2852
3374
|
// Do not create bubbleLegend now if ranges or ranges values are not
|
|
2853
3375
|
// specified or if are empty array.
|
|
@@ -2893,13 +3415,17 @@ class BubbleLegendItem {
|
|
|
2893
3415
|
// Allow to parts of styles be used individually for range
|
|
2894
3416
|
ranges.forEach(function (range, i) {
|
|
2895
3417
|
if (!styledMode) {
|
|
2896
|
-
bubbleAttribs.stroke =
|
|
3418
|
+
bubbleAttribs.stroke =
|
|
3419
|
+
range.borderColor ?? options.borderColor ?? series.color;
|
|
2897
3420
|
bubbleAttribs.fill = range.color || options.color;
|
|
2898
3421
|
if (!bubbleAttribs.fill) {
|
|
2899
3422
|
bubbleAttribs.fill = series.color;
|
|
2900
3423
|
bubbleAttribs['fill-opacity'] = fillOpacity ?? 1;
|
|
2901
3424
|
}
|
|
2902
|
-
connectorAttribs.stroke =
|
|
3425
|
+
connectorAttribs.stroke =
|
|
3426
|
+
range.connectorColor ??
|
|
3427
|
+
options.connectorColor ??
|
|
3428
|
+
series.color;
|
|
2903
3429
|
}
|
|
2904
3430
|
// Set options needed for rendering each range
|
|
2905
3431
|
ranges[i].radius = this.getRangeRadius(range.value);
|
|
@@ -3096,10 +3622,10 @@ class BubbleLegendItem {
|
|
|
3096
3622
|
if (s.isBubble && !s.ignoreSeries) {
|
|
3097
3623
|
zData = s.getColumn('z').filter(external_highcharts_src_js_default_namespaceObject.isNumber);
|
|
3098
3624
|
if (zData.length) {
|
|
3099
|
-
minZ = (
|
|
3625
|
+
minZ = (s.options.zMin ?? Math.min(minZ, Math.max((0,external_highcharts_src_js_default_namespaceObject.arrayMin)(zData), s.options.displayNegative === false ?
|
|
3100
3626
|
s.options.zThreshold :
|
|
3101
3627
|
-Number.MAX_VALUE)));
|
|
3102
|
-
maxZ = (
|
|
3628
|
+
maxZ = (s.options.zMax ?? Math.max(maxZ, (0,external_highcharts_src_js_default_namespaceObject.arrayMax)(zData)));
|
|
3103
3629
|
}
|
|
3104
3630
|
}
|
|
3105
3631
|
});
|
|
@@ -3563,7 +4089,7 @@ class BubblePoint extends ScatterPoint {
|
|
|
3563
4089
|
|
|
3564
4090
|
const { composed: BubbleSeries_composed, noop: BubbleSeries_noop } = (external_highcharts_src_js_default_default());
|
|
3565
4091
|
|
|
3566
|
-
const { series: Series, seriesTypes: { column: { prototype:
|
|
4092
|
+
const { series: Series, seriesTypes: { column: { prototype: columnProto }, scatter: ScatterSeries } } = (external_highcharts_src_js_default_SeriesRegistry_default());
|
|
3567
4093
|
|
|
3568
4094
|
/* *
|
|
3569
4095
|
*
|
|
@@ -3617,7 +4143,8 @@ function onAxisFoundExtremes() {
|
|
|
3617
4143
|
['min', 'userMin', pxMin],
|
|
3618
4144
|
['max', 'userMax', pxMax]
|
|
3619
4145
|
].forEach((keys) => {
|
|
3620
|
-
if (typeof (
|
|
4146
|
+
if (typeof (this.options[keys[0]] ??
|
|
4147
|
+
this[keys[1]]) === 'undefined') {
|
|
3621
4148
|
this[keys[0]] += keys[2] / transA;
|
|
3622
4149
|
}
|
|
3623
4150
|
});
|
|
@@ -3714,10 +4241,10 @@ class BubbleSeries extends ScatterSeries {
|
|
|
3714
4241
|
if (otherSeries.bubblePadding && otherSeries.reserveSpace()) {
|
|
3715
4242
|
const zExtremes = (otherSeries.onPoint || otherSeries).getZExtremes();
|
|
3716
4243
|
if (zExtremes) {
|
|
3717
|
-
//
|
|
4244
|
+
// Use nullish coalescing because min or max can be 0.
|
|
3718
4245
|
// #17280
|
|
3719
|
-
zMin = Math.min((
|
|
3720
|
-
zMax = Math.max((
|
|
4246
|
+
zMin = Math.min((zMin ?? zExtremes.zMin), zExtremes.zMin);
|
|
4247
|
+
zMax = Math.max((zMax ?? zExtremes.zMax), zExtremes.zMax);
|
|
3721
4248
|
valid = true;
|
|
3722
4249
|
}
|
|
3723
4250
|
}
|
|
@@ -3855,19 +4382,19 @@ class BubbleSeries extends ScatterSeries {
|
|
|
3855
4382
|
}
|
|
3856
4383
|
return isPercent ? smallestSize * length / 100 : length;
|
|
3857
4384
|
};
|
|
3858
|
-
const minPxSize = getPxSize(
|
|
4385
|
+
const minPxSize = getPxSize(this.options.minSize ?? 8);
|
|
3859
4386
|
// Prioritize min size if conflict to make sure bubbles are
|
|
3860
4387
|
// always visible. #5873
|
|
3861
|
-
const maxPxSize = Math.max(getPxSize(
|
|
4388
|
+
const maxPxSize = Math.max(getPxSize(this.options.maxSize ?? '20%'), minPxSize);
|
|
3862
4389
|
return { minPxSize, maxPxSize };
|
|
3863
4390
|
}
|
|
3864
4391
|
getZExtremes() {
|
|
3865
4392
|
const options = this.options, zData = this.getColumn('z').filter(external_highcharts_src_js_default_namespaceObject.isNumber);
|
|
3866
4393
|
if (zData.length) {
|
|
3867
|
-
const zMin = (
|
|
4394
|
+
const zMin = (options.zMin ?? (0,external_highcharts_src_js_default_namespaceObject.clamp)((0,external_highcharts_src_js_default_namespaceObject.arrayMin)(zData), options.displayNegative === false ?
|
|
3868
4395
|
(options.zThreshold || 0) :
|
|
3869
4396
|
-Number.MAX_VALUE, Number.MAX_VALUE));
|
|
3870
|
-
const zMax = (
|
|
4397
|
+
const zMax = (options.zMax ?? (0,external_highcharts_src_js_default_namespaceObject.arrayMax)(zData));
|
|
3871
4398
|
if ((0,external_highcharts_src_js_default_namespaceObject.isNumber)(zMin) && (0,external_highcharts_src_js_default_namespaceObject.isNumber)(zMax)) {
|
|
3872
4399
|
return { zMin, zMax };
|
|
3873
4400
|
}
|
|
@@ -3939,6 +4466,21 @@ BubbleSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObj
|
|
|
3939
4466
|
* @since 6.1.0
|
|
3940
4467
|
*/
|
|
3941
4468
|
animationLimit: 250,
|
|
4469
|
+
/**
|
|
4470
|
+
* When using automatic point colors pulled from the global
|
|
4471
|
+
* [colors](colors) or series-specific
|
|
4472
|
+
* [plotOptions.bubble.colors](series.colors) collections, this option
|
|
4473
|
+
* determines whether the chart should receive one color per series or
|
|
4474
|
+
* one color per point.
|
|
4475
|
+
*
|
|
4476
|
+
* In styled mode, the `colors` or `series.colors` arrays are not
|
|
4477
|
+
* supported, and instead this option gives the points individual color
|
|
4478
|
+
* class names on the form `highcharts-color-{n}`.
|
|
4479
|
+
*
|
|
4480
|
+
* @type {boolean}
|
|
4481
|
+
* @default false
|
|
4482
|
+
* @apioption plotOptions.bubble.colorByPoint
|
|
4483
|
+
*/
|
|
3942
4484
|
/**
|
|
3943
4485
|
* Whether to display negative sized bubbles. The threshold is given
|
|
3944
4486
|
* by the [zThreshold](#plotOptions.bubble.zThreshold) option, and negative
|
|
@@ -4142,7 +4684,7 @@ BubbleSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObj
|
|
|
4142
4684
|
zoneAxis: 'z'
|
|
4143
4685
|
});
|
|
4144
4686
|
(0,external_highcharts_src_js_default_namespaceObject.extend)(BubbleSeries.prototype, {
|
|
4145
|
-
alignDataLabel:
|
|
4687
|
+
alignDataLabel: columnProto.alignDataLabel,
|
|
4146
4688
|
applyZones: BubbleSeries_noop,
|
|
4147
4689
|
bubblePadding: true,
|
|
4148
4690
|
isBubble: true,
|
|
@@ -4299,6 +4841,7 @@ const { seriesTypes: { column: { prototype: { pointClass: { prototype: ColumnRan
|
|
|
4299
4841
|
* Class
|
|
4300
4842
|
*
|
|
4301
4843
|
* */
|
|
4844
|
+
/** @internal */
|
|
4302
4845
|
class ColumnRangePoint extends ColumnRangePoint_AreaRangePoint {
|
|
4303
4846
|
/* *
|
|
4304
4847
|
*
|
|
@@ -4317,9 +4860,10 @@ class ColumnRangePoint extends ColumnRangePoint_AreaRangePoint {
|
|
|
4317
4860
|
* Default Export
|
|
4318
4861
|
*
|
|
4319
4862
|
* */
|
|
4863
|
+
/** @internal */
|
|
4320
4864
|
/* harmony default export */ const ColumnRange_ColumnRangePoint = (ColumnRangePoint);
|
|
4321
4865
|
|
|
4322
|
-
;// ./code/es-modules/Series/ColumnRange/
|
|
4866
|
+
;// ./code/es-modules/Series/ColumnRange/ColumnRangeSeriesDefaults.js
|
|
4323
4867
|
/* *
|
|
4324
4868
|
*
|
|
4325
4869
|
* (c) 2010-2026 Highsoft AS
|
|
@@ -4332,15 +4876,9 @@ class ColumnRangePoint extends ColumnRangePoint_AreaRangePoint {
|
|
|
4332
4876
|
*
|
|
4333
4877
|
* */
|
|
4334
4878
|
|
|
4335
|
-
|
|
4336
|
-
|
|
4337
|
-
const { noop: ColumnRangeSeries_noop } = (external_highcharts_src_js_default_default());
|
|
4338
|
-
|
|
4339
|
-
const { seriesTypes: { arearange: ColumnRangeSeries_AreaRangeSeries, column: ColumnSeries, column: { prototype: ColumnRangeSeries_columnProto } } } = (external_highcharts_src_js_default_SeriesRegistry_default());
|
|
4340
|
-
|
|
4341
4879
|
/* *
|
|
4342
4880
|
*
|
|
4343
|
-
*
|
|
4881
|
+
* API Options
|
|
4344
4882
|
*
|
|
4345
4883
|
* */
|
|
4346
4884
|
/**
|
|
@@ -4358,7 +4896,7 @@ const { seriesTypes: { arearange: ColumnRangeSeries_AreaRangeSeries, column: Col
|
|
|
4358
4896
|
* @requires highcharts-more
|
|
4359
4897
|
* @optionparent plotOptions.columnrange
|
|
4360
4898
|
*/
|
|
4361
|
-
const
|
|
4899
|
+
const ColumnRangeSeriesDefaults = {
|
|
4362
4900
|
borderRadius: {
|
|
4363
4901
|
where: 'all'
|
|
4364
4902
|
},
|
|
@@ -4385,6 +4923,116 @@ const columnRangeOptions = {
|
|
|
4385
4923
|
}
|
|
4386
4924
|
}
|
|
4387
4925
|
};
|
|
4926
|
+
/**
|
|
4927
|
+
* A `columnrange` series. If the [type](#series.columnrange.type)
|
|
4928
|
+
* option is not specified, it is inherited from
|
|
4929
|
+
* [chart.type](#chart.type).
|
|
4930
|
+
*
|
|
4931
|
+
* @extends series,plotOptions.columnrange
|
|
4932
|
+
* @excluding dataParser, dataURL, stack, stacking
|
|
4933
|
+
* @product highcharts highstock
|
|
4934
|
+
* @requires highcharts-more
|
|
4935
|
+
* @apioption series.columnrange
|
|
4936
|
+
*/
|
|
4937
|
+
/**
|
|
4938
|
+
* An array of data points for the series. For the `columnrange` series
|
|
4939
|
+
* type, points can be given in the following ways:
|
|
4940
|
+
*
|
|
4941
|
+
* 1. An array of arrays with 3 or 2 values. In this case, the values correspond
|
|
4942
|
+
* to `x,low,high`. If the first value is a string, it is applied as the name
|
|
4943
|
+
* of the point, and the `x` value is inferred. The `x` value can also be
|
|
4944
|
+
* omitted, in which case the inner arrays should be of length 2\. Then the
|
|
4945
|
+
* `x` value is automatically calculated, either starting at 0 and
|
|
4946
|
+
* incremented by 1, or from `pointStart` and `pointInterval` given in the
|
|
4947
|
+
* series options.
|
|
4948
|
+
* ```js
|
|
4949
|
+
* data: [
|
|
4950
|
+
* [0, 4, 2],
|
|
4951
|
+
* [1, 2, 1],
|
|
4952
|
+
* [2, 9, 10]
|
|
4953
|
+
* ]
|
|
4954
|
+
* ```
|
|
4955
|
+
*
|
|
4956
|
+
* 2. An array of objects with named values. The following snippet shows only a
|
|
4957
|
+
* few settings, see the complete options set below. If the total number of
|
|
4958
|
+
* data points exceeds the series'
|
|
4959
|
+
* [turboThreshold](#series.columnrange.turboThreshold), this option is not
|
|
4960
|
+
* available.
|
|
4961
|
+
* ```js
|
|
4962
|
+
* data: [{
|
|
4963
|
+
* x: 1,
|
|
4964
|
+
* low: 0,
|
|
4965
|
+
* high: 4,
|
|
4966
|
+
* name: "Point2",
|
|
4967
|
+
* color: "#00FF00"
|
|
4968
|
+
* }, {
|
|
4969
|
+
* x: 1,
|
|
4970
|
+
* low: 5,
|
|
4971
|
+
* high: 3,
|
|
4972
|
+
* name: "Point1",
|
|
4973
|
+
* color: "#FF00FF"
|
|
4974
|
+
* }]
|
|
4975
|
+
* ```
|
|
4976
|
+
*
|
|
4977
|
+
* @sample {highcharts} highcharts/series/data-array-of-arrays/
|
|
4978
|
+
* Arrays of numeric x and y
|
|
4979
|
+
* @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/
|
|
4980
|
+
* Arrays of datetime x and y
|
|
4981
|
+
* @sample {highcharts} highcharts/series/data-array-of-name-value/
|
|
4982
|
+
* Arrays of point.name and y
|
|
4983
|
+
* @sample {highcharts} highcharts/series/data-array-of-objects/
|
|
4984
|
+
* Config objects
|
|
4985
|
+
*
|
|
4986
|
+
* @basic
|
|
4987
|
+
* @type {Array<Array<(number|string),number>|Array<(number|string),number,number>|*>}
|
|
4988
|
+
* @extends series.arearange.data
|
|
4989
|
+
* @excluding marker
|
|
4990
|
+
* @product highcharts highstock
|
|
4991
|
+
* @apioption series.columnrange.data
|
|
4992
|
+
*/
|
|
4993
|
+
/**
|
|
4994
|
+
* @extends series.columnrange.dataLabels
|
|
4995
|
+
* @product highcharts highstock
|
|
4996
|
+
* @apioption series.columnrange.data.dataLabels
|
|
4997
|
+
*/
|
|
4998
|
+
/**
|
|
4999
|
+
* @excluding halo, lineWidth, lineWidthPlus, marker
|
|
5000
|
+
* @product highcharts highstock
|
|
5001
|
+
* @apioption series.columnrange.states.hover
|
|
5002
|
+
*/
|
|
5003
|
+
/**
|
|
5004
|
+
* @excluding halo, lineWidth, lineWidthPlus, marker
|
|
5005
|
+
* @product highcharts highstock
|
|
5006
|
+
* @apioption series.columnrange.states.select
|
|
5007
|
+
*/
|
|
5008
|
+
''; // Adds doclets above into transpiled
|
|
5009
|
+
/* *
|
|
5010
|
+
*
|
|
5011
|
+
* Default Export
|
|
5012
|
+
*
|
|
5013
|
+
* */
|
|
5014
|
+
/* harmony default export */ const ColumnRange_ColumnRangeSeriesDefaults = (ColumnRangeSeriesDefaults);
|
|
5015
|
+
|
|
5016
|
+
;// ./code/es-modules/Series/ColumnRange/ColumnRangeSeries.js
|
|
5017
|
+
/* *
|
|
5018
|
+
*
|
|
5019
|
+
* (c) 2010-2026 Highsoft AS
|
|
5020
|
+
* Author: Torstein Hønsi
|
|
5021
|
+
*
|
|
5022
|
+
* Integration of this software requires a license.
|
|
5023
|
+
* - For commercial use, see www.highcharts.com/license
|
|
5024
|
+
* - For non-commercial, see www.highcharts.com/license-eula
|
|
5025
|
+
*
|
|
5026
|
+
*
|
|
5027
|
+
* */
|
|
5028
|
+
|
|
5029
|
+
|
|
5030
|
+
|
|
5031
|
+
|
|
5032
|
+
const { noop: ColumnRangeSeries_noop } = (external_highcharts_src_js_default_default());
|
|
5033
|
+
|
|
5034
|
+
const { seriesTypes: { arearange: ColumnRangeSeries_AreaRangeSeries, column: ColumnSeries, column: { prototype: ColumnRangeSeries_columnProto } } } = (external_highcharts_src_js_default_SeriesRegistry_default());
|
|
5035
|
+
|
|
4388
5036
|
/* *
|
|
4389
5037
|
*
|
|
4390
5038
|
* Class
|
|
@@ -4393,7 +5041,7 @@ const columnRangeOptions = {
|
|
|
4393
5041
|
/**
|
|
4394
5042
|
* The ColumnRangeSeries class
|
|
4395
5043
|
*
|
|
4396
|
-
* @
|
|
5044
|
+
* @internal
|
|
4397
5045
|
* @class
|
|
4398
5046
|
* @name Highcharts.seriesTypes.columnrange
|
|
4399
5047
|
*
|
|
@@ -4442,17 +5090,17 @@ class ColumnRangeSeries extends ColumnRangeSeries_AreaRangeSeries {
|
|
|
4442
5090
|
translate3dShapes() {
|
|
4443
5091
|
return ColumnRangeSeries_columnProto.translate3dShapes.apply(this, arguments);
|
|
4444
5092
|
}
|
|
5093
|
+
/**
|
|
5094
|
+
* Translate data points from raw values x and y to plotX and plotY
|
|
5095
|
+
* @internal
|
|
5096
|
+
*/
|
|
4445
5097
|
afterColumnTranslate() {
|
|
4446
|
-
/**
|
|
4447
|
-
* Translate data points from raw values x and y to plotX and plotY
|
|
4448
|
-
* @private
|
|
4449
|
-
*/
|
|
4450
5098
|
const yAxis = this.yAxis, xAxis = this.xAxis, startAngleRad = xAxis.startAngleRad, chart = this.chart, isRadial = this.xAxis.isRadial, safeDistance = Math.max(chart.chartWidth, chart.chartHeight) + 999;
|
|
4451
5099
|
let height, heightDifference, start, y;
|
|
4452
5100
|
// eslint-disable-next-line valid-jsdoc
|
|
4453
5101
|
/**
|
|
4454
5102
|
* Don't draw too far outside plot area (#6835)
|
|
4455
|
-
* @
|
|
5103
|
+
* @internal
|
|
4456
5104
|
*/
|
|
4457
5105
|
function safeBounds(pixelPos) {
|
|
4458
5106
|
return (0,external_highcharts_src_js_default_namespaceObject.clamp)(pixelPos, -safeDistance, safeDistance);
|
|
@@ -4465,7 +5113,9 @@ class ColumnRangeSeries extends ColumnRangeSeries_AreaRangeSeries {
|
|
|
4465
5113
|
point.plotLow = safeBounds(plotY);
|
|
4466
5114
|
// Adjust shape
|
|
4467
5115
|
y = point.plotHigh;
|
|
4468
|
-
height =
|
|
5116
|
+
height =
|
|
5117
|
+
(point.rectPlotY ?? point.plotY) -
|
|
5118
|
+
point.plotHigh;
|
|
4469
5119
|
// Adjust for minPointLength
|
|
4470
5120
|
if (Math.abs(height) < minPointLength) {
|
|
4471
5121
|
heightDifference = (minPointLength - height);
|
|
@@ -4511,7 +5161,7 @@ class ColumnRangeSeries extends ColumnRangeSeries_AreaRangeSeries {
|
|
|
4511
5161
|
* Static Properties
|
|
4512
5162
|
*
|
|
4513
5163
|
* */
|
|
4514
|
-
ColumnRangeSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(ColumnSeries.defaultOptions, ColumnRangeSeries_AreaRangeSeries.defaultOptions,
|
|
5164
|
+
ColumnRangeSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(ColumnSeries.defaultOptions, ColumnRangeSeries_AreaRangeSeries.defaultOptions, ColumnRange_ColumnRangeSeriesDefaults);
|
|
4515
5165
|
(0,external_highcharts_src_js_default_namespaceObject.addEvent)(ColumnRangeSeries, 'afterColumnTranslate', function () {
|
|
4516
5166
|
ColumnRangeSeries.prototype.afterColumnTranslate.apply(this);
|
|
4517
5167
|
}, { order: 5 });
|
|
@@ -4531,98 +5181,11 @@ ColumnRangeSeries.defaultOptions = (0,external_highcharts_src_js_default_namespa
|
|
|
4531
5181
|
external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('columnrange', ColumnRangeSeries);
|
|
4532
5182
|
/* *
|
|
4533
5183
|
*
|
|
4534
|
-
* Default Export
|
|
4535
|
-
*
|
|
4536
|
-
* */
|
|
4537
|
-
|
|
4538
|
-
/*
|
|
4539
|
-
*
|
|
4540
|
-
* API Options
|
|
4541
|
-
*
|
|
4542
|
-
* */
|
|
4543
|
-
/**
|
|
4544
|
-
* A `columnrange` series. If the [type](#series.columnrange.type)
|
|
4545
|
-
* option is not specified, it is inherited from
|
|
4546
|
-
* [chart.type](#chart.type).
|
|
4547
|
-
*
|
|
4548
|
-
* @extends series,plotOptions.columnrange
|
|
4549
|
-
* @excluding dataParser, dataURL, stack, stacking
|
|
4550
|
-
* @product highcharts highstock
|
|
4551
|
-
* @requires highcharts-more
|
|
4552
|
-
* @apioption series.columnrange
|
|
4553
|
-
*/
|
|
4554
|
-
/**
|
|
4555
|
-
* An array of data points for the series. For the `columnrange` series
|
|
4556
|
-
* type, points can be given in the following ways:
|
|
4557
|
-
*
|
|
4558
|
-
* 1. An array of arrays with 3 or 2 values. In this case, the values correspond
|
|
4559
|
-
* to `x,low,high`. If the first value is a string, it is applied as the name
|
|
4560
|
-
* of the point, and the `x` value is inferred. The `x` value can also be
|
|
4561
|
-
* omitted, in which case the inner arrays should be of length 2\. Then the
|
|
4562
|
-
* `x` value is automatically calculated, either starting at 0 and
|
|
4563
|
-
* incremented by 1, or from `pointStart` and `pointInterval` given in the
|
|
4564
|
-
* series options.
|
|
4565
|
-
* ```js
|
|
4566
|
-
* data: [
|
|
4567
|
-
* [0, 4, 2],
|
|
4568
|
-
* [1, 2, 1],
|
|
4569
|
-
* [2, 9, 10]
|
|
4570
|
-
* ]
|
|
4571
|
-
* ```
|
|
4572
|
-
*
|
|
4573
|
-
* 2. An array of objects with named values. The following snippet shows only a
|
|
4574
|
-
* few settings, see the complete options set below. If the total number of
|
|
4575
|
-
* data points exceeds the series'
|
|
4576
|
-
* [turboThreshold](#series.columnrange.turboThreshold), this option is not
|
|
4577
|
-
* available.
|
|
4578
|
-
* ```js
|
|
4579
|
-
* data: [{
|
|
4580
|
-
* x: 1,
|
|
4581
|
-
* low: 0,
|
|
4582
|
-
* high: 4,
|
|
4583
|
-
* name: "Point2",
|
|
4584
|
-
* color: "#00FF00"
|
|
4585
|
-
* }, {
|
|
4586
|
-
* x: 1,
|
|
4587
|
-
* low: 5,
|
|
4588
|
-
* high: 3,
|
|
4589
|
-
* name: "Point1",
|
|
4590
|
-
* color: "#FF00FF"
|
|
4591
|
-
* }]
|
|
4592
|
-
* ```
|
|
4593
|
-
*
|
|
4594
|
-
* @sample {highcharts} highcharts/series/data-array-of-arrays/
|
|
4595
|
-
* Arrays of numeric x and y
|
|
4596
|
-
* @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/
|
|
4597
|
-
* Arrays of datetime x and y
|
|
4598
|
-
* @sample {highcharts} highcharts/series/data-array-of-name-value/
|
|
4599
|
-
* Arrays of point.name and y
|
|
4600
|
-
* @sample {highcharts} highcharts/series/data-array-of-objects/
|
|
4601
|
-
* Config objects
|
|
4602
|
-
*
|
|
4603
|
-
* @basic
|
|
4604
|
-
* @type {Array<Array<(number|string),number>|Array<(number|string),number,number>|*>}
|
|
4605
|
-
* @extends series.arearange.data
|
|
4606
|
-
* @excluding marker
|
|
4607
|
-
* @product highcharts highstock
|
|
4608
|
-
* @apioption series.columnrange.data
|
|
4609
|
-
*/
|
|
4610
|
-
/**
|
|
4611
|
-
* @extends series.columnrange.dataLabels
|
|
4612
|
-
* @product highcharts highstock
|
|
4613
|
-
* @apioption series.columnrange.data.dataLabels
|
|
4614
|
-
*/
|
|
4615
|
-
/**
|
|
4616
|
-
* @excluding halo, lineWidth, lineWidthPlus, marker
|
|
4617
|
-
* @product highcharts highstock
|
|
4618
|
-
* @apioption series.columnrange.states.hover
|
|
4619
|
-
*/
|
|
4620
|
-
/**
|
|
4621
|
-
* @excluding halo, lineWidth, lineWidthPlus, marker
|
|
4622
|
-
* @product highcharts highstock
|
|
4623
|
-
* @apioption series.columnrange.states.select
|
|
4624
|
-
*/
|
|
4625
|
-
''; // Adds doclets above into transpiled
|
|
5184
|
+
* Default Export
|
|
5185
|
+
*
|
|
5186
|
+
* */
|
|
5187
|
+
/** @internal */
|
|
5188
|
+
/* harmony default export */ const ColumnRange_ColumnRangeSeries = ((/* unused pure expression or super */ null && (ColumnRangeSeries)));
|
|
4626
5189
|
|
|
4627
5190
|
;// ./code/es-modules/Series/ColumnPyramid/ColumnPyramidSeriesDefaults.js
|
|
4628
5191
|
/* *
|
|
@@ -4779,7 +5342,7 @@ const { column: ColumnPyramidSeries_ColumnSeries } = (external_highcharts_src_js
|
|
|
4779
5342
|
/**
|
|
4780
5343
|
* The ColumnPyramidSeries class
|
|
4781
5344
|
*
|
|
4782
|
-
* @
|
|
5345
|
+
* @internal
|
|
4783
5346
|
* @class
|
|
4784
5347
|
* @name Highcharts.seriesTypes.columnpyramid
|
|
4785
5348
|
*
|
|
@@ -4793,12 +5356,12 @@ class ColumnPyramidSeries extends ColumnPyramidSeries_ColumnSeries {
|
|
|
4793
5356
|
* */
|
|
4794
5357
|
/**
|
|
4795
5358
|
* Overrides the column translate method
|
|
4796
|
-
* @
|
|
5359
|
+
* @internal
|
|
4797
5360
|
*/
|
|
4798
5361
|
translate() {
|
|
4799
5362
|
const series = this, chart = series.chart, options = series.options, dense = series.dense =
|
|
4800
|
-
series.closestPointRange * series.xAxis.transA < 2, borderWidth = series.borderWidth =
|
|
4801
|
-
|
|
5363
|
+
series.closestPointRange * series.xAxis.transA < 2, borderWidth = series.borderWidth =
|
|
5364
|
+
options.borderWidth ?? (dense ? 0 : 1), yAxis = series.yAxis, threshold = options.threshold, minPointLength = (options.minPointLength ?? 5), metrics = series.getColumnMetrics(), pointWidth = metrics.width, pointXOffset = series.pointXOffset = metrics.offset;
|
|
4802
5365
|
let translatedThreshold = series.translatedThreshold =
|
|
4803
5366
|
yAxis.getThreshold(threshold),
|
|
4804
5367
|
// Postprocessed for border width
|
|
@@ -4818,7 +5381,7 @@ class ColumnPyramidSeries extends ColumnPyramidSeries_ColumnSeries {
|
|
|
4818
5381
|
super.translate();
|
|
4819
5382
|
// Record the new values
|
|
4820
5383
|
for (const point of series.points) {
|
|
4821
|
-
const yBottom = (
|
|
5384
|
+
const yBottom = (point.yBottom ?? translatedThreshold), safeDistance = 999 + Math.abs(yBottom), plotY = (0,external_highcharts_src_js_default_namespaceObject.clamp)(point.plotY, -safeDistance, yAxis.len + safeDistance),
|
|
4822
5385
|
// Don't draw too far outside plot area
|
|
4823
5386
|
// (#1303, #2241, #4264)
|
|
4824
5387
|
barW = seriesBarW / 2, barY = Math.min(plotY, yBottom), barH = Math.max(plotY, yBottom) - barY;
|
|
@@ -4934,6 +5497,7 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
4934
5497
|
* Default Export
|
|
4935
5498
|
*
|
|
4936
5499
|
* */
|
|
5500
|
+
/** @internal */
|
|
4937
5501
|
/* harmony default export */ const ColumnPyramid_ColumnPyramidSeries = ((/* unused pure expression or super */ null && (ColumnPyramidSeries)));
|
|
4938
5502
|
|
|
4939
5503
|
;// ./code/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js
|
|
@@ -4967,7 +5531,7 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
4967
5531
|
* Error bars with data labels
|
|
4968
5532
|
*
|
|
4969
5533
|
* @extends plotOptions.boxplot
|
|
4970
|
-
* @excluding boostBlending, boostThreshold
|
|
5534
|
+
* @excluding borderRadius, boostBlending, boostThreshold
|
|
4971
5535
|
* @product highcharts
|
|
4972
5536
|
* @requires highcharts-more
|
|
4973
5537
|
* @optionparent plotOptions.errorbar
|
|
@@ -4986,6 +5550,20 @@ const ErrorBarSeriesDefaults = {
|
|
|
4986
5550
|
* @product highcharts
|
|
4987
5551
|
*/
|
|
4988
5552
|
color: 'var(--highcharts-neutral-color-100)',
|
|
5553
|
+
dataLabels: {
|
|
5554
|
+
/**
|
|
5555
|
+
* Callback JavaScript function to format the data label. Note that if
|
|
5556
|
+
* a `format` is defined, the format takes precedence and the formatter
|
|
5557
|
+
* is ignored.
|
|
5558
|
+
*
|
|
5559
|
+
* The default formatter renders the value of the point key the label
|
|
5560
|
+
* is [aligned to](#plotOptions.errorbar.dataLabels.alignToKey). Define
|
|
5561
|
+
* a [format](#plotOptions.errorbar.dataLabels.format) or `formatter`
|
|
5562
|
+
* to display other values.
|
|
5563
|
+
*
|
|
5564
|
+
* @type {Highcharts.DataLabelsFormatterCallbackFunction}
|
|
5565
|
+
*/
|
|
5566
|
+
},
|
|
4989
5567
|
grouping: false,
|
|
4990
5568
|
/**
|
|
4991
5569
|
* The parent series of the error bar. The default value links it to
|
|
@@ -5106,6 +5684,7 @@ const ErrorBarSeriesDefaults = {
|
|
|
5106
5684
|
|
|
5107
5685
|
const { arearange: ErrorBarSeries_AreaRangeSeries } = (external_highcharts_src_js_default_SeriesRegistry_default()).seriesTypes;
|
|
5108
5686
|
|
|
5687
|
+
|
|
5109
5688
|
/* *
|
|
5110
5689
|
*
|
|
5111
5690
|
* Class
|
|
@@ -5114,7 +5693,7 @@ const { arearange: ErrorBarSeries_AreaRangeSeries } = (external_highcharts_src_j
|
|
|
5114
5693
|
/**
|
|
5115
5694
|
* Errorbar series type
|
|
5116
5695
|
*
|
|
5117
|
-
* @
|
|
5696
|
+
* @internal
|
|
5118
5697
|
* @class
|
|
5119
5698
|
* @name Highcharts.seriesTypes.errorbar
|
|
5120
5699
|
*
|
|
@@ -5134,14 +5713,9 @@ class ErrorBarSeries extends BoxPlot_BoxPlotSeries {
|
|
|
5134
5713
|
external_highcharts_src_js_default_Series_types_column_default().prototype.getColumnMetrics.call(series));
|
|
5135
5714
|
}
|
|
5136
5715
|
drawDataLabels() {
|
|
5137
|
-
|
|
5716
|
+
// Error bars draw upper/lower labels via the area range option adapter.
|
|
5138
5717
|
if (ErrorBarSeries_AreaRangeSeries) {
|
|
5139
|
-
ErrorBarSeries_AreaRangeSeries.prototype.drawDataLabels.call(
|
|
5140
|
-
// Arearange drawDataLabels does not reset point.y to high,
|
|
5141
|
-
// but to low after drawing (#4133)
|
|
5142
|
-
for (const point of series.points) {
|
|
5143
|
-
point.y = point[valKey];
|
|
5144
|
-
}
|
|
5718
|
+
ErrorBarSeries_AreaRangeSeries.prototype.drawDataLabels.call(this);
|
|
5145
5719
|
}
|
|
5146
5720
|
}
|
|
5147
5721
|
toYData(point) {
|
|
@@ -5154,7 +5728,7 @@ class ErrorBarSeries extends BoxPlot_BoxPlotSeries {
|
|
|
5154
5728
|
* Static Properties
|
|
5155
5729
|
*
|
|
5156
5730
|
* */
|
|
5157
|
-
ErrorBarSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(BoxPlot_BoxPlotSeries.defaultOptions, ErrorBar_ErrorBarSeriesDefaults);
|
|
5731
|
+
ErrorBarSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(BoxPlot_BoxPlotSeries.defaultOptions, ErrorBar_ErrorBarSeriesDefaults, { dataLabels: { formatter: Series_RangeDataLabel.formatter } });
|
|
5158
5732
|
(0,external_highcharts_src_js_default_namespaceObject.addEvent)(ErrorBarSeries, 'afterTranslate', function () {
|
|
5159
5733
|
for (const point of this.points) {
|
|
5160
5734
|
point.plotLow = point.plotY;
|
|
@@ -5171,6 +5745,7 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
5171
5745
|
* Default Export
|
|
5172
5746
|
*
|
|
5173
5747
|
* */
|
|
5748
|
+
/** @internal */
|
|
5174
5749
|
/* harmony default export */ const ErrorBar_ErrorBarSeries = ((/* unused pure expression or super */ null && (ErrorBarSeries)));
|
|
5175
5750
|
|
|
5176
5751
|
;// ./code/es-modules/Series/Gauge/GaugePoint.js
|
|
@@ -5411,7 +5986,7 @@ class GaugeSeries extends GaugeSeries_Series {
|
|
|
5411
5986
|
GaugeSeries_Series.prototype.setData.call(this, data, false);
|
|
5412
5987
|
this.processData();
|
|
5413
5988
|
this.generatePoints();
|
|
5414
|
-
if (
|
|
5989
|
+
if (redraw ?? true) {
|
|
5415
5990
|
this.chart.redraw();
|
|
5416
5991
|
}
|
|
5417
5992
|
}
|
|
@@ -5852,7 +6427,7 @@ const { composed: DragNodesComposition_composed } = (external_highcharts_src_js_
|
|
|
5852
6427
|
*
|
|
5853
6428
|
* */
|
|
5854
6429
|
/**
|
|
5855
|
-
* @
|
|
6430
|
+
* @internal
|
|
5856
6431
|
*/
|
|
5857
6432
|
function DragNodesComposition_compose(ChartClass) {
|
|
5858
6433
|
if ((0,external_highcharts_src_js_default_namespaceObject.pushUnique)(DragNodesComposition_composed, 'DragNodes')) {
|
|
@@ -5861,7 +6436,7 @@ function DragNodesComposition_compose(ChartClass) {
|
|
|
5861
6436
|
}
|
|
5862
6437
|
/**
|
|
5863
6438
|
* Draggable mode:
|
|
5864
|
-
* @
|
|
6439
|
+
* @internal
|
|
5865
6440
|
*/
|
|
5866
6441
|
function onChartLoad() {
|
|
5867
6442
|
const chart = this;
|
|
@@ -5900,7 +6475,7 @@ function onChartLoad() {
|
|
|
5900
6475
|
/**
|
|
5901
6476
|
* Mouse down action, initializing drag&drop mode.
|
|
5902
6477
|
*
|
|
5903
|
-
* @
|
|
6478
|
+
* @internal
|
|
5904
6479
|
* @param {Highcharts.Point} point
|
|
5905
6480
|
* The point that event occurred.
|
|
5906
6481
|
* @param {Highcharts.PointerEventObject} event
|
|
@@ -5923,7 +6498,7 @@ function onMouseDown(point, event) {
|
|
|
5923
6498
|
/**
|
|
5924
6499
|
* Mouse move action during drag&drop.
|
|
5925
6500
|
*
|
|
5926
|
-
* @
|
|
6501
|
+
* @internal
|
|
5927
6502
|
*
|
|
5928
6503
|
* @param {Highcharts.Point} point
|
|
5929
6504
|
* The point that event occurred.
|
|
@@ -5953,7 +6528,7 @@ function onMouseMove(point, event) {
|
|
|
5953
6528
|
/**
|
|
5954
6529
|
* Mouse up action, finalizing drag&drop.
|
|
5955
6530
|
*
|
|
5956
|
-
* @
|
|
6531
|
+
* @internal
|
|
5957
6532
|
* @param {Highcharts.Point} point
|
|
5958
6533
|
* The point that event occurred.
|
|
5959
6534
|
*/
|
|
@@ -5976,14 +6551,15 @@ function onMouseUp(point) {
|
|
|
5976
6551
|
/**
|
|
5977
6552
|
* Redraw halo on mousemove during the drag&drop action.
|
|
5978
6553
|
*
|
|
5979
|
-
* @
|
|
6554
|
+
* @internal
|
|
5980
6555
|
* @param {Highcharts.Point} point
|
|
5981
6556
|
* The point that should show halo.
|
|
5982
6557
|
*/
|
|
5983
6558
|
function redrawHalo(point) {
|
|
5984
6559
|
if (point && this.halo) {
|
|
5985
6560
|
this.halo.attr({
|
|
5986
|
-
d: point.haloPath(this.options.states
|
|
6561
|
+
d: point.haloPath((0,external_highcharts_src_js_default_namespaceObject.isObject)(this.options.states?.hover?.halo) &&
|
|
6562
|
+
this.options.states?.hover?.halo.size || 0)
|
|
5987
6563
|
});
|
|
5988
6564
|
}
|
|
5989
6565
|
}
|
|
@@ -5992,6 +6568,7 @@ function redrawHalo(point) {
|
|
|
5992
6568
|
* Default Export
|
|
5993
6569
|
*
|
|
5994
6570
|
* */
|
|
6571
|
+
/** @internal */
|
|
5995
6572
|
const DragNodesComposition = {
|
|
5996
6573
|
compose: DragNodesComposition_compose,
|
|
5997
6574
|
onMouseDown,
|
|
@@ -5999,6 +6576,7 @@ const DragNodesComposition = {
|
|
|
5999
6576
|
onMouseUp,
|
|
6000
6577
|
redrawHalo
|
|
6001
6578
|
};
|
|
6579
|
+
/** @internal */
|
|
6002
6580
|
/* harmony default export */ const Series_DragNodesComposition = (DragNodesComposition);
|
|
6003
6581
|
|
|
6004
6582
|
;// ./code/es-modules/Series/GraphLayoutComposition.js
|
|
@@ -6017,7 +6595,6 @@ const DragNodesComposition = {
|
|
|
6017
6595
|
* */
|
|
6018
6596
|
|
|
6019
6597
|
|
|
6020
|
-
const { setAnimation } = (external_highcharts_src_js_default_default());
|
|
6021
6598
|
|
|
6022
6599
|
const { composed: GraphLayoutComposition_composed } = (external_highcharts_src_js_default_default());
|
|
6023
6600
|
|
|
@@ -6105,7 +6682,7 @@ function onChartRender() {
|
|
|
6105
6682
|
};
|
|
6106
6683
|
// Don't animate layout when series is dragged
|
|
6107
6684
|
if (this.graphLayoutsLookup && !this.pointer?.hasDragged) {
|
|
6108
|
-
setAnimation(false, this);
|
|
6685
|
+
(0,external_highcharts_src_js_default_namespaceObject.setAnimation)(false, this);
|
|
6109
6686
|
// Start simulation
|
|
6110
6687
|
this.graphLayoutsLookup.forEach((layout) => layout.start());
|
|
6111
6688
|
// Just one sync step, to run different layouts similar to
|
|
@@ -6118,6 +6695,7 @@ function onChartRender() {
|
|
|
6118
6695
|
this.series.forEach((series) => {
|
|
6119
6696
|
if (series && series.layout) {
|
|
6120
6697
|
series.render();
|
|
6698
|
+
(0,external_highcharts_src_js_default_namespaceObject.fireEvent)(series, 'afterSimulation');
|
|
6121
6699
|
}
|
|
6122
6700
|
});
|
|
6123
6701
|
}
|
|
@@ -7584,12 +8162,16 @@ class ReingoldFruchtermanLayout {
|
|
|
7584
8162
|
this.integration =
|
|
7585
8163
|
Series_GraphLayoutComposition.integrations[options.integration];
|
|
7586
8164
|
this.enableSimulation = options.enableSimulation;
|
|
7587
|
-
this.attractiveForce =
|
|
7588
|
-
|
|
8165
|
+
this.attractiveForce =
|
|
8166
|
+
options.attractiveForce ??
|
|
8167
|
+
this.integration.attractiveForceFunction;
|
|
8168
|
+
this.repulsiveForce =
|
|
8169
|
+
options.repulsiveForce ??
|
|
8170
|
+
this.integration.repulsiveForceFunction;
|
|
7589
8171
|
this.approximation = options.approximation;
|
|
7590
8172
|
}
|
|
7591
8173
|
updateSimulation(enable) {
|
|
7592
|
-
this.enableSimulation = (
|
|
8174
|
+
this.enableSimulation = (enable ?? this.options.enableSimulation);
|
|
7593
8175
|
}
|
|
7594
8176
|
start() {
|
|
7595
8177
|
const layout = this, series = this.series, options = this.options;
|
|
@@ -7719,7 +8301,7 @@ class ReingoldFruchtermanLayout {
|
|
|
7719
8301
|
}
|
|
7720
8302
|
}
|
|
7721
8303
|
setMaxIterations(maxIterations) {
|
|
7722
|
-
this.maxIterations = (
|
|
8304
|
+
this.maxIterations = (maxIterations ?? this.options.maxIterations);
|
|
7723
8305
|
}
|
|
7724
8306
|
setTemperature() {
|
|
7725
8307
|
this.temperature = this.startTemperature =
|
|
@@ -7795,8 +8377,12 @@ class ReingoldFruchtermanLayout {
|
|
|
7795
8377
|
// as a cluster in the middle
|
|
7796
8378
|
for (let i = 0, iEnd = sortedNodes.length; i < iEnd; ++i) {
|
|
7797
8379
|
node = sortedNodes[i];
|
|
7798
|
-
node.plotX = node.prevX =
|
|
7799
|
-
|
|
8380
|
+
node.plotX = node.prevX =
|
|
8381
|
+
node.plotX ??
|
|
8382
|
+
box.width / 2 + radius * Math.cos(i * angle);
|
|
8383
|
+
node.plotY = node.prevY =
|
|
8384
|
+
node.plotY ??
|
|
8385
|
+
box.height / 2 + radius * Math.sin(i * angle);
|
|
7800
8386
|
node.dispX = 0;
|
|
7801
8387
|
node.dispY = 0;
|
|
7802
8388
|
}
|
|
@@ -7817,8 +8403,9 @@ class ReingoldFruchtermanLayout {
|
|
|
7817
8403
|
// Initial positions:
|
|
7818
8404
|
for (let i = 0, iEnd = nodes.length; i < iEnd; ++i) {
|
|
7819
8405
|
node = nodes[i];
|
|
7820
|
-
node.plotX = node.prevX = (
|
|
7821
|
-
node.plotY = node.prevY =
|
|
8406
|
+
node.plotX = node.prevX = (node.plotX ?? box.width * unrandom(i));
|
|
8407
|
+
node.plotY = node.prevY =
|
|
8408
|
+
node.plotY ?? box.height * unrandom(nodesLength + i);
|
|
7822
8409
|
node.dispX = 0;
|
|
7823
8410
|
node.dispY = 0;
|
|
7824
8411
|
}
|
|
@@ -8141,9 +8728,9 @@ class PackedBubbleLayout extends Networkgraph_ReingoldFruchtermanLayout {
|
|
|
8141
8728
|
centerX = box.width / 2;
|
|
8142
8729
|
centerY = box.height / 2;
|
|
8143
8730
|
}
|
|
8144
|
-
node.plotX = node.prevX = (
|
|
8731
|
+
node.plotX = node.prevX = (node.plotX ?? centerX +
|
|
8145
8732
|
radius * Math.cos(node.index || index * angle));
|
|
8146
|
-
node.plotY = node.prevY = (
|
|
8733
|
+
node.plotY = node.prevY = (node.plotY ?? centerY +
|
|
8147
8734
|
radius * Math.sin(node.index || index * angle));
|
|
8148
8735
|
node.dispX = 0;
|
|
8149
8736
|
node.dispY = 0;
|
|
@@ -8243,7 +8830,6 @@ Series_GraphLayoutComposition.layouts.packedbubble = PackedBubbleLayout;
|
|
|
8243
8830
|
|
|
8244
8831
|
|
|
8245
8832
|
|
|
8246
|
-
const { animObject } = (external_highcharts_src_js_default_default());
|
|
8247
8833
|
/**
|
|
8248
8834
|
* Create a setTimeout for the first drawDataLabels()
|
|
8249
8835
|
* based on the dataLabels.animation.defer value
|
|
@@ -8263,7 +8849,7 @@ function initDataLabelsDefer() {
|
|
|
8263
8849
|
else {
|
|
8264
8850
|
(0,external_highcharts_src_js_default_namespaceObject.syncTimeout)(() => {
|
|
8265
8851
|
this.deferDataLabels = false;
|
|
8266
|
-
}, dlOptions ? animObject(dlOptions.animation).defer : 0);
|
|
8852
|
+
}, dlOptions ? (0,external_highcharts_src_js_default_namespaceObject.animObject)(dlOptions.animation).defer : 0);
|
|
8267
8853
|
}
|
|
8268
8854
|
}
|
|
8269
8855
|
/**
|
|
@@ -8773,8 +9359,8 @@ class PackedBubbleSeries extends PackedBubbleSeries_BubbleSeries {
|
|
|
8773
9359
|
}
|
|
8774
9360
|
});
|
|
8775
9361
|
});
|
|
8776
|
-
zMin = (
|
|
8777
|
-
zMax = (
|
|
9362
|
+
zMin = (zMin ?? valMin);
|
|
9363
|
+
zMax = (zMax ?? valMax);
|
|
8778
9364
|
return [zMin, zMax];
|
|
8779
9365
|
}
|
|
8780
9366
|
/**
|
|
@@ -8913,7 +9499,7 @@ class PackedBubbleSeries extends PackedBubbleSeries_BubbleSeries {
|
|
|
8913
9499
|
color(this.color).brighten(0.4).get()),
|
|
8914
9500
|
opacity: nodeMarker.fillOpacity,
|
|
8915
9501
|
stroke: nodeMarker.lineColor || this.color,
|
|
8916
|
-
'stroke-width': (
|
|
9502
|
+
'stroke-width': (nodeMarker.lineWidth ?? this.options.lineWidth)
|
|
8917
9503
|
};
|
|
8918
9504
|
let parentAttribs = {};
|
|
8919
9505
|
// Create the group for parent Nodes if doesn't exist
|
|
@@ -9368,7 +9954,7 @@ class PackedBubbleSeries extends PackedBubbleSeries_BubbleSeries {
|
|
|
9368
9954
|
// Update the series points with the val from positions
|
|
9369
9955
|
// array
|
|
9370
9956
|
point = data[position[4]];
|
|
9371
|
-
radius = (
|
|
9957
|
+
radius = (position[2] ?? void 0);
|
|
9372
9958
|
if (!useSimulation) {
|
|
9373
9959
|
point.plotX = (position[0] - chart.plotLeft +
|
|
9374
9960
|
chart.diffX);
|
|
@@ -9436,577 +10022,208 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
9436
10022
|
|
|
9437
10023
|
/* *
|
|
9438
10024
|
*
|
|
9439
|
-
* API Options
|
|
9440
|
-
*
|
|
9441
|
-
* */
|
|
9442
|
-
/**
|
|
9443
|
-
* A polygon series can be used to draw any freeform shape in the cartesian
|
|
9444
|
-
* coordinate system. A fill is applied with the `color` option, and
|
|
9445
|
-
* stroke is applied through `lineWidth` and `lineColor` options.
|
|
9446
|
-
*
|
|
9447
|
-
* @sample {highcharts} highcharts/demo/polygon/
|
|
9448
|
-
* Polygon
|
|
9449
|
-
* @sample {highstock} highcharts/demo/polygon/
|
|
9450
|
-
* Polygon
|
|
9451
|
-
*
|
|
9452
|
-
* @extends plotOptions.scatter
|
|
9453
|
-
* @since 4.1.0
|
|
9454
|
-
* @excluding jitter, softThreshold, threshold, cluster, boostThreshold,
|
|
9455
|
-
* boostBlending
|
|
9456
|
-
* @product highcharts highstock
|
|
9457
|
-
* @requires highcharts-more
|
|
9458
|
-
* @optionparent plotOptions.polygon
|
|
9459
|
-
*/
|
|
9460
|
-
const PolygonSeriesDefaults = {
|
|
9461
|
-
marker: {
|
|
9462
|
-
enabled: false,
|
|
9463
|
-
states: {
|
|
9464
|
-
hover: {
|
|
9465
|
-
enabled: false
|
|
9466
|
-
}
|
|
9467
|
-
}
|
|
9468
|
-
},
|
|
9469
|
-
stickyTracking: false,
|
|
9470
|
-
tooltip: {
|
|
9471
|
-
followPointer: true,
|
|
9472
|
-
pointFormat: ''
|
|
9473
|
-
},
|
|
9474
|
-
trackByArea: true,
|
|
9475
|
-
legendSymbol: 'rectangle'
|
|
9476
|
-
};
|
|
9477
|
-
/**
|
|
9478
|
-
* A `polygon` series. If the [type](#series.polygon.type) option is
|
|
9479
|
-
* not specified, it is inherited from [chart.type](#chart.type).
|
|
9480
|
-
*
|
|
9481
|
-
* @extends series,plotOptions.polygon
|
|
9482
|
-
* @excluding dataParser, dataURL, stack, boostThreshold, boostBlending
|
|
9483
|
-
* @product highcharts highstock
|
|
9484
|
-
* @requires highcharts-more
|
|
9485
|
-
* @apioption series.polygon
|
|
9486
|
-
*/
|
|
9487
|
-
/**
|
|
9488
|
-
* An array of data points for the series. For the `polygon` series
|
|
9489
|
-
* type, points can be given in the following ways:
|
|
9490
|
-
*
|
|
9491
|
-
* 1. An array of numerical values. In this case, the numerical values will be
|
|
9492
|
-
* interpreted as `y` options. The `x` values will be automatically
|
|
9493
|
-
* calculated, either starting at 0 and incremented by 1, or from
|
|
9494
|
-
* `pointStart` and `pointInterval` given in the series options. If the axis
|
|
9495
|
-
* has categories, these will be used. Example:
|
|
9496
|
-
* ```js
|
|
9497
|
-
* data: [0, 5, 3, 5]
|
|
9498
|
-
* ```
|
|
9499
|
-
*
|
|
9500
|
-
* 2. An array of arrays with 2 values. In this case, the values correspond to
|
|
9501
|
-
* `x,y`. If the first value is a string, it is applied as the name of the
|
|
9502
|
-
* point, and the `x` value is inferred.
|
|
9503
|
-
* ```js
|
|
9504
|
-
* data: [
|
|
9505
|
-
* [0, 10],
|
|
9506
|
-
* [1, 3],
|
|
9507
|
-
* [2, 1]
|
|
9508
|
-
* ]
|
|
9509
|
-
* ```
|
|
9510
|
-
*
|
|
9511
|
-
* 3. An array of objects with named values. The following snippet shows only a
|
|
9512
|
-
* few settings, see the complete options set below. If the total number of
|
|
9513
|
-
* data points exceeds the series'
|
|
9514
|
-
* [turboThreshold](#series.polygon.turboThreshold), this option is not
|
|
9515
|
-
* available.
|
|
9516
|
-
* ```js
|
|
9517
|
-
* data: [{
|
|
9518
|
-
* x: 1,
|
|
9519
|
-
* y: 1,
|
|
9520
|
-
* name: "Point2",
|
|
9521
|
-
* color: "#00FF00"
|
|
9522
|
-
* }, {
|
|
9523
|
-
* x: 1,
|
|
9524
|
-
* y: 8,
|
|
9525
|
-
* name: "Point1",
|
|
9526
|
-
* color: "#FF00FF"
|
|
9527
|
-
* }]
|
|
9528
|
-
* ```
|
|
9529
|
-
*
|
|
9530
|
-
* @sample {highcharts} highcharts/chart/reflow-true/
|
|
9531
|
-
* Numerical values
|
|
9532
|
-
* @sample {highcharts} highcharts/series/data-array-of-arrays/
|
|
9533
|
-
* Arrays of numeric x and y
|
|
9534
|
-
* @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/
|
|
9535
|
-
* Arrays of datetime x and y
|
|
9536
|
-
* @sample {highcharts} highcharts/series/data-array-of-name-value/
|
|
9537
|
-
* Arrays of point.name and y
|
|
9538
|
-
* @sample {highcharts} highcharts/series/data-array-of-objects/
|
|
9539
|
-
* Config objects
|
|
9540
|
-
*
|
|
9541
|
-
* @basic
|
|
9542
|
-
* @type {Array<number|Array<(number|string),(number|null)>|null|*>}
|
|
9543
|
-
* @extends series.line.data
|
|
9544
|
-
* @product highcharts highstock
|
|
9545
|
-
* @apioption series.polygon.data
|
|
9546
|
-
*/
|
|
9547
|
-
''; // Keeps doclets above separate
|
|
9548
|
-
/* *
|
|
9549
|
-
*
|
|
9550
|
-
* Default Export
|
|
9551
|
-
*
|
|
9552
|
-
* */
|
|
9553
|
-
/* harmony default export */ const Polygon_PolygonSeriesDefaults = (PolygonSeriesDefaults);
|
|
9554
|
-
|
|
9555
|
-
;// ./code/es-modules/Series/Polygon/PolygonSeries.js
|
|
9556
|
-
/* *
|
|
9557
|
-
*
|
|
9558
|
-
* (c) 2010-2026 Highsoft AS
|
|
9559
|
-
* Author: Torstein Hønsi
|
|
9560
|
-
*
|
|
9561
|
-
* Integration of this software requires a license.
|
|
9562
|
-
* - For commercial use, see www.highcharts.com/license
|
|
9563
|
-
* - For non-commercial, see www.highcharts.com/license-eula
|
|
9564
|
-
*
|
|
9565
|
-
*
|
|
9566
|
-
* */
|
|
9567
|
-
|
|
9568
|
-
|
|
9569
|
-
const { noop: PolygonSeries_noop } = (external_highcharts_src_js_default_default());
|
|
9570
|
-
|
|
9571
|
-
|
|
9572
|
-
const { area: PolygonSeries_AreaSeries, line: LineSeries, scatter: PolygonSeries_ScatterSeries } = (external_highcharts_src_js_default_SeriesRegistry_default()).seriesTypes;
|
|
9573
|
-
|
|
9574
|
-
/* *
|
|
9575
|
-
*
|
|
9576
|
-
* Class
|
|
9577
|
-
*
|
|
9578
|
-
* */
|
|
9579
|
-
class PolygonSeries extends PolygonSeries_ScatterSeries {
|
|
9580
|
-
/* *
|
|
9581
|
-
*
|
|
9582
|
-
* Functions
|
|
9583
|
-
*
|
|
9584
|
-
* */
|
|
9585
|
-
getGraphPath() {
|
|
9586
|
-
const graphPath = LineSeries.prototype.getGraphPath.call(this);
|
|
9587
|
-
let i = graphPath.length + 1;
|
|
9588
|
-
// Close all segments
|
|
9589
|
-
while (i--) {
|
|
9590
|
-
if ((i === graphPath.length || graphPath[i][0] === 'M') && i > 0) {
|
|
9591
|
-
graphPath.splice(i, 0, ['Z']);
|
|
9592
|
-
}
|
|
9593
|
-
}
|
|
9594
|
-
this.areaPath = graphPath;
|
|
9595
|
-
return graphPath;
|
|
9596
|
-
}
|
|
9597
|
-
drawGraph() {
|
|
9598
|
-
// Hack into the fill logic in area.drawGraph
|
|
9599
|
-
this.options.fillColor = this.color;
|
|
9600
|
-
PolygonSeries_AreaSeries.prototype.drawGraph.call(this);
|
|
9601
|
-
}
|
|
9602
|
-
}
|
|
9603
|
-
/* *
|
|
9604
|
-
*
|
|
9605
|
-
* Static Properties
|
|
9606
|
-
*
|
|
9607
|
-
* */
|
|
9608
|
-
PolygonSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(PolygonSeries_ScatterSeries.defaultOptions, Polygon_PolygonSeriesDefaults);
|
|
9609
|
-
(0,external_highcharts_src_js_default_namespaceObject.extend)(PolygonSeries.prototype, {
|
|
9610
|
-
type: 'polygon',
|
|
9611
|
-
drawTracker: LineSeries.prototype.drawTracker,
|
|
9612
|
-
setStackedPoints: PolygonSeries_noop // No stacking points on polygons (#5310)
|
|
9613
|
-
});
|
|
9614
|
-
external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('polygon', PolygonSeries);
|
|
9615
|
-
/* *
|
|
9616
|
-
*
|
|
9617
|
-
* Default Export
|
|
9618
|
-
*
|
|
9619
|
-
* */
|
|
9620
|
-
/* harmony default export */ const Polygon_PolygonSeries = ((/* unused pure expression or super */ null && (PolygonSeries)));
|
|
9621
|
-
|
|
9622
|
-
;// ./code/es-modules/Extensions/BorderRadius.js
|
|
9623
|
-
/* *
|
|
9624
|
-
*
|
|
9625
|
-
* Highcharts Border Radius module
|
|
9626
|
-
*
|
|
9627
|
-
* Author: Torstein Hønsi
|
|
9628
|
-
*
|
|
9629
|
-
* Integration of this software requires a license.
|
|
9630
|
-
* - For commercial use, see www.highcharts.com/license
|
|
9631
|
-
* - For non-commercial, see www.highcharts.com/license-eula
|
|
9632
|
-
*
|
|
9633
|
-
*
|
|
9634
|
-
* */
|
|
9635
|
-
|
|
9636
|
-
|
|
9637
|
-
const { defaultOptions: BorderRadius_defaultOptions } = (external_highcharts_src_js_default_default());
|
|
9638
|
-
|
|
9639
|
-
const { noop: BorderRadius_noop } = (external_highcharts_src_js_default_default());
|
|
9640
|
-
|
|
9641
|
-
/* *
|
|
9642
|
-
*
|
|
9643
|
-
* Constants
|
|
9644
|
-
*
|
|
9645
|
-
* */
|
|
9646
|
-
const defaultBorderRadiusOptions = {
|
|
9647
|
-
radius: 0,
|
|
9648
|
-
scope: 'stack',
|
|
9649
|
-
where: void 0
|
|
9650
|
-
};
|
|
9651
|
-
/* *
|
|
9652
|
-
*
|
|
9653
|
-
* Variables
|
|
10025
|
+
* API Options
|
|
9654
10026
|
*
|
|
9655
10027
|
* */
|
|
9656
|
-
|
|
9657
|
-
|
|
9658
|
-
|
|
10028
|
+
/**
|
|
10029
|
+
* A polygon series can be used to draw any freeform shape in the cartesian
|
|
10030
|
+
* coordinate system. A fill is applied with the `color` option, and
|
|
10031
|
+
* stroke is applied through `lineWidth` and `lineColor` options.
|
|
9659
10032
|
*
|
|
9660
|
-
*
|
|
10033
|
+
* @sample {highcharts} highcharts/demo/polygon/
|
|
10034
|
+
* Polygon
|
|
10035
|
+
* @sample {highstock} highcharts/demo/polygon/
|
|
10036
|
+
* Polygon
|
|
9661
10037
|
*
|
|
9662
|
-
*
|
|
9663
|
-
|
|
9664
|
-
|
|
9665
|
-
|
|
9666
|
-
|
|
9667
|
-
|
|
9668
|
-
|
|
9669
|
-
}
|
|
9670
|
-
let line, arc, fromLineToArc;
|
|
9671
|
-
// From straight line to arc
|
|
9672
|
-
if ((a[0] === 'M' || a[0] === 'L') && b[0] === 'A') {
|
|
9673
|
-
line = a;
|
|
9674
|
-
arc = b;
|
|
9675
|
-
fromLineToArc = true;
|
|
9676
|
-
// From arc to straight line
|
|
9677
|
-
}
|
|
9678
|
-
else if (a[0] === 'A' && (b[0] === 'M' || b[0] === 'L')) {
|
|
9679
|
-
line = b;
|
|
9680
|
-
arc = a;
|
|
9681
|
-
}
|
|
9682
|
-
if (line && arc && arc.params) {
|
|
9683
|
-
const bigR = arc[1],
|
|
9684
|
-
// In our use cases, outer pie slice arcs are clockwise and inner
|
|
9685
|
-
// arcs (donut/sunburst etc) are anti-clockwise
|
|
9686
|
-
clockwise = arc[5], params = arc.params, { start, end, cx, cy } = params;
|
|
9687
|
-
// Some geometric constants
|
|
9688
|
-
const relativeR = clockwise ? (bigR - r) : (bigR + r),
|
|
9689
|
-
// The angle, on the big arc, that the border radius arc takes up
|
|
9690
|
-
angleOfBorderRadius = relativeR ? Math.asin(r / relativeR) : 0, angleOffset = clockwise ?
|
|
9691
|
-
angleOfBorderRadius :
|
|
9692
|
-
-angleOfBorderRadius,
|
|
9693
|
-
// The distance along the radius of the big arc to the starting
|
|
9694
|
-
// point of the small border radius arc
|
|
9695
|
-
distanceBigCenterToStartArc = (Math.cos(angleOfBorderRadius) *
|
|
9696
|
-
relativeR);
|
|
9697
|
-
// From line to arc
|
|
9698
|
-
if (fromLineToArc) {
|
|
9699
|
-
// Update the cache
|
|
9700
|
-
params.start = start + angleOffset;
|
|
9701
|
-
// First move to the start position at the radial line. We want to
|
|
9702
|
-
// start one borderRadius closer to the center.
|
|
9703
|
-
line[1] = cx + distanceBigCenterToStartArc * Math.cos(start);
|
|
9704
|
-
line[2] = cy + distanceBigCenterToStartArc * Math.sin(start);
|
|
9705
|
-
// Now draw an arc towards the point where the small circle touches
|
|
9706
|
-
// the great circle.
|
|
9707
|
-
path.splice(i + 1, 0, [
|
|
9708
|
-
'A',
|
|
9709
|
-
r,
|
|
9710
|
-
r,
|
|
9711
|
-
0, // Slanting,
|
|
9712
|
-
0, // Long arc
|
|
9713
|
-
1, // Clockwise
|
|
9714
|
-
cx + bigR * Math.cos(params.start),
|
|
9715
|
-
cy + bigR * Math.sin(params.start)
|
|
9716
|
-
]);
|
|
9717
|
-
// From arc to line
|
|
9718
|
-
}
|
|
9719
|
-
else {
|
|
9720
|
-
// Update the cache
|
|
9721
|
-
params.end = end - angleOffset;
|
|
9722
|
-
// End the big arc a bit earlier
|
|
9723
|
-
arc[6] = cx + bigR * Math.cos(params.end);
|
|
9724
|
-
arc[7] = cy + bigR * Math.sin(params.end);
|
|
9725
|
-
// Draw a small arc towards a point on the end angle, but one
|
|
9726
|
-
// borderRadius closer to the center relative to the perimeter.
|
|
9727
|
-
path.splice(i + 1, 0, [
|
|
9728
|
-
'A',
|
|
9729
|
-
r,
|
|
9730
|
-
r,
|
|
9731
|
-
0,
|
|
9732
|
-
0,
|
|
9733
|
-
1,
|
|
9734
|
-
cx + distanceBigCenterToStartArc * Math.cos(end),
|
|
9735
|
-
cy + distanceBigCenterToStartArc * Math.sin(end)
|
|
9736
|
-
]);
|
|
9737
|
-
}
|
|
9738
|
-
// Long or short arc must be reconsidered because we have modified the
|
|
9739
|
-
// start and end points
|
|
9740
|
-
arc[4] = Math.abs(params.end - params.start) < Math.PI ? 0 : 1;
|
|
9741
|
-
}
|
|
9742
|
-
}
|
|
9743
|
-
/**
|
|
9744
|
-
* Extend arc with borderRadius.
|
|
9745
|
-
* @internal
|
|
10038
|
+
* @extends plotOptions.scatter
|
|
10039
|
+
* @since 4.1.0
|
|
10040
|
+
* @excluding jitter, softThreshold, threshold, cluster, boostThreshold,
|
|
10041
|
+
* boostBlending
|
|
10042
|
+
* @product highcharts highstock
|
|
10043
|
+
* @requires highcharts-more
|
|
10044
|
+
* @optionparent plotOptions.polygon
|
|
9746
10045
|
*/
|
|
9747
|
-
|
|
9748
|
-
|
|
9749
|
-
|
|
9750
|
-
|
|
9751
|
-
|
|
9752
|
-
|
|
9753
|
-
|
|
9754
|
-
|
|
9755
|
-
|
|
9756
|
-
|
|
9757
|
-
|
|
9758
|
-
|
|
9759
|
-
|
|
9760
|
-
|
|
9761
|
-
|
|
9762
|
-
|
|
9763
|
-
|
|
9764
|
-
|
|
9765
|
-
|
|
9766
|
-
|
|
9767
|
-
|
|
9768
|
-
|
|
9769
|
-
|
|
9770
|
-
|
|
9771
|
-
|
|
9772
|
-
|
|
9773
|
-
/** @internal */
|
|
9774
|
-
function seriesOnAfterColumnTranslate() {
|
|
9775
|
-
if (this.options.borderRadius &&
|
|
9776
|
-
!(this.chart.is3d && this.chart.is3d())) {
|
|
9777
|
-
const { options, yAxis } = this, percent = options.stacking === 'percent', seriesDefault = BorderRadius_defaultOptions.plotOptions?.[this.type]
|
|
9778
|
-
?.borderRadius, borderRadius = optionsToObject(options.borderRadius, isObject(seriesDefault) ? seriesDefault : {}), reversed = yAxis.options.reversed;
|
|
9779
|
-
for (const point of this.points) {
|
|
9780
|
-
const { shapeArgs } = point;
|
|
9781
|
-
if (point.shapeType === 'roundedRect' && shapeArgs) {
|
|
9782
|
-
const { width = 0, height = 0, y = 0 } = shapeArgs;
|
|
9783
|
-
let brBoxY = y, brBoxHeight = height;
|
|
9784
|
-
// It would be nice to refactor StackItem.getStackBox/
|
|
9785
|
-
// setOffset so that we could get a reliable box out of
|
|
9786
|
-
// it. Currently it is close if we remove the label
|
|
9787
|
-
// offset, but we still need to run crispCol and also
|
|
9788
|
-
// flip it if inverted, so atm it is simpler to do it
|
|
9789
|
-
// like the below.
|
|
9790
|
-
if (borderRadius.scope === 'stack' &&
|
|
9791
|
-
point.stackTotal) {
|
|
9792
|
-
const stackEnd = yAxis.translate(percent ? 100 : point.stackTotal, false, true, false, true), stackThreshold = yAxis.translate(options.threshold || 0, false, true, false, true), box = this.crispCol(0, Math.min(stackEnd, stackThreshold), 0, Math.abs(stackEnd - stackThreshold));
|
|
9793
|
-
brBoxY = box.y;
|
|
9794
|
-
brBoxHeight = box.height;
|
|
9795
|
-
}
|
|
9796
|
-
const flip = (point.negative ? -1 : 1) *
|
|
9797
|
-
(reversed ? -1 : 1) === -1;
|
|
9798
|
-
// Handle the where option
|
|
9799
|
-
let where = borderRadius.where;
|
|
9800
|
-
// Waterfall, hanging columns should have rounding on
|
|
9801
|
-
// all sides
|
|
9802
|
-
if (!where &&
|
|
9803
|
-
this.is('waterfall') &&
|
|
9804
|
-
Math.abs((point.yBottom || 0) -
|
|
9805
|
-
(this.translatedThreshold || 0)) > this.borderWidth) {
|
|
9806
|
-
where = 'all';
|
|
9807
|
-
}
|
|
9808
|
-
if (!where) {
|
|
9809
|
-
where = 'end';
|
|
9810
|
-
}
|
|
9811
|
-
// Get the radius
|
|
9812
|
-
const r = Math.min(relativeLength(borderRadius.radius, width), width / 2,
|
|
9813
|
-
// Cap to the height, but not if where is `end`
|
|
9814
|
-
where === 'all' ? brBoxHeight / 2 : Infinity) || 0;
|
|
9815
|
-
// If the `where` option is 'end', cut off the
|
|
9816
|
-
// rectangles by making the border-radius box one r
|
|
9817
|
-
// greater, so that the imaginary radius falls outside
|
|
9818
|
-
// the rectangle.
|
|
9819
|
-
if (where === 'end') {
|
|
9820
|
-
if (flip) {
|
|
9821
|
-
brBoxY -= r;
|
|
9822
|
-
brBoxHeight += r;
|
|
9823
|
-
}
|
|
9824
|
-
else {
|
|
9825
|
-
brBoxHeight += r;
|
|
9826
|
-
}
|
|
9827
|
-
}
|
|
9828
|
-
extend(shapeArgs, { brBoxHeight, brBoxY, r });
|
|
10046
|
+
const PolygonSeriesDefaults = {
|
|
10047
|
+
/**
|
|
10048
|
+
* Fill opacity for the polygon. When you set an explicit `fillColor`,
|
|
10049
|
+
* the `fillOpacity` is not applied. Instead, you should define the
|
|
10050
|
+
* opacity in the `fillColor` with an rgba color definition.
|
|
10051
|
+
*
|
|
10052
|
+
* In styled mode, the fill opacity can be set with the
|
|
10053
|
+
* `.highcharts-area` class name.
|
|
10054
|
+
*
|
|
10055
|
+
* @see [color](#plotOptions.polygon.color)
|
|
10056
|
+
* @see [fillColor](#plotOptions.polygon.fillColor)
|
|
10057
|
+
*
|
|
10058
|
+
* @sample {highcharts} highcharts/demo/violin-plot/
|
|
10059
|
+
* Translucent violins
|
|
10060
|
+
*
|
|
10061
|
+
* @type {number}
|
|
10062
|
+
* @default 1
|
|
10063
|
+
* @since 13.0.1
|
|
10064
|
+
* @product highcharts highstock
|
|
10065
|
+
*/
|
|
10066
|
+
fillOpacity: 1,
|
|
10067
|
+
marker: {
|
|
10068
|
+
enabled: false,
|
|
10069
|
+
states: {
|
|
10070
|
+
hover: {
|
|
10071
|
+
enabled: false
|
|
9829
10072
|
}
|
|
9830
10073
|
}
|
|
9831
|
-
}
|
|
9832
|
-
|
|
9833
|
-
|
|
9834
|
-
|
|
9835
|
-
|
|
9836
|
-
|
|
9837
|
-
|
|
9838
|
-
|
|
9839
|
-
|
|
9840
|
-
order: 9
|
|
9841
|
-
});
|
|
9842
|
-
addEvent(PieSeriesClass, 'afterTranslate', pieSeriesOnAfterTranslate);
|
|
9843
|
-
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY', 'brEnd', 'brStart');
|
|
9844
|
-
oldArc = symbols.arc;
|
|
9845
|
-
oldRoundedRect = symbols.roundedRect;
|
|
9846
|
-
symbols.arc = arc;
|
|
9847
|
-
symbols.roundedRect = roundedRect;
|
|
9848
|
-
}
|
|
9849
|
-
}
|
|
9850
|
-
/** @internal */
|
|
9851
|
-
function optionsToObject(options, seriesBROptions) {
|
|
9852
|
-
if (!(0,external_highcharts_src_js_default_namespaceObject.isObject)(options)) {
|
|
9853
|
-
options = { radius: options || 0 };
|
|
9854
|
-
}
|
|
9855
|
-
return (0,external_highcharts_src_js_default_namespaceObject.merge)(defaultBorderRadiusOptions, seriesBROptions, options);
|
|
9856
|
-
}
|
|
9857
|
-
/** @internal */
|
|
9858
|
-
function pieSeriesOnAfterTranslate() {
|
|
9859
|
-
const borderRadius = optionsToObject(this.options.borderRadius);
|
|
9860
|
-
for (const point of this.points) {
|
|
9861
|
-
const shapeArgs = point.shapeArgs;
|
|
9862
|
-
if (shapeArgs) {
|
|
9863
|
-
shapeArgs.borderRadius = relativeLength(borderRadius.radius, (shapeArgs.r || 0) - ((shapeArgs.innerR) || 0));
|
|
9864
|
-
}
|
|
9865
|
-
}
|
|
9866
|
-
}
|
|
10074
|
+
},
|
|
10075
|
+
stickyTracking: false,
|
|
10076
|
+
tooltip: {
|
|
10077
|
+
followPointer: true,
|
|
10078
|
+
pointFormat: ''
|
|
10079
|
+
},
|
|
10080
|
+
trackByArea: true,
|
|
10081
|
+
legendSymbol: 'rectangle'
|
|
10082
|
+
};
|
|
9867
10083
|
/**
|
|
9868
|
-
*
|
|
9869
|
-
*
|
|
10084
|
+
* A `polygon` series. If the [type](#series.polygon.type) option is
|
|
10085
|
+
* not specified, it is inherited from [chart.type](#chart.type).
|
|
10086
|
+
*
|
|
10087
|
+
* @extends series,plotOptions.polygon
|
|
10088
|
+
* @excluding dataParser, dataURL, stack, boostThreshold, boostBlending
|
|
10089
|
+
* @product highcharts highstock
|
|
10090
|
+
* @requires highcharts-more
|
|
10091
|
+
* @apioption series.polygon
|
|
9870
10092
|
*/
|
|
9871
|
-
|
|
9872
|
-
|
|
9873
|
-
|
|
9874
|
-
|
|
9875
|
-
|
|
9876
|
-
|
|
9877
|
-
|
|
10093
|
+
/**
|
|
10094
|
+
* An array of data points for the series. For the `polygon` series
|
|
10095
|
+
* type, points can be given in the following ways:
|
|
10096
|
+
*
|
|
10097
|
+
* 1. An array of numerical values. In this case, the numerical values will be
|
|
10098
|
+
* interpreted as `y` options. The `x` values will be automatically
|
|
10099
|
+
* calculated, either starting at 0 and incremented by 1, or from
|
|
10100
|
+
* `pointStart` and `pointInterval` given in the series options. If the axis
|
|
10101
|
+
* has categories, these will be used. Example:
|
|
10102
|
+
* ```js
|
|
10103
|
+
* data: [0, 5, 3, 5]
|
|
10104
|
+
* ```
|
|
10105
|
+
*
|
|
10106
|
+
* 2. An array of arrays with 2 values. In this case, the values correspond to
|
|
10107
|
+
* `x,y`. If the first value is a string, it is applied as the name of the
|
|
10108
|
+
* point, and the `x` value is inferred.
|
|
10109
|
+
* ```js
|
|
10110
|
+
* data: [
|
|
10111
|
+
* [0, 10],
|
|
10112
|
+
* [1, 3],
|
|
10113
|
+
* [2, 1]
|
|
10114
|
+
* ]
|
|
10115
|
+
* ```
|
|
10116
|
+
*
|
|
10117
|
+
* 3. An array of objects with named values. The following snippet shows only a
|
|
10118
|
+
* few settings, see the complete options set below. If the total number of
|
|
10119
|
+
* data points exceeds the series'
|
|
10120
|
+
* [turboThreshold](#series.polygon.turboThreshold), this option is not
|
|
10121
|
+
* available.
|
|
10122
|
+
* ```js
|
|
10123
|
+
* data: [{
|
|
10124
|
+
* x: 1,
|
|
10125
|
+
* y: 1,
|
|
10126
|
+
* name: "Point2",
|
|
10127
|
+
* color: "#00FF00"
|
|
10128
|
+
* }, {
|
|
10129
|
+
* x: 1,
|
|
10130
|
+
* y: 8,
|
|
10131
|
+
* name: "Point1",
|
|
10132
|
+
* color: "#FF00FF"
|
|
10133
|
+
* }]
|
|
10134
|
+
* ```
|
|
10135
|
+
*
|
|
10136
|
+
* @sample {highcharts} highcharts/chart/reflow-true/
|
|
10137
|
+
* Numerical values
|
|
10138
|
+
* @sample {highcharts} highcharts/series/data-array-of-arrays/
|
|
10139
|
+
* Arrays of numeric x and y
|
|
10140
|
+
* @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/
|
|
10141
|
+
* Arrays of datetime x and y
|
|
10142
|
+
* @sample {highcharts} highcharts/series/data-array-of-name-value/
|
|
10143
|
+
* Arrays of point.name and y
|
|
10144
|
+
* @sample {highcharts} highcharts/series/data-array-of-objects/
|
|
10145
|
+
* Config objects
|
|
10146
|
+
*
|
|
10147
|
+
* @basic
|
|
10148
|
+
* @type {Array<number|Array<(number|string),(number|null)>|null|*>}
|
|
10149
|
+
* @extends series.line.data
|
|
10150
|
+
* @product highcharts highstock
|
|
10151
|
+
* @apioption series.polygon.data
|
|
10152
|
+
*/
|
|
10153
|
+
''; // Keeps doclets above separate
|
|
10154
|
+
/* *
|
|
10155
|
+
*
|
|
10156
|
+
* Default Export
|
|
10157
|
+
*
|
|
10158
|
+
* */
|
|
10159
|
+
/* harmony default export */ const Polygon_PolygonSeriesDefaults = (PolygonSeriesDefaults);
|
|
9878
10160
|
|
|
9879
|
-
|
|
10161
|
+
;// ./code/es-modules/Series/Polygon/PolygonSeries.js
|
|
10162
|
+
/* *
|
|
10163
|
+
*
|
|
10164
|
+
* (c) 2010-2026 Highsoft AS
|
|
10165
|
+
* Author: Torstein Hønsi
|
|
10166
|
+
*
|
|
10167
|
+
* Integration of this software requires a license.
|
|
10168
|
+
* - For commercial use, see www.highcharts.com/license
|
|
10169
|
+
* - For non-commercial, see www.highcharts.com/license-eula
|
|
10170
|
+
*
|
|
10171
|
+
*
|
|
10172
|
+
* */
|
|
9880
10173
|
|
|
9881
|
-
/ a -------- b \
|
|
9882
|
-
/ \
|
|
9883
|
-
h c
|
|
9884
|
-
| |
|
|
9885
|
-
| |
|
|
9886
|
-
| |
|
|
9887
|
-
g d
|
|
9888
|
-
\ /
|
|
9889
|
-
\ f -------- e /
|
|
9890
10174
|
|
|
9891
|
-
|
|
9892
|
-
|
|
9893
|
-
|
|
9894
|
-
|
|
9895
|
-
|
|
9896
|
-
|
|
9897
|
-
|
|
9898
|
-
|
|
9899
|
-
|
|
9900
|
-
|
|
9901
|
-
|
|
9902
|
-
|
|
9903
|
-
|
|
9904
|
-
|
|
9905
|
-
|
|
9906
|
-
|
|
9907
|
-
|
|
9908
|
-
|
|
9909
|
-
|
|
9910
|
-
|
|
9911
|
-
|
|
9912
|
-
|
|
9913
|
-
|
|
9914
|
-
|
|
9915
|
-
|
|
9916
|
-
|
|
9917
|
-
|
|
9918
|
-
const base = applyPythagoras(rBtm, rBtm - cutBtm);
|
|
9919
|
-
e[0] += base;
|
|
9920
|
-
f[0] -= base;
|
|
9921
|
-
d[1] = g[1] = y + height - rBtm + cutBtm;
|
|
10175
|
+
const { noop: PolygonSeries_noop } = (external_highcharts_src_js_default_default());
|
|
10176
|
+
|
|
10177
|
+
|
|
10178
|
+
const { area: PolygonSeries_AreaSeries, line: LineSeries, scatter: PolygonSeries_ScatterSeries } = (external_highcharts_src_js_default_SeriesRegistry_default()).seriesTypes;
|
|
10179
|
+
|
|
10180
|
+
/* *
|
|
10181
|
+
*
|
|
10182
|
+
* Class
|
|
10183
|
+
*
|
|
10184
|
+
* */
|
|
10185
|
+
class PolygonSeries extends PolygonSeries_ScatterSeries {
|
|
10186
|
+
/* *
|
|
10187
|
+
*
|
|
10188
|
+
* Functions
|
|
10189
|
+
*
|
|
10190
|
+
* */
|
|
10191
|
+
getGraphPath() {
|
|
10192
|
+
const graphPath = LineSeries.prototype.getGraphPath.call(this);
|
|
10193
|
+
let i = graphPath.length + 1;
|
|
10194
|
+
// Close all segments
|
|
10195
|
+
while (i--) {
|
|
10196
|
+
if ((i === graphPath.length || graphPath[i][0] === 'M') && i > 0) {
|
|
10197
|
+
graphPath.splice(i, 0, ['Z']);
|
|
10198
|
+
}
|
|
10199
|
+
}
|
|
10200
|
+
this.areaPath = graphPath;
|
|
10201
|
+
return graphPath;
|
|
9922
10202
|
}
|
|
9923
|
-
|
|
9924
|
-
|
|
9925
|
-
|
|
9926
|
-
|
|
9927
|
-
b[0] = Math.min(c[0], b[0]);
|
|
9928
|
-
a[0] = Math.max(d[0], a[0]);
|
|
9929
|
-
g[0] = h[0] = x + rBtm - base;
|
|
9930
|
-
d[1] = g[1] = y;
|
|
10203
|
+
drawGraph() {
|
|
10204
|
+
// Borrow the fill logic from area.drawGraph, honoring `fillOpacity`
|
|
10205
|
+
// and an optional `fillColor`
|
|
10206
|
+
PolygonSeries_AreaSeries.prototype.drawGraph.call(this);
|
|
9931
10207
|
}
|
|
9932
|
-
// Preserve the box for data labels
|
|
9933
|
-
path.length = 0;
|
|
9934
|
-
path.push(['M', ...a],
|
|
9935
|
-
// Top side
|
|
9936
|
-
['L', ...b],
|
|
9937
|
-
// Top right corner
|
|
9938
|
-
['A', rTop, rTop, 0, 0, 1, ...c],
|
|
9939
|
-
// Right side
|
|
9940
|
-
['L', ...d],
|
|
9941
|
-
// Bottom right corner
|
|
9942
|
-
['A', rBtm, rBtm, 0, 0, 1, ...e],
|
|
9943
|
-
// Bottom side
|
|
9944
|
-
['L', ...f],
|
|
9945
|
-
// Bottom left corner
|
|
9946
|
-
['A', rBtm, rBtm, 0, 0, 1, ...g],
|
|
9947
|
-
// Left side
|
|
9948
|
-
['L', ...h],
|
|
9949
|
-
// Top left corner
|
|
9950
|
-
['A', rTop, rTop, 0, 0, 1, ...a], ['Z']);
|
|
9951
|
-
return path;
|
|
9952
10208
|
}
|
|
9953
10209
|
/* *
|
|
9954
10210
|
*
|
|
9955
|
-
*
|
|
10211
|
+
* Static Properties
|
|
9956
10212
|
*
|
|
9957
10213
|
* */
|
|
9958
|
-
|
|
9959
|
-
|
|
10214
|
+
PolygonSeries.defaultOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(PolygonSeries_ScatterSeries.defaultOptions, Polygon_PolygonSeriesDefaults);
|
|
10215
|
+
(0,external_highcharts_src_js_default_namespaceObject.extend)(PolygonSeries.prototype, {
|
|
10216
|
+
type: 'polygon',
|
|
10217
|
+
drawTracker: LineSeries.prototype.drawTracker,
|
|
10218
|
+
setStackedPoints: PolygonSeries_noop // No stacking points on polygons (#5310)
|
|
10219
|
+
});
|
|
10220
|
+
external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('polygon', PolygonSeries);
|
|
10221
|
+
/* *
|
|
9960
10222
|
*
|
|
9961
|
-
*
|
|
9962
|
-
* Rounded columns
|
|
9963
|
-
* @sample highcharts/plotoptions/series-border-radius
|
|
9964
|
-
* Column and pie with rounded border
|
|
10223
|
+
* Default Export
|
|
9965
10224
|
*
|
|
9966
|
-
*
|
|
9967
|
-
*/
|
|
9968
|
-
* The border radius. A number signifies pixels. A percentage string, like for
|
|
9969
|
-
* example `50%`, signifies a relative size. For columns this is relative to the
|
|
9970
|
-
* column width, for pies it is relative to the radius and the inner radius.
|
|
9971
|
-
*
|
|
9972
|
-
* @sample {highcharts} highcharts/plotoptions/column-borderradius/
|
|
9973
|
-
* Rounded columns
|
|
9974
|
-
* @sample highcharts/plotoptions/series-border-radius
|
|
9975
|
-
* Column and pie with rounded border
|
|
9976
|
-
*
|
|
9977
|
-
* @name Highcharts.BorderRadiusOptionsObject#radius
|
|
9978
|
-
* @type {string|number}
|
|
9979
|
-
*/ /**
|
|
9980
|
-
* The scope of the rounding for column charts or plot bands. In a stacked
|
|
9981
|
-
* column chart, the value `point` means each single point will get rounded
|
|
9982
|
-
* corners. The value `stack` means the rounding will apply to the full
|
|
9983
|
-
* stack, so that only points close to the top or bottom will receive
|
|
9984
|
-
* rounding.
|
|
9985
|
-
*
|
|
9986
|
-
* Similarly, for plot bands, the `individual` value means each plot band
|
|
9987
|
-
* will get rounded corners.
|
|
9988
|
-
*
|
|
9989
|
-
* @sample {highcharts} highcharts/plotoptions/column-borderradius/
|
|
9990
|
-
* Rounded columns
|
|
9991
|
-
*
|
|
9992
|
-
* @name Highcharts.BorderRadiusOptionsObject#scope
|
|
9993
|
-
* @validvalue ["individual", "point", "stack"]
|
|
9994
|
-
* @type {string}
|
|
9995
|
-
*/ /**
|
|
9996
|
-
* For column charts, where in the point or stack to apply rounding. The `end`
|
|
9997
|
-
* value means only those corners at the point value will be rounded, leaving
|
|
9998
|
-
* the corners at the base or threshold unrounded. This is the most intuitive
|
|
9999
|
-
* behavior. The `all` value means also the base will be rounded.
|
|
10000
|
-
*
|
|
10001
|
-
* @sample {highcharts} highcharts/plotoptions/column-borderradius-where-all
|
|
10002
|
-
* Rounding on all corners
|
|
10003
|
-
*
|
|
10004
|
-
* @name Highcharts.BorderRadiusOptionsObject#where
|
|
10005
|
-
* @validvalue ["all", "end"]
|
|
10006
|
-
* @type {string}
|
|
10007
|
-
* @default end
|
|
10008
|
-
*/
|
|
10009
|
-
(''); // Keeps doclets above in JS file
|
|
10225
|
+
* */
|
|
10226
|
+
/* harmony default export */ const Polygon_PolygonSeries = ((/* unused pure expression or super */ null && (PolygonSeries)));
|
|
10010
10227
|
|
|
10011
10228
|
;// external ["./highcharts.src.js","default","Series"]
|
|
10012
10229
|
const external_highcharts_src_js_default_Series_namespaceObject = __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_c57973fa__["default"].Series;
|
|
@@ -10234,7 +10451,7 @@ var RadialAxis;
|
|
|
10234
10451
|
// one closestPointRange is added to the X axis to prevent the last
|
|
10235
10452
|
// point from overlapping the first.
|
|
10236
10453
|
this.autoConnect = (this.isCircular &&
|
|
10237
|
-
typeof (
|
|
10454
|
+
typeof (this.userMax ?? this.options.max) === 'undefined' &&
|
|
10238
10455
|
(0,external_highcharts_src_js_default_namespaceObject.correctFloat)(this.endAngleRad - this.startAngleRad) ===
|
|
10239
10456
|
(0,external_highcharts_src_js_default_namespaceObject.correctFloat)(2 * Math.PI));
|
|
10240
10457
|
// This will lead to add an extra tick to xAxis in order to display
|
|
@@ -10362,7 +10579,7 @@ var RadialAxis;
|
|
|
10362
10579
|
*/
|
|
10363
10580
|
function getLinePath(_lineWidth, radius, innerRadius) {
|
|
10364
10581
|
const center = this.pane.center, chart = this.chart, left = this.left || 0, top = this.top || 0;
|
|
10365
|
-
let end, path, r = (
|
|
10582
|
+
let end, path, r = (radius ?? center[2] / 2 - this.offset);
|
|
10366
10583
|
innerRadius ?? (innerRadius = this.horiz ? 0 : this.center && -this.center[3] / 2);
|
|
10367
10584
|
// In case when innerSize of pane is set, it must be included
|
|
10368
10585
|
if (innerRadius && innerRadius > 0) {
|
|
@@ -10425,10 +10642,10 @@ var RadialAxis;
|
|
|
10425
10642
|
return r;
|
|
10426
10643
|
}
|
|
10427
10644
|
return radius;
|
|
10428
|
-
}, center = this.center, { endAngleRad, startAngleRad } = this, borderRadius =
|
|
10645
|
+
}, center = this.center, { endAngleRad, startAngleRad } = this, borderRadius = borderRadiusObject(options.borderRadius ??
|
|
10429
10646
|
this.pane.options.borderRadius), fullRadius = center[2] / 2, offset = Math.min(this.offset || 0, 0), left = this.left || 0, top = this.top || 0, percentRegex = /%$/, isCircular = this.isCircular, // X axis in a polar chart
|
|
10430
10647
|
trueBands = this.options.plotBands || [], index = trueBands.indexOf(options);
|
|
10431
|
-
let start, end, angle, xOnPerimeter, open, path, outerRadius = (
|
|
10648
|
+
let start, end, angle, xOnPerimeter, open, path, outerRadius = (radiusToPixels(options.outerRadius) ?? fullRadius), innerRadius = radiusToPixels(options.innerRadius), thickness = radiusToPixels(options.thickness), brStart = true, brEnd = true;
|
|
10432
10649
|
// Apply conditional border radius, only for ends of band stacks
|
|
10433
10650
|
if (borderRadius.radius &&
|
|
10434
10651
|
borderRadius.scope === 'stack' &&
|
|
@@ -10487,7 +10704,9 @@ var RadialAxis;
|
|
|
10487
10704
|
// Math is for reversed yAxis (#3606)
|
|
10488
10705
|
start: Math.min(start, end),
|
|
10489
10706
|
end: Math.max(start, end),
|
|
10490
|
-
innerR:
|
|
10707
|
+
innerR: innerRadius ?? ((0,external_highcharts_src_js_default_namespaceObject.isNumber)(thickness) ?
|
|
10708
|
+
outerRadius - thickness :
|
|
10709
|
+
this.center[3] / 2),
|
|
10491
10710
|
open,
|
|
10492
10711
|
borderRadius: borderRadius.radius,
|
|
10493
10712
|
brStart,
|
|
@@ -10561,17 +10780,12 @@ var RadialAxis;
|
|
|
10561
10780
|
// Concentric circles
|
|
10562
10781
|
}
|
|
10563
10782
|
else {
|
|
10564
|
-
// Pick the right values depending if it is grid line or crosshair
|
|
10565
|
-
|
|
10566
|
-
//
|
|
10567
|
-
//
|
|
10568
|
-
//
|
|
10569
|
-
|
|
10570
|
-
if (transValue) {
|
|
10571
|
-
if (transValue < 0 || transValue > height) {
|
|
10572
|
-
transValue = 0;
|
|
10573
|
-
}
|
|
10574
|
-
}
|
|
10783
|
+
// Pick the right values depending if it is grid line or crosshair.
|
|
10784
|
+
// Clamp is required in case when xAxis is non-circular to prevent
|
|
10785
|
+
// grid lines (or crosshairs, if enabled) from rendering above the
|
|
10786
|
+
// center after they supposed to be displayed below the center
|
|
10787
|
+
// point.
|
|
10788
|
+
let transValue = (0,external_highcharts_src_js_default_namespaceObject.clamp)(this.translate(value), 0, height);
|
|
10575
10789
|
if (this.options.gridLineInterpolation === 'circle') {
|
|
10576
10790
|
// A value of 0 is in the center, so it won't be
|
|
10577
10791
|
// visible, but draw it anyway for update and animation
|
|
@@ -10622,13 +10836,16 @@ var RadialAxis;
|
|
|
10622
10836
|
*/
|
|
10623
10837
|
function getPosition(value, length) {
|
|
10624
10838
|
const translatedVal = this.translate(value);
|
|
10839
|
+
const centerRadius = ((this.center && this.center[2]) || 0) / 2;
|
|
10625
10840
|
return this.postTranslate(this.isCircular ? translatedVal : this.angleRad, // #2848
|
|
10626
10841
|
// In case when translatedVal is negative, the 0 value must be
|
|
10627
10842
|
// used instead, in order to deal with lines and labels that
|
|
10628
10843
|
// fall out of the visible range near the center of a pane
|
|
10629
|
-
(
|
|
10630
|
-
length :
|
|
10631
|
-
(translatedVal
|
|
10844
|
+
(this.isCircular ?
|
|
10845
|
+
(length ?? centerRadius) :
|
|
10846
|
+
(typeof translatedVal === 'number' && translatedVal < 0 ?
|
|
10847
|
+
0 :
|
|
10848
|
+
translatedVal ?? centerRadius)) - this.offset);
|
|
10632
10849
|
}
|
|
10633
10850
|
/**
|
|
10634
10851
|
* Find the position for the axis title, by default inside the gauge.
|
|
@@ -10695,7 +10912,8 @@ var RadialAxis;
|
|
|
10695
10912
|
// Start and end angle options are given in degrees relative to
|
|
10696
10913
|
// top, while internal computations are in radians relative to
|
|
10697
10914
|
// right (like SVG).
|
|
10698
|
-
start = (startAngle - 90) * Math.PI / 180, end = ((
|
|
10915
|
+
start = (startAngle - 90) * Math.PI / 180, end = ((paneOptions.endAngle ??
|
|
10916
|
+
startAngle + (chart.angular ? 270 : 360)) - 90) * Math.PI / 180;
|
|
10699
10917
|
// Y axis in polar charts
|
|
10700
10918
|
this.angleRad = (options.angle || 0) * Math.PI / 180;
|
|
10701
10919
|
// Gauges
|
|
@@ -11135,7 +11353,6 @@ var RadialAxis;
|
|
|
11135
11353
|
* */
|
|
11136
11354
|
|
|
11137
11355
|
|
|
11138
|
-
const { animObject: PolarComposition_animObject } = (external_highcharts_src_js_default_default());
|
|
11139
11356
|
|
|
11140
11357
|
|
|
11141
11358
|
const { defaultOptions: PolarComposition_defaultOptions } = (external_highcharts_src_js_default_default());
|
|
@@ -11462,7 +11679,7 @@ function onSeriesAfterColumnTranslate() {
|
|
|
11462
11679
|
chart.polar &&
|
|
11463
11680
|
chart.inverted) {
|
|
11464
11681
|
const seriesDefault = PolarComposition_defaultOptions.plotOptions?.[this.type]
|
|
11465
|
-
?.borderRadius, { scope, where = 'end' } =
|
|
11682
|
+
?.borderRadius, { scope, where = 'end' } = borderRadiusObject(options.borderRadius, (0,external_highcharts_src_js_default_namespaceObject.isObject)(seriesDefault) ? seriesDefault : {});
|
|
11466
11683
|
for (const point of this.points) {
|
|
11467
11684
|
const { shapeArgs } = point;
|
|
11468
11685
|
if (point.shapeType === 'arc' && shapeArgs) {
|
|
@@ -11510,7 +11727,7 @@ function onSeriesAfterTranslate() {
|
|
|
11510
11727
|
// Treat points below Y axis min as null (#10082)
|
|
11511
11728
|
if (!chart.hasParallelCoordinates &&
|
|
11512
11729
|
!series.yAxis.reversed) {
|
|
11513
|
-
if ((
|
|
11730
|
+
if ((points[i].y ?? Number.MIN_VALUE) < yAxis.min ||
|
|
11514
11731
|
points[i].x < xAxis.min ||
|
|
11515
11732
|
points[i].x > xAxis.max) {
|
|
11516
11733
|
// Destroy markers
|
|
@@ -11603,7 +11820,7 @@ function wrapChartGet(proceed, id) {
|
|
|
11603
11820
|
* @private
|
|
11604
11821
|
*/
|
|
11605
11822
|
function wrapColumnSeriesAlignDataLabel(proceed, point, dataLabel, options, alignTo, isNew) {
|
|
11606
|
-
const chart = this.chart, inside = (
|
|
11823
|
+
const chart = this.chart, inside = (options.inside ?? !!this.options.stacking);
|
|
11607
11824
|
let angle, shapeArgs, labelPos;
|
|
11608
11825
|
if (chart.polar) {
|
|
11609
11826
|
angle = point.rectPlotX / Math.PI * 180;
|
|
@@ -11640,9 +11857,9 @@ function wrapColumnSeriesAlignDataLabel(proceed, point, dataLabel, options, alig
|
|
|
11640
11857
|
y: point.tooltipPos[1]
|
|
11641
11858
|
});
|
|
11642
11859
|
}
|
|
11643
|
-
options.align = (
|
|
11860
|
+
options.align = (options.align ?? 'center');
|
|
11644
11861
|
options.verticalAlign =
|
|
11645
|
-
(
|
|
11862
|
+
(options.verticalAlign ?? 'middle');
|
|
11646
11863
|
}
|
|
11647
11864
|
external_highcharts_src_js_default_Series_default().prototype.alignDataLabel.call(this, point, dataLabel, options, alignTo, isNew);
|
|
11648
11865
|
// Hide label of a point (only inverted) that is outside the
|
|
@@ -11664,7 +11881,7 @@ function wrapColumnSeriesAlignDataLabel(proceed, point, dataLabel, options, alig
|
|
|
11664
11881
|
* @private
|
|
11665
11882
|
*/
|
|
11666
11883
|
function onAfterColumnTranslate() {
|
|
11667
|
-
const series = this,
|
|
11884
|
+
const series = this, { chart, options, xAxis, yAxis } = series, stacking = options.stacking, { center, reversed } = yAxis, { endAngleRad, startAngleRad } = xAxis, visibleRange = endAngleRad - startAngleRad;
|
|
11668
11885
|
let threshold = options.threshold, thresholdAngleRad = 0, points, point, i, yMin, yMax, start = 0, end = 0, tooltipPos, pointX, pointY, stackValues, stack, barX, innerR, r;
|
|
11669
11886
|
// Postprocess plot coordinates
|
|
11670
11887
|
if (xAxis.isRadial) {
|
|
@@ -11762,8 +11979,7 @@ function onAfterColumnTranslate() {
|
|
|
11762
11979
|
innerR = Math.max(barX, 0);
|
|
11763
11980
|
r = Math.max(barX + (point.pointWidth || 0), 0);
|
|
11764
11981
|
// Handle border radius
|
|
11765
|
-
const brOption = options.borderRadius,
|
|
11766
|
-
brOption.radius : brOption, borderRadius = (0,external_highcharts_src_js_default_namespaceObject.relativeLength)(brValue || 0, r - innerR);
|
|
11982
|
+
const brOption = borderRadiusObject(options.borderRadius), borderRadius = (0,external_highcharts_src_js_default_namespaceObject.relativeLength)(brOption.radius, r - innerR);
|
|
11767
11983
|
point.shapeArgs = {
|
|
11768
11984
|
x: center[0],
|
|
11769
11985
|
y: center[1],
|
|
@@ -11921,12 +12137,13 @@ function wrapSeriesAnimate(proceed, init) {
|
|
|
11921
12137
|
if (series.isRadialBar) {
|
|
11922
12138
|
if (!init) {
|
|
11923
12139
|
// Run the pie animation for radial bars
|
|
11924
|
-
series.startAngleRad =
|
|
12140
|
+
series.startAngleRad =
|
|
12141
|
+
series.translatedThreshold ?? series.xAxis.startAngleRad;
|
|
11925
12142
|
external_highcharts_src_js_default_default().seriesTypes.pie.prototype.animate.call(series, init);
|
|
11926
12143
|
}
|
|
11927
12144
|
}
|
|
11928
12145
|
else {
|
|
11929
|
-
animation =
|
|
12146
|
+
animation = (0,external_highcharts_src_js_default_namespaceObject.animObject)(animation);
|
|
11930
12147
|
// A different animation needed for column like series
|
|
11931
12148
|
if (series.is('column')) {
|
|
11932
12149
|
if (!init) {
|
|
@@ -12116,7 +12333,7 @@ class PolarAdditions {
|
|
|
12116
12333
|
* */
|
|
12117
12334
|
arc(low, high, start, end) {
|
|
12118
12335
|
const series = this.series, center = series.xAxis.center, len = series.yAxis.len, paneInnerR = center[3] / 2;
|
|
12119
|
-
let r = len - high + paneInnerR, innerR = len - (
|
|
12336
|
+
let r = len - high + paneInnerR, innerR = len - (low ?? len) + paneInnerR;
|
|
12120
12337
|
// Prevent columns from shooting through the pane's center
|
|
12121
12338
|
if (series.yAxis.reversed) {
|
|
12122
12339
|
if (r < 0) {
|
|
@@ -12705,7 +12922,7 @@ class WaterfallSeries extends WaterfallSeries_ColumnSeries {
|
|
|
12705
12922
|
pointAttribs(point, state) {
|
|
12706
12923
|
const upColor = this.options.upColor;
|
|
12707
12924
|
// Set or reset up color (#3710, update to negative)
|
|
12708
|
-
if (upColor && !point.options.color && (0,external_highcharts_src_js_default_namespaceObject.isNumber)(point.y)) {
|
|
12925
|
+
if (upColor && point && !point.options.color && (0,external_highcharts_src_js_default_namespaceObject.isNumber)(point.y)) {
|
|
12709
12926
|
point.color = point.y > 0 ? upColor : void 0;
|
|
12710
12927
|
}
|
|
12711
12928
|
const attr = WaterfallSeries_ColumnSeries.prototype.pointAttribs.call(this, point, state);
|
|
@@ -12944,7 +13161,7 @@ WaterfallSeries.compose = Axis_WaterfallAxis.compose;
|
|
|
12944
13161
|
});
|
|
12945
13162
|
// Translate data points from raw values
|
|
12946
13163
|
(0,external_highcharts_src_js_default_namespaceObject.addEvent)(WaterfallSeries, 'afterColumnTranslate', function () {
|
|
12947
|
-
const series = this, { options, points, yAxis } = series, minPointLength = (
|
|
13164
|
+
const series = this, { options, points, yAxis } = series, minPointLength = (options.minPointLength ?? 5), halfMinPointLength = minPointLength / 2, threshold = options.threshold || 0, stacking = options.stacking, actualStack = yAxis.waterfall?.stacks[series.stackKey], processedYData = series.getColumn('y', true);
|
|
12948
13165
|
let previousIntermediate = threshold, previousY = threshold, y, total, hPos;
|
|
12949
13166
|
for (let i = 0; i < points.length; i++) {
|
|
12950
13167
|
const point = points[i], yValue = processedYData[i], shapeArgs = point.shapeArgs, box = (0,external_highcharts_src_js_default_namespaceObject.extend)({
|