highcharts 9.2.2 → 9.3.0
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/README.md +13 -6
- package/bower.json +1 -1
- package/css/annotations/popup.css +48 -8
- package/css/annotations/popup.scss +70 -22
- package/css/highcharts.css +45 -0
- package/css/highcharts.scss +40 -0
- package/css/themes/dark-unica.css +45 -0
- package/css/themes/grid-light.css +45 -0
- package/css/themes/sand-signika.css +45 -0
- package/es-modules/Accessibility/A11yI18n.js +273 -224
- package/es-modules/Accessibility/Accessibility.js +233 -128
- package/es-modules/Accessibility/AccessibilityComponent.js +79 -314
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +10 -0
- package/es-modules/Accessibility/Components/ContainerComponent.js +52 -27
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +46 -23
- package/es-modules/Accessibility/Components/LegendComponent.js +97 -65
- package/es-modules/Accessibility/Components/MenuComponent.js +59 -40
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -8
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +152 -115
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +133 -68
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +64 -27
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +38 -21
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +380 -325
- package/es-modules/Accessibility/Components/ZoomComponent.js +28 -20
- package/es-modules/Accessibility/FocusBorder.js +192 -147
- package/es-modules/Accessibility/HighContrastMode.js +78 -66
- package/es-modules/Accessibility/HighContrastTheme.js +10 -0
- package/es-modules/Accessibility/KeyboardNavigation.js +144 -70
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -1
- package/es-modules/Accessibility/Options/LangOptions.js +1 -2
- package/es-modules/Accessibility/Options/Options.js +32 -17
- package/es-modules/Accessibility/ProxyElement.js +212 -0
- package/es-modules/Accessibility/ProxyProvider.js +305 -0
- package/es-modules/Accessibility/Utils/Announcer.js +15 -8
- package/es-modules/Accessibility/Utils/ChartUtilities.js +41 -16
- package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
- package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -30
- package/es-modules/Core/Axis/Axis.js +37 -30
- package/es-modules/Core/Axis/AxisDefaults.js +35 -24
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +54 -4
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
- package/es-modules/Core/Axis/OrdinalAxis.js +8 -12
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
- package/es-modules/Core/Axis/ScrollbarAxis.js +10 -3
- package/es-modules/Core/Axis/TreeGridAxis.js +2 -2
- package/es-modules/Core/Axis/TreeGridTick.js +1 -2
- package/es-modules/Core/Chart/Chart.js +2 -3
- package/es-modules/Core/Chart/ChartDefaults.js +3 -4
- package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
- package/es-modules/Core/Chart/MapChart.js +10 -22
- package/es-modules/Core/Chart/StockChart.js +3 -293
- package/es-modules/Core/Color/Palettes.js +22 -0
- package/es-modules/Core/DefaultOptions.js +19 -17
- package/es-modules/Core/Foundation.js +39 -31
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/HttpUtilities.js +3 -3
- package/es-modules/Core/Legend/Legend.js +7 -3
- package/es-modules/Core/Navigator.js +7 -8
- package/es-modules/Core/Pointer.js +39 -36
- package/es-modules/Core/Renderer/HTML/AST.js +2 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -18
- package/es-modules/Core/Renderer/SVG/SVGElement.js +3 -4
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +21 -18
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +3 -3
- package/es-modules/Core/ScrollbarDefaults.js +10 -9
- package/es-modules/Core/Series/DataLabel.js +2 -3
- package/es-modules/Core/Series/Point.js +5 -3
- package/es-modules/Core/Series/Series.js +153 -162
- package/es-modules/Core/Series/SeriesDefaults.js +3 -4
- package/es-modules/Core/Series/SeriesRegistry.js +1 -2
- package/es-modules/Core/Tooltip.js +44 -17
- package/es-modules/Core/Utilities.js +15 -7
- package/es-modules/Data/DataConverter.js +489 -0
- package/es-modules/Data/DataPromise.js +252 -0
- package/es-modules/Data/DataSeriesConverter.js +203 -0
- package/es-modules/Data/DataTable.js +1204 -0
- package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
- package/es-modules/Data/Modifiers/DataModifier.js +303 -0
- package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
- package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
- package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
- package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
- package/es-modules/Data/Modifiers/SortModifier.js +249 -0
- package/es-modules/Data/Parsers/CSVParser.js +399 -0
- package/es-modules/Data/Parsers/DataParser.js +101 -0
- package/es-modules/Data/Parsers/GoogleSheetsParser.js +220 -0
- package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
- package/es-modules/Data/Stores/CSVStore.js +317 -0
- package/es-modules/Data/Stores/DataStore.js +276 -0
- package/es-modules/Data/Stores/GoogleSheetsStore.js +167 -0
- package/es-modules/Data/Stores/HTMLTableStore.js +351 -0
- package/es-modules/Extensions/Annotations/Annotations.js +61 -11
- package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
- package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +7 -1
- package/es-modules/Extensions/Annotations/NavigationBindings.js +68 -19
- package/es-modules/Extensions/Annotations/Popup.js +479 -141
- package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +1 -1
- package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
- package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
- package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
- package/es-modules/Extensions/Annotations/Types/Measure.js +14 -8
- package/es-modules/Extensions/Annotations/Types/Pitchfork.js +5 -5
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +207 -0
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -5
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
- package/es-modules/Extensions/Boost/BoostOverrides.js +3 -1
- package/es-modules/Extensions/Boost/WGLShader.js +4 -3
- package/es-modules/Extensions/BoostCanvas.js +1 -2
- package/es-modules/Extensions/CurrentDateIndication.js +2 -3
- package/es-modules/Extensions/DataGrouping.js +31 -18
- package/es-modules/Extensions/DownloadURL.js +2 -2
- package/es-modules/Extensions/DragPanes.js +1 -2
- package/es-modules/Extensions/Drilldown.js +2 -3
- package/es-modules/Extensions/Exporting/Exporting.js +8 -7
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
- package/es-modules/Extensions/GeoJSON.js +39 -63
- package/es-modules/Extensions/MarkerClusters.js +115 -97
- package/es-modules/Extensions/NoDataToDisplay.js +1 -2
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +9 -8
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
- package/es-modules/Extensions/Oldie/Oldie.js +2 -3
- package/es-modules/Extensions/Pane.js +5 -6
- package/es-modules/Extensions/RangeSelector.js +3 -4
- package/es-modules/Extensions/Sonification/ChartSonify.js +247 -637
- package/es-modules/Extensions/Sonification/Earcon.js +136 -102
- package/es-modules/Extensions/Sonification/Instrument.js +496 -426
- package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
- package/es-modules/Extensions/Sonification/Options.js +10 -0
- package/es-modules/Extensions/Sonification/PointSonify.js +203 -152
- package/es-modules/Extensions/Sonification/SeriesSonify.js +459 -0
- package/es-modules/Extensions/Sonification/SignalHandler.js +124 -0
- package/es-modules/Extensions/Sonification/Sonification.js +26 -52
- package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +62 -84
- package/es-modules/Extensions/Sonification/Timeline.js +255 -567
- package/es-modules/Extensions/Sonification/TimelineEvent.js +158 -0
- package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
- package/es-modules/Maps/MapNavigation.js +27 -64
- package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
- package/es-modules/Maps/MapPointer.js +7 -5
- package/es-modules/Maps/MapView.js +450 -0
- package/es-modules/Maps/MapViewOptionsDefault.js +95 -0
- package/es-modules/Maps/Projection.js +433 -0
- package/es-modules/Maps/ProjectionDefinition.js +9 -0
- package/es-modules/Maps/Projections/EqualEarth.js +42 -0
- package/es-modules/Maps/Projections/Miller.js +17 -0
- package/es-modules/Maps/Projections/Orthographic.js +26 -0
- package/es-modules/Maps/Projections/ProjectionRegistry.js +17 -0
- package/es-modules/Maps/Projections/WebMercator.js +25 -0
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +4 -5
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -8
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
- package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
- package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
- package/es-modules/Series/Bubble/BubblePoint.js +5 -0
- package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
- package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -18
- package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
- package/es-modules/Series/ColorMapComposition.js +109 -0
- package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
- package/es-modules/Series/Column/ColumnSeries.js +3 -4
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +6 -6
- package/es-modules/Series/DataModifyComposition.js +539 -0
- package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
- package/es-modules/Series/DerivedComposition.js +137 -0
- package/es-modules/Series/DrawPointComposition.js +111 -0
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -3
- package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
- package/es-modules/Series/Flags/FlagsSeries.js +18 -25
- package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
- package/es-modules/Series/Gantt/GanttSeries.js +0 -2
- package/es-modules/Series/Gauge/GaugePoint.js +1 -1
- package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
- package/es-modules/Series/HLC/HLCPoint.js +55 -0
- package/es-modules/Series/HLC/HLCSeries.js +383 -0
- package/es-modules/Series/Heatmap/HeatmapPoint.js +3 -4
- package/es-modules/Series/Heatmap/HeatmapSeries.js +19 -6
- package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +2 -3
- package/es-modules/Series/Histogram/HistogramSeries.js +3 -7
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -10
- package/es-modules/Series/Line/LineSeries.js +1 -2
- package/es-modules/Series/Map/MapPoint.js +23 -16
- package/es-modules/Series/Map/MapSeries.js +268 -309
- package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
- package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
- package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
- package/es-modules/Series/MapPoint/MapPointSeries.js +87 -4
- package/es-modules/Series/Networkgraph/Networkgraph.js +5 -5
- package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +76 -29
- package/es-modules/Series/OHLC/OHLCPoint.js +2 -6
- package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
- package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
- package/es-modules/Series/Organization/OrganizationSeries.js +2 -3
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +46 -6
- package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
- package/es-modules/Series/Pie/PieDataLabel.js +1 -2
- package/es-modules/Series/Pie/PieSeries.js +6 -7
- package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
- package/es-modules/Series/Sankey/SankeySeries.js +89 -20
- package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
- package/es-modules/Series/Sunburst/SunburstSeries.js +4 -4
- package/es-modules/Series/Tilemap/TilemapPoint.js +2 -3
- package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
- package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +86 -76
- package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +8 -8
- package/es-modules/Series/Venn/VennPoint.js +16 -7
- package/es-modules/Series/Venn/VennSeries.js +5 -8
- package/es-modules/Series/Venn/VennUtils.js +550 -439
- package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -3
- package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
- package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +24 -20
- package/es-modules/Series/Wordcloud/WordcloudUtils.js +673 -484
- package/es-modules/Series/XRange/XRangePoint.js +1 -0
- package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -6
- package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
- package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -6
- package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
- package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
- package/es-modules/Stock/Indicators/BB/BBIndicator.js +27 -11
- package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
- package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
- package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +19 -11
- package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +17 -11
- package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
- package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +11 -9
- package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -16
- package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +2 -2
- package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
- package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
- package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
- package/es-modules/{Mixins/MultipleLines.js → Stock/Indicators/MultipleLinesComposition.js} +136 -87
- package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
- package/es-modules/Stock/Indicators/PC/PCIndicator.js +14 -13
- package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
- package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -32
- package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
- package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +15 -8
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
- package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
- package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +20 -3
- package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
- package/es-modules/Stock/StockToolsBindings.js +144 -42
- package/es-modules/Stock/StockToolsGui.js +405 -11
- package/es-modules/masters/highcharts-3d.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 +1 -1
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ema.src.js +4 -10
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +2 -2
- package/es-modules/masters/indicators/indicators.src.js +2 -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 +16 -2
- package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
- package/es-modules/masters/modules/annotations.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/current-date-indicator.src.js +1 -1
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +6 -3
- 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/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/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -2
- 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 -3
- package/es-modules/masters/modules/marker-clusters.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/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
- package/es-modules/masters/modules/oldie.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
- package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
- package/es-modules/masters/modules/pareto.src.js +1 -1
- package/es-modules/masters/modules/pathfinder.src.js +1 -1
- package/es-modules/masters/modules/pattern-fill.src.js +1 -1
- package/es-modules/masters/modules/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/sankey.src.js +1 -1
- package/es-modules/masters/modules/series-label.src.js +1 -1
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +33 -2
- 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 +4 -1
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +1 -1
- package/es-modules/masters/modules/tilemap.src.js +1 -1
- package/es-modules/masters/modules/timeline.src.js +1 -1
- package/es-modules/masters/modules/treegrid.src.js +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/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/dark-blue.src.js +1 -1
- package/es-modules/masters/themes/dark-green.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/gray.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/grid.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/skies.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +1 -1
- package/highcharts-3d.src.js +1 -1
- package/highcharts-gantt.js +801 -804
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +775 -739
- package/highcharts-more.js +194 -193
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.js +207 -119
- package/highcharts.d.ts +9670 -4217
- package/highcharts.js +585 -588
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +9670 -4217
- package/highcharts.src.js +608 -587
- package/highmaps.js +726 -708
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +2708 -1587
- package/highstock.js +788 -783
- package/highstock.js.map +1 -1
- package/highstock.src.js +1896 -1267
- package/indicators/acceleration-bands.js +10 -9
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.js +156 -112
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.js +6 -6
- package/indicators/ao.js.map +1 -1
- package/indicators/ao.src.js +4 -4
- package/indicators/apo.js +5 -6
- package/indicators/apo.js.map +1 -1
- package/indicators/apo.src.js +16 -84
- package/indicators/aroon-oscillator.js +9 -9
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.js +160 -177
- package/indicators/aroon.js +9 -9
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.js +156 -112
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.js +10 -9
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.js +180 -117
- package/indicators/cci.js +1 -1
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.js +8 -9
- package/indicators/chaikin.js.map +1 -1
- package/indicators/chaikin.src.js +8 -76
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.src.js +1 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.src.js +1 -1
- package/indicators/dema.js +5 -6
- package/indicators/dema.js.map +1 -1
- package/indicators/dema.src.js +3 -75
- package/indicators/disparity-index.js +6 -7
- package/indicators/disparity-index.js.map +1 -1
- package/indicators/disparity-index.src.js +19 -74
- package/indicators/dmi.js +11 -11
- package/indicators/dmi.js.map +1 -1
- package/indicators/dmi.src.js +173 -116
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.src.js +1 -1
- package/indicators/ema.js +1 -13
- package/indicators/ema.js.map +1 -1
- package/indicators/ema.src.js +7 -188
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.js +197 -203
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.js +649 -720
- package/indicators/indicators.js +12 -12
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +188 -124
- package/indicators/keltner-channels.js +10 -10
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.js +164 -118
- package/indicators/klinger.js +12 -13
- package/indicators/klinger.js.map +1 -1
- package/indicators/klinger.src.js +161 -184
- package/indicators/macd.js +2 -2
- package/indicators/macd.js.map +1 -1
- package/indicators/macd.src.js +2 -3
- package/indicators/mfi.js +1 -1
- package/indicators/mfi.src.js +1 -1
- package/indicators/momentum.js +1 -1
- package/indicators/momentum.src.js +1 -1
- package/indicators/natr.js +3 -3
- package/indicators/natr.js.map +1 -1
- package/indicators/natr.src.js +2 -4
- package/indicators/obv.js +1 -1
- package/indicators/obv.src.js +1 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.src.js +1 -1
- package/indicators/ppo.js +5 -6
- package/indicators/ppo.js.map +1 -1
- package/indicators/ppo.src.js +3 -75
- package/indicators/price-channel.js +9 -9
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.js +207 -168
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.src.js +1 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.src.js +1 -1
- package/indicators/regressions.js +1 -1
- package/indicators/regressions.src.js +9 -9
- package/indicators/roc.js +1 -1
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.src.js +1 -1
- package/indicators/slow-stochastic.js +5 -6
- package/indicators/slow-stochastic.js.map +1 -1
- package/indicators/slow-stochastic.src.js +2 -72
- package/indicators/stochastic.js +10 -10
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.js +209 -164
- package/indicators/supertrend.js +10 -10
- package/indicators/supertrend.js.map +1 -1
- package/indicators/supertrend.src.js +6 -7
- package/indicators/tema.js +6 -7
- package/indicators/tema.js.map +1 -1
- package/indicators/tema.src.js +28 -75
- package/indicators/trendline.js +1 -1
- package/indicators/trendline.src.js +1 -1
- package/indicators/trix.js +4 -5
- package/indicators/trix.js.map +1 -1
- package/indicators/trix.src.js +8 -76
- package/indicators/volume-by-price.js +16 -16
- package/indicators/volume-by-price.js.map +1 -1
- package/indicators/volume-by-price.src.js +21 -3
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.js +5 -6
- package/indicators/williams-r.js.map +1 -1
- package/indicators/williams-r.src.js +41 -51
- package/indicators/wma.js +1 -1
- package/indicators/wma.src.js +1 -1
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.src.js +1 -1
- package/modules/accessibility.d.ts +5 -0
- package/modules/accessibility.js +234 -216
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.d.ts +5 -0
- package/modules/accessibility.src.js +9709 -8608
- package/modules/annotations-advanced.d.ts +30 -0
- package/modules/annotations-advanced.js +191 -165
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.d.ts +30 -0
- package/modules/annotations-advanced.src.js +1578 -320
- package/modules/annotations.js +121 -107
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.js +958 -229
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +15 -15
- package/modules/boost-canvas.js.map +1 -1
- package/modules/boost-canvas.src.js +3 -3
- package/modules/boost.js +79 -79
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.js +10 -9
- package/modules/broken-axis.js +1 -1
- package/modules/broken-axis.src.js +1 -1
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.js +24 -24
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +69 -98
- package/modules/current-date-indicator.js +4 -4
- package/modules/current-date-indicator.js.map +1 -1
- package/modules/current-date-indicator.src.js +4 -4
- package/modules/cylinder.js +1 -1
- package/modules/cylinder.src.js +1 -1
- package/modules/data.js +19 -19
- package/modules/data.js.map +1 -1
- package/modules/data.src.js +9 -6
- package/modules/datagrouping.js +20 -20
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.js +33 -19
- package/modules/debugger.js +1 -1
- package/modules/debugger.src.js +1 -1
- package/modules/dependency-wheel.js +11 -11
- package/modules/dependency-wheel.js.map +1 -1
- package/modules/dependency-wheel.src.js +4 -7
- package/modules/dotplot.js +1 -1
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.js +8 -8
- package/modules/drag-panes.js.map +1 -1
- package/modules/drag-panes.src.js +3 -3
- package/modules/draggable-points.js +1 -1
- package/modules/draggable-points.src.js +1 -1
- package/modules/drilldown.js +24 -24
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.js +4 -4
- package/modules/dumbbell.js +17 -17
- package/modules/dumbbell.js.map +1 -1
- package/modules/dumbbell.src.js +4 -4
- package/modules/export-data.js +1 -1
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +3 -3
- package/modules/exporting.js +39 -38
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.js +98 -67
- package/modules/full-screen.js +1 -1
- package/modules/full-screen.src.js +1 -1
- package/modules/funnel.js +12 -12
- package/modules/funnel.js.map +1 -1
- package/modules/funnel.src.js +9 -6
- package/modules/funnel3d.js +1 -1
- package/modules/funnel3d.src.js +1 -1
- package/modules/gantt.js +217 -218
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +167 -152
- package/modules/grid-axis.js +1 -1
- package/modules/grid-axis.src.js +1 -1
- package/modules/heatmap.js +39 -39
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +177 -162
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.src.js +4 -4
- package/modules/histogram-bellcurve.js +13 -13
- package/modules/histogram-bellcurve.js.map +1 -1
- package/modules/histogram-bellcurve.src.js +91 -86
- package/modules/hollowcandlestick.js +9 -9
- package/modules/hollowcandlestick.js.map +1 -1
- package/modules/hollowcandlestick.src.js +11 -11
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +1 -1
- package/modules/lollipop.js +1 -1
- package/modules/lollipop.src.js +1 -1
- package/modules/map.d.ts +136 -14
- package/modules/map.js +142 -122
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +136 -14
- package/modules/map.src.js +2129 -1029
- package/modules/marker-clusters.js +36 -36
- package/modules/marker-clusters.js.map +1 -1
- package/modules/marker-clusters.src.js +173 -142
- package/modules/networkgraph.d.ts +12 -1
- package/modules/networkgraph.js +49 -49
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.d.ts +12 -1
- package/modules/networkgraph.src.js +91 -43
- package/modules/no-data-to-display.js +5 -5
- package/modules/no-data-to-display.js.map +1 -1
- package/modules/no-data-to-display.src.js +3 -3
- package/modules/offline-exporting.js +17 -17
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +13 -13
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +1 -1
- package/modules/oldie.js +26 -26
- package/modules/oldie.js.map +1 -1
- package/modules/oldie.src.js +4 -4
- package/modules/organization.js +13 -13
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +4 -4
- package/modules/overlapping-datalabels.js +1 -1
- package/modules/overlapping-datalabels.src.js +1 -1
- package/modules/parallel-coordinates.js +1 -1
- package/modules/parallel-coordinates.src.js +1 -1
- package/modules/pareto.js +7 -7
- package/modules/pareto.js.map +1 -1
- package/modules/pareto.src.js +89 -78
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.js +1 -1
- package/modules/pattern-fill.src.js +1 -1
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/sankey.d.ts +12 -1
- package/modules/sankey.js +29 -29
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.d.ts +12 -1
- package/modules/sankey.src.js +300 -176
- package/modules/series-label.js +1 -1
- package/modules/series-label.src.js +1 -1
- package/modules/solid-gauge.js +1 -1
- package/modules/solid-gauge.src.js +1 -1
- package/modules/sonification.js +59 -55
- package/modules/sonification.js.map +1 -1
- package/modules/sonification.src.js +3034 -2553
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.js +177 -164
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.js +1001 -131
- package/modules/stock.d.ts +39 -6
- package/modules/stock.js +204 -196
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.d.ts +39 -6
- package/modules/stock.src.js +1689 -1081
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +61 -60
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +329 -266
- package/modules/tilemap.js +17 -17
- package/modules/tilemap.js.map +1 -1
- package/modules/tilemap.src.js +3 -4
- package/modules/timeline.js +18 -18
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +5 -5
- package/modules/treegrid.js +56 -57
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +126 -120
- package/modules/treemap.js +41 -41
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +319 -254
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +1 -1
- package/modules/variwide.src.js +1 -1
- package/modules/vector.js +1 -1
- package/modules/vector.src.js +1 -1
- package/modules/venn.js +31 -31
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +731 -721
- package/modules/windbarb.js +15 -15
- package/modules/windbarb.js.map +1 -1
- package/modules/windbarb.src.js +90 -62
- package/modules/wordcloud.js +23 -24
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +897 -949
- package/modules/xrange.js +2 -2
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +2 -1
- package/package.json +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/dark-blue.js +1 -1
- package/themes/dark-blue.src.js +1 -1
- package/themes/dark-green.js +1 -1
- package/themes/dark-green.src.js +1 -1
- package/themes/dark-unica.js +1 -1
- package/themes/dark-unica.src.js +1 -1
- package/themes/gray.js +1 -1
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.src.js +1 -1
- package/themes/grid.js +1 -1
- package/themes/grid.src.js +1 -1
- package/themes/high-contrast-dark.js +1 -1
- package/themes/high-contrast-dark.src.js +1 -1
- package/themes/high-contrast-light.js +1 -1
- package/themes/high-contrast-light.src.js +1 -1
- package/themes/sand-signika.js +1 -1
- package/themes/sand-signika.src.js +1 -1
- package/themes/skies.js +1 -1
- package/themes/skies.src.js +1 -1
- package/themes/sunset.js +1 -1
- package/themes/sunset.src.js +1 -1
- package/es-modules/Core/Axis/MapAxis.js +0 -157
- package/es-modules/Core/Color/Palette.js +0 -82
- package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
- package/es-modules/Mixins/ColorMapSeries.js +0 -82
- package/es-modules/Mixins/ColorSeries.js +0 -77
- package/es-modules/Mixins/DerivedSeries.js +0 -118
- package/es-modules/Mixins/DrawPoint.js +0 -81
- package/es-modules/Mixins/IndicatorRequired.js +0 -56
- package/es-modules/Mixins/Navigation.js +0 -54
- package/es-modules/Mixins/NelderMead.js +0 -132
- package/es-modules/Mixins/Polygon.js +0 -259
- package/es-modules/Mixins/ReduceArray.js +0 -54
|
@@ -21,15 +21,18 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
21
21
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
22
22
|
};
|
|
23
23
|
})();
|
|
24
|
-
import
|
|
25
|
-
var
|
|
24
|
+
import A from '../../Core/Animation/AnimationUtilities.js';
|
|
25
|
+
var animObject = A.animObject;
|
|
26
|
+
import ColorMapComposition from '../ColorMapComposition.js';
|
|
27
|
+
var colorMapSeriesMixin = ColorMapComposition.colorMapSeriesMixin;
|
|
28
|
+
import CU from '../CenteredUtilities.js';
|
|
26
29
|
import H from '../../Core/Globals.js';
|
|
27
30
|
var noop = H.noop;
|
|
28
31
|
import LegendSymbol from '../../Core/Legend/LegendSymbol.js';
|
|
29
32
|
import MapChart from '../../Core/Chart/MapChart.js';
|
|
30
33
|
var maps = MapChart.maps, splitPath = MapChart.splitPath;
|
|
31
34
|
import MapPoint from './MapPoint.js';
|
|
32
|
-
import
|
|
35
|
+
import MapView from '../../Maps/MapView.js';
|
|
33
36
|
import Series from '../../Core/Series/Series.js';
|
|
34
37
|
import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
|
|
35
38
|
var
|
|
@@ -59,12 +62,6 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
59
62
|
*
|
|
60
63
|
* */
|
|
61
64
|
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
62
|
-
/* *
|
|
63
|
-
*
|
|
64
|
-
* Properties
|
|
65
|
-
*
|
|
66
|
-
* */
|
|
67
|
-
_this.baseTrans = void 0;
|
|
68
65
|
_this.chart = void 0;
|
|
69
66
|
_this.data = void 0;
|
|
70
67
|
_this.group = void 0;
|
|
@@ -88,19 +85,14 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
88
85
|
* @private
|
|
89
86
|
*/
|
|
90
87
|
MapSeries.prototype.animate = function (init) {
|
|
91
|
-
var
|
|
88
|
+
var _a = this, chart = _a.chart, group = _a.group, animation = animObject(this.options.animation);
|
|
92
89
|
if (chart.renderer.isSVG) {
|
|
93
|
-
if (animation === true) {
|
|
94
|
-
animation = {
|
|
95
|
-
duration: 1000
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
90
|
// Initialize the animation
|
|
99
91
|
if (init) {
|
|
100
92
|
// Scale down the group and place it in the center
|
|
101
93
|
group.attr({
|
|
102
|
-
translateX:
|
|
103
|
-
translateY:
|
|
94
|
+
translateX: chart.plotLeft + chart.plotWidth / 2,
|
|
95
|
+
translateY: chart.plotTop + chart.plotHeight / 2,
|
|
104
96
|
scaleX: 0.001,
|
|
105
97
|
scaleY: 0.001
|
|
106
98
|
});
|
|
@@ -108,8 +100,8 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
108
100
|
}
|
|
109
101
|
else {
|
|
110
102
|
group.animate({
|
|
111
|
-
translateX:
|
|
112
|
-
translateY:
|
|
103
|
+
translateX: chart.plotLeft,
|
|
104
|
+
translateY: chart.plotTop,
|
|
113
105
|
scaleX: 1,
|
|
114
106
|
scaleY: 1
|
|
115
107
|
}, animation);
|
|
@@ -117,32 +109,34 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
117
109
|
}
|
|
118
110
|
};
|
|
119
111
|
/**
|
|
120
|
-
* Animate in the new series
|
|
121
|
-
* Depends on the drilldown.js module
|
|
112
|
+
* Animate in the new series. Depends on the drilldown.js module.
|
|
122
113
|
* @private
|
|
123
114
|
*/
|
|
124
115
|
MapSeries.prototype.animateDrilldown = function (init) {
|
|
125
|
-
var
|
|
126
|
-
if (
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
116
|
+
var chart = this.chart, group = this.group;
|
|
117
|
+
if (chart.renderer.isSVG) {
|
|
118
|
+
// Initialize the animation
|
|
119
|
+
if (init) {
|
|
120
|
+
// Scale down the group and place it in the center. This is a
|
|
121
|
+
// regression from <= v9.2, when it animated from the old point.
|
|
122
|
+
group.attr({
|
|
123
|
+
translateX: chart.plotLeft + chart.plotWidth / 2,
|
|
124
|
+
translateY: chart.plotTop + chart.plotHeight / 2,
|
|
125
|
+
scaleX: 0.1,
|
|
126
|
+
scaleY: 0.1,
|
|
127
|
+
opacity: 0.01
|
|
128
|
+
});
|
|
129
|
+
// Run the animation
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
group.animate({
|
|
133
|
+
translateX: chart.plotLeft,
|
|
134
|
+
translateY: chart.plotTop,
|
|
135
|
+
scaleX: 1,
|
|
136
|
+
scaleY: 1,
|
|
137
|
+
opacity: 1
|
|
138
|
+
});
|
|
139
|
+
}
|
|
146
140
|
}
|
|
147
141
|
};
|
|
148
142
|
/**
|
|
@@ -150,8 +144,17 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
150
144
|
* series and animate them into the origin point in the upper series.
|
|
151
145
|
* @private
|
|
152
146
|
*/
|
|
153
|
-
MapSeries.prototype.animateDrillupFrom = function (
|
|
154
|
-
|
|
147
|
+
MapSeries.prototype.animateDrillupFrom = function () {
|
|
148
|
+
var chart = this.chart;
|
|
149
|
+
if (chart.renderer.isSVG) {
|
|
150
|
+
this.group.animate({
|
|
151
|
+
translateX: chart.plotLeft + chart.plotWidth / 2,
|
|
152
|
+
translateY: chart.plotTop + chart.plotHeight / 2,
|
|
153
|
+
scaleX: 0.1,
|
|
154
|
+
scaleY: 0.1,
|
|
155
|
+
opacity: 0.01
|
|
156
|
+
});
|
|
157
|
+
}
|
|
155
158
|
};
|
|
156
159
|
/**
|
|
157
160
|
* When drilling up, keep the upper series invisible until the lower series
|
|
@@ -161,16 +164,23 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
161
164
|
MapSeries.prototype.animateDrillupTo = function (init) {
|
|
162
165
|
ColumnSeries.prototype.animateDrillupTo.call(this, init);
|
|
163
166
|
};
|
|
167
|
+
MapSeries.prototype.clearBounds = function () {
|
|
168
|
+
this.points.forEach(function (point) {
|
|
169
|
+
delete point.bounds;
|
|
170
|
+
delete point.projectedPath;
|
|
171
|
+
});
|
|
172
|
+
delete this.bounds;
|
|
173
|
+
};
|
|
164
174
|
/**
|
|
165
175
|
* Allow a quick redraw by just translating the area group. Used for zooming
|
|
166
176
|
* and panning in capable browsers.
|
|
167
177
|
* @private
|
|
168
178
|
*/
|
|
169
179
|
MapSeries.prototype.doFullTranslate = function () {
|
|
170
|
-
return (this.isDirtyData ||
|
|
180
|
+
return Boolean(this.isDirtyData ||
|
|
171
181
|
this.chart.isResizing ||
|
|
172
182
|
this.chart.renderer.isVML ||
|
|
173
|
-
!this.
|
|
183
|
+
!this.hasRendered);
|
|
174
184
|
};
|
|
175
185
|
/**
|
|
176
186
|
* Draw the data labels. Special for maps is the time that the data labels
|
|
@@ -189,35 +199,32 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
189
199
|
* @private
|
|
190
200
|
*/
|
|
191
201
|
MapSeries.prototype.drawPoints = function () {
|
|
192
|
-
var
|
|
202
|
+
var _this = this;
|
|
203
|
+
var _a = this, chart = _a.chart, group = _a.group, svgTransform = _a.svgTransform;
|
|
204
|
+
var mapView = chart.mapView, renderer = chart.renderer;
|
|
193
205
|
// Set a group that handles transform during zooming and panning in
|
|
194
206
|
// order to preserve clipping on series.group
|
|
195
|
-
if (!
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
scaleX: 1,
|
|
199
|
-
scaleY: 1
|
|
200
|
-
})
|
|
201
|
-
.add(group);
|
|
202
|
-
series.transformGroup.survive = true;
|
|
207
|
+
if (!this.transformGroup) {
|
|
208
|
+
this.transformGroup = renderer.g().add(group);
|
|
209
|
+
this.transformGroup.survive = true;
|
|
203
210
|
}
|
|
204
211
|
// Draw the shapes again
|
|
205
|
-
if (
|
|
212
|
+
if (this.doFullTranslate()) {
|
|
206
213
|
// Individual point actions.
|
|
207
214
|
if (chart.hasRendered && !chart.styledMode) {
|
|
208
|
-
|
|
215
|
+
this.points.forEach(function (point) {
|
|
209
216
|
// Restore state color on update/redraw (#3529)
|
|
210
217
|
if (point.shapeArgs) {
|
|
211
|
-
point.shapeArgs.fill =
|
|
218
|
+
point.shapeArgs.fill = _this.pointAttribs(point, point.state).fill;
|
|
212
219
|
}
|
|
213
220
|
});
|
|
214
221
|
}
|
|
215
222
|
// Draw them in transformGroup
|
|
216
|
-
|
|
217
|
-
ColumnSeries.prototype.drawPoints.apply(
|
|
218
|
-
|
|
223
|
+
this.group = this.transformGroup;
|
|
224
|
+
ColumnSeries.prototype.drawPoints.apply(this);
|
|
225
|
+
this.group = group; // Reset
|
|
219
226
|
// Add class names
|
|
220
|
-
|
|
227
|
+
this.points.forEach(function (point) {
|
|
221
228
|
if (point.graphic) {
|
|
222
229
|
var className = '';
|
|
223
230
|
if (point.name) {
|
|
@@ -236,47 +243,16 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
236
243
|
}
|
|
237
244
|
// In styled mode, apply point colors by CSS
|
|
238
245
|
if (chart.styledMode) {
|
|
239
|
-
point.graphic.css(
|
|
246
|
+
point.graphic.css(_this.pointAttribs(point, point.selected && 'select' || void 0));
|
|
240
247
|
}
|
|
241
248
|
}
|
|
242
249
|
});
|
|
243
|
-
// Set the base for later scale-zooming. The originX and originY
|
|
244
|
-
// properties are the axis values in the plot area's upper left
|
|
245
|
-
// corner.
|
|
246
|
-
this.baseTrans = {
|
|
247
|
-
originX: (xAxis.min -
|
|
248
|
-
xAxis.minPixelPadding / xAxis.transA),
|
|
249
|
-
originY: (yAxis.min -
|
|
250
|
-
yAxis.minPixelPadding / yAxis.transA +
|
|
251
|
-
(yAxis.reversed ? 0 : yAxis.len / yAxis.transA)),
|
|
252
|
-
transAX: xAxis.transA,
|
|
253
|
-
transAY: yAxis.transA
|
|
254
|
-
};
|
|
255
|
-
// Reset transformation in case we're doing a full translate
|
|
256
|
-
// (#3789)
|
|
257
|
-
this.transformGroup.animate({
|
|
258
|
-
translateX: 0,
|
|
259
|
-
translateY: 0,
|
|
260
|
-
scaleX: 1,
|
|
261
|
-
scaleY: 1
|
|
262
|
-
});
|
|
263
|
-
// Just update the scale and transform for better performance
|
|
264
250
|
}
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
// Handle rounding errors in normal view (#3789)
|
|
271
|
-
if (scaleX > 0.99 &&
|
|
272
|
-
scaleX < 1.01 &&
|
|
273
|
-
scaleY > 0.99 &&
|
|
274
|
-
scaleY < 1.01) {
|
|
275
|
-
scaleX = 1;
|
|
276
|
-
scaleY = 1;
|
|
277
|
-
translateX = Math.round(translateX);
|
|
278
|
-
translateY = Math.round(translateY);
|
|
279
|
-
}
|
|
251
|
+
// Apply the SVG transform
|
|
252
|
+
if (mapView && svgTransform) {
|
|
253
|
+
var strokeWidth_1 = pick(this.options[(this.pointAttrToOptions &&
|
|
254
|
+
this.pointAttrToOptions['stroke-width']) || 'borderWidth'], 1 // Styled mode
|
|
255
|
+
);
|
|
280
256
|
/* Animate or move to the new zoom level. In order to prevent
|
|
281
257
|
flickering as the different transform components are set out
|
|
282
258
|
of sync (#5991), we run a fake animator attribute and set
|
|
@@ -288,135 +264,103 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
288
264
|
step for each property is performed in the same step. Also,
|
|
289
265
|
for symbols and for transform properties, it should induce a
|
|
290
266
|
single updateTransform and symbolAttr call. */
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
267
|
+
var scale_1 = svgTransform.scaleX;
|
|
268
|
+
var flipFactor_1 = svgTransform.scaleY > 0 ? 1 : -1;
|
|
269
|
+
var transformGroup_1 = this.transformGroup;
|
|
270
|
+
if (renderer.globalAnimation && chart.hasRendered) {
|
|
271
|
+
var startTranslateX_1 = Number(transformGroup_1.attr('translateX'));
|
|
272
|
+
var startTranslateY_1 = Number(transformGroup_1.attr('translateY'));
|
|
273
|
+
var startScale_1 = Number(transformGroup_1.attr('scaleX'));
|
|
274
|
+
var step = function (now, fx) {
|
|
275
|
+
var scaleStep = startScale_1 +
|
|
276
|
+
(scale_1 - startScale_1) * fx.pos;
|
|
277
|
+
transformGroup_1.attr({
|
|
278
|
+
translateX: (startTranslateX_1 +
|
|
279
|
+
(svgTransform.translateX - startTranslateX_1) * fx.pos),
|
|
280
|
+
translateY: (startTranslateY_1 +
|
|
281
|
+
(svgTransform.translateY - startTranslateY_1) * fx.pos),
|
|
282
|
+
scaleX: scaleStep,
|
|
283
|
+
scaleY: scaleStep * flipFactor_1
|
|
284
|
+
});
|
|
285
|
+
group.element.setAttribute('stroke-width', strokeWidth_1 / scaleStep);
|
|
286
|
+
};
|
|
287
|
+
transformGroup_1
|
|
298
288
|
.attr({ animator: 0 })
|
|
299
|
-
.animate({
|
|
300
|
-
|
|
301
|
-
}, {
|
|
302
|
-
step: function (now, fx) {
|
|
303
|
-
transformGroup.attr({
|
|
304
|
-
translateX: (startTranslateX +
|
|
305
|
-
(translateX - startTranslateX) * fx.pos),
|
|
306
|
-
translateY: (startTranslateY +
|
|
307
|
-
(translateY - startTranslateY) * fx.pos),
|
|
308
|
-
scaleX: (startScaleX +
|
|
309
|
-
(scaleX - startScaleX) *
|
|
310
|
-
fx.pos),
|
|
311
|
-
scaleY: (startScaleY +
|
|
312
|
-
(scaleY - startScaleY) * fx.pos)
|
|
313
|
-
});
|
|
314
|
-
}
|
|
315
|
-
});
|
|
316
|
-
// When dragging, animation is off.
|
|
289
|
+
.animate({ animator: 1 }, { step: step });
|
|
290
|
+
// When dragging or first rendering, animation is off
|
|
317
291
|
}
|
|
318
292
|
else {
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
293
|
+
transformGroup_1.attr(svgTransform);
|
|
294
|
+
// Set the stroke-width directly on the group element so the
|
|
295
|
+
// children inherit it. We need to use setAttribute directly,
|
|
296
|
+
// because the stroke-widthSetter method expects a stroke color
|
|
297
|
+
// also to be set.
|
|
298
|
+
group.element.setAttribute('stroke-width', strokeWidth_1 / scale_1);
|
|
325
299
|
}
|
|
326
300
|
}
|
|
327
|
-
/* Set the stroke-width directly on the group element so the
|
|
328
|
-
children inherit it. We need to use setAttribute directly,
|
|
329
|
-
because the stroke-widthSetter method expects a stroke color also
|
|
330
|
-
to be set. */
|
|
331
|
-
if (!chart.styledMode) {
|
|
332
|
-
group.element.setAttribute('stroke-width', (pick(series.options[(series.pointAttrToOptions &&
|
|
333
|
-
series.pointAttrToOptions['stroke-width']) || 'borderWidth'], 1 // Styled mode
|
|
334
|
-
) / (scaleX || 1)));
|
|
335
|
-
}
|
|
336
301
|
this.drawMapDataLabels();
|
|
337
302
|
};
|
|
338
303
|
/**
|
|
339
304
|
* Get the bounding box of all paths in the map combined.
|
|
340
|
-
*
|
|
305
|
+
*
|
|
341
306
|
*/
|
|
342
|
-
MapSeries.prototype.
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
//
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
307
|
+
MapSeries.prototype.getProjectedBounds = function () {
|
|
308
|
+
if (!this.bounds) {
|
|
309
|
+
var MAX_VALUE_1 = Number.MAX_VALUE, projection_1 = this.chart.mapView &&
|
|
310
|
+
this.chart.mapView.projection, allBounds_1 = [];
|
|
311
|
+
// Find the bounding box of each point
|
|
312
|
+
(this.points || []).forEach(function (point) {
|
|
313
|
+
if (point.path || point.geometry) {
|
|
314
|
+
// @todo Try to puth these two conversions in
|
|
315
|
+
// MapPoint.applyOptions
|
|
316
|
+
if (typeof point.path === 'string') {
|
|
317
|
+
point.path = splitPath(point.path);
|
|
318
|
+
// Legacy one-dimensional array
|
|
319
|
+
}
|
|
320
|
+
else if (isArray(point.path) &&
|
|
321
|
+
point.path[0] === 'M') {
|
|
322
|
+
point.path = SVGRenderer.prototype.pathToSegments(point.path);
|
|
323
|
+
}
|
|
324
|
+
// The first time a map point is used, analyze its box
|
|
325
|
+
if (!point.bounds) {
|
|
326
|
+
var path = MapPoint.getProjectedPath(point, projection_1), properties = point.properties;
|
|
327
|
+
var x2_1 = -MAX_VALUE_1, x1_1 = MAX_VALUE_1, y2_1 = -MAX_VALUE_1, y1_1 = MAX_VALUE_1, validBounds_1;
|
|
328
|
+
path.forEach(function (seg) {
|
|
329
|
+
var x = seg[seg.length - 2];
|
|
330
|
+
var y = seg[seg.length - 1];
|
|
331
|
+
if (typeof x === 'number' &&
|
|
332
|
+
typeof y === 'number') {
|
|
333
|
+
x1_1 = Math.min(x1_1, x);
|
|
334
|
+
x2_1 = Math.max(x2_1, x);
|
|
335
|
+
y1_1 = Math.min(y1_1, y);
|
|
336
|
+
y2_1 = Math.max(y2_1, y);
|
|
337
|
+
validBounds_1 = true;
|
|
338
|
+
}
|
|
339
|
+
});
|
|
340
|
+
if (validBounds_1) {
|
|
341
|
+
// Cache point bounding box for use to position data
|
|
342
|
+
// labels, bubbles etc
|
|
343
|
+
var propMiddleX = properties && properties['hc-middle-x'], midX = (x1_1 + (x2_1 - x1_1) * pick(point.middleX, isNumber(propMiddleX) ? propMiddleX : 0.5)), propMiddleY = properties && properties['hc-middle-y'];
|
|
344
|
+
var middleYFraction = pick(point.middleY, isNumber(propMiddleY) ? propMiddleY : 0.5);
|
|
345
|
+
// No geographic geometry, only path given => flip
|
|
346
|
+
if (!point.geometry) {
|
|
347
|
+
middleYFraction = 1 - middleYFraction;
|
|
348
|
+
}
|
|
349
|
+
var midY = y2_1 - (y2_1 - y1_1) * middleYFraction;
|
|
350
|
+
point.bounds = { midX: midX, midY: midY, x1: x1_1, y1: y1_1, x2: x2_1, y2: y2_1 };
|
|
351
|
+
point.labelrank = pick(point.labelrank,
|
|
352
|
+
// Bigger shape, higher rank
|
|
353
|
+
(x2_1 - x1_1) * (y2_1 - y1_1));
|
|
365
354
|
}
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
properties['hc-middle-x'], 0.5));
|
|
371
|
-
point._midY = (pointMinY_1 + (pointMaxY_1 - pointMinY_1) * pick(point.middleY, properties &&
|
|
372
|
-
properties['hc-middle-y'], 0.5));
|
|
373
|
-
point._maxX = pointMaxX_1;
|
|
374
|
-
point._minX = pointMinX_1;
|
|
375
|
-
point._maxY = pointMaxY_1;
|
|
376
|
-
point._minY = pointMinY_1;
|
|
377
|
-
point.labelrank = pick(point.labelrank, (pointMaxX_1 - pointMinX_1) * (pointMaxY_1 - pointMinY_1));
|
|
378
|
-
point._foundBox = true;
|
|
355
|
+
}
|
|
356
|
+
if (point.bounds) {
|
|
357
|
+
allBounds_1.push(point.bounds);
|
|
358
|
+
}
|
|
379
359
|
}
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
maxY = Math.max(maxY, point._maxY);
|
|
383
|
-
minY = Math.min(minY, point._minY);
|
|
384
|
-
minRange = Math.min(point._maxX - point._minX, point._maxY - point._minY, minRange);
|
|
385
|
-
hasBox = true;
|
|
386
|
-
}
|
|
387
|
-
});
|
|
388
|
-
// Set the box for the whole series
|
|
389
|
-
if (hasBox) {
|
|
390
|
-
this.minY = Math.min(minY, pick(this.minY, MAX_VALUE));
|
|
391
|
-
this.maxY = Math.max(maxY, pick(this.maxY, -MAX_VALUE));
|
|
392
|
-
this.minX = Math.min(minX, pick(this.minX, MAX_VALUE));
|
|
393
|
-
this.maxX = Math.max(maxX, pick(this.maxX, -MAX_VALUE));
|
|
394
|
-
// If no minRange option is set, set the default minimum zooming
|
|
395
|
-
// range to 5 times the size of the smallest element
|
|
396
|
-
if (xAxis && typeof xAxis.options.minRange === 'undefined') {
|
|
397
|
-
xAxis.minRange = Math.min(5 * minRange, (this.maxX - this.minX) / 5, xAxis.minRange || MAX_VALUE);
|
|
398
|
-
}
|
|
399
|
-
if (yAxis && typeof yAxis.options.minRange === 'undefined') {
|
|
400
|
-
yAxis.minRange = Math.min(5 * minRange, (this.maxY - this.minY) / 5, yAxis.minRange || MAX_VALUE);
|
|
401
|
-
}
|
|
402
|
-
}
|
|
403
|
-
};
|
|
404
|
-
MapSeries.prototype.getExtremes = function () {
|
|
405
|
-
// Get the actual value extremes for colors
|
|
406
|
-
var _a = Series.prototype.getExtremes
|
|
407
|
-
.call(this, this.valueData), dataMin = _a.dataMin, dataMax = _a.dataMax;
|
|
408
|
-
// Recalculate box on updated data
|
|
409
|
-
if (this.chart.hasRendered && this.isDirtyData) {
|
|
410
|
-
this.getBox(this.options.data);
|
|
411
|
-
}
|
|
412
|
-
if (isNumber(dataMin)) {
|
|
413
|
-
this.valueMin = dataMin;
|
|
414
|
-
}
|
|
415
|
-
if (isNumber(dataMax)) {
|
|
416
|
-
this.valueMax = dataMax;
|
|
360
|
+
});
|
|
361
|
+
this.bounds = MapView.compositeBounds(allBounds_1);
|
|
417
362
|
}
|
|
418
|
-
|
|
419
|
-
return { dataMin: this.minY, dataMax: this.maxY };
|
|
363
|
+
return this.bounds;
|
|
420
364
|
};
|
|
421
365
|
/**
|
|
422
366
|
* Define hasData function for non-cartesian series. Returns true if the
|
|
@@ -433,32 +377,27 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
433
377
|
* @private
|
|
434
378
|
*/
|
|
435
379
|
MapSeries.prototype.pointAttribs = function (point, state) {
|
|
436
|
-
var
|
|
380
|
+
var _a = point.series.chart, mapView = _a.mapView, styledMode = _a.styledMode;
|
|
381
|
+
var attr = styledMode ?
|
|
437
382
|
this.colorAttribs(point) :
|
|
438
383
|
ColumnSeries.prototype.pointAttribs.call(this, point, state);
|
|
439
|
-
//
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
return attr;
|
|
445
|
-
};
|
|
446
|
-
/**
|
|
447
|
-
* Override render to throw in an async call in IE8. Otherwise it chokes on
|
|
448
|
-
* the US counties demo.
|
|
449
|
-
* @private
|
|
450
|
-
*/
|
|
451
|
-
MapSeries.prototype.render = function () {
|
|
452
|
-
var series = this, render = Series.prototype.render;
|
|
453
|
-
// Give IE8 some time to breathe.
|
|
454
|
-
if (series.chart.renderer.isVML && series.data.length > 3000) {
|
|
455
|
-
setTimeout(function () {
|
|
456
|
-
render.call(series);
|
|
457
|
-
});
|
|
384
|
+
// Individual stroke width
|
|
385
|
+
var pointStrokeWidth = point.options[(this.pointAttrToOptions &&
|
|
386
|
+
this.pointAttrToOptions['stroke-width']) || 'borderWidth'];
|
|
387
|
+
if (pointStrokeWidth && mapView) {
|
|
388
|
+
pointStrokeWidth /= mapView.getScale();
|
|
458
389
|
}
|
|
459
|
-
|
|
460
|
-
|
|
390
|
+
// In order for dash style to avoid being scaled, set the transformed
|
|
391
|
+
// stroke width on the item
|
|
392
|
+
if (attr.dashstyle && mapView && this.options.borderWidth) {
|
|
393
|
+
pointStrokeWidth = this.options.borderWidth / mapView.getScale();
|
|
461
394
|
}
|
|
395
|
+
attr['stroke-width'] = pick(pointStrokeWidth,
|
|
396
|
+
// By default set the stroke-width on the group element and let all
|
|
397
|
+
// point graphics inherit. That way we don't have to iterate over
|
|
398
|
+
// all points to update the stroke-width on zooming.
|
|
399
|
+
'inherit');
|
|
400
|
+
return attr;
|
|
462
401
|
};
|
|
463
402
|
/**
|
|
464
403
|
* Extend setData to join in mapData. If the allAreas option is true, all
|
|
@@ -514,7 +453,7 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
514
453
|
}
|
|
515
454
|
});
|
|
516
455
|
}
|
|
517
|
-
this.getBox(data);
|
|
456
|
+
// this.getBox(data as any);
|
|
518
457
|
// Pick up transform definitions for chart
|
|
519
458
|
this.chart.mapTransforms = mapTransforms =
|
|
520
459
|
chartOptions.mapTransforms ||
|
|
@@ -558,7 +497,7 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
558
497
|
});
|
|
559
498
|
}
|
|
560
499
|
if (options.allAreas) {
|
|
561
|
-
this.getBox(mapData);
|
|
500
|
+
// this.getBox(mapData);
|
|
562
501
|
data = data || [];
|
|
563
502
|
// Registered the point codes that actually hold data
|
|
564
503
|
if (joinBy[1]) {
|
|
@@ -582,12 +521,13 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
582
521
|
updatePoints = false;
|
|
583
522
|
}
|
|
584
523
|
});
|
|
585
|
-
}
|
|
586
|
-
else {
|
|
524
|
+
} /* else {
|
|
587
525
|
this.getBox(dataUsed); // Issue #4784
|
|
588
|
-
}
|
|
526
|
+
} */
|
|
589
527
|
}
|
|
590
528
|
Series.prototype.setData.call(this, data, redraw, animation, updatePoints);
|
|
529
|
+
this.processData();
|
|
530
|
+
this.generatePoints();
|
|
591
531
|
};
|
|
592
532
|
/**
|
|
593
533
|
* Extend setOptions by picking up the joinBy option and applying it to a
|
|
@@ -611,74 +551,52 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
611
551
|
* @private
|
|
612
552
|
*/
|
|
613
553
|
MapSeries.prototype.translate = function () {
|
|
614
|
-
var series = this,
|
|
615
|
-
|
|
616
|
-
|
|
554
|
+
var series = this, doFullTranslate = series.doFullTranslate(), mapView = this.chart.mapView, projection = mapView && mapView.projection;
|
|
555
|
+
// Recalculate box on updated data
|
|
556
|
+
if (this.chart.hasRendered && (this.isDirtyData || !this.hasRendered)) {
|
|
557
|
+
this.processData();
|
|
558
|
+
this.generatePoints();
|
|
559
|
+
delete this.bounds;
|
|
560
|
+
this.getProjectedBounds();
|
|
561
|
+
}
|
|
562
|
+
// Calculate the SVG transform
|
|
563
|
+
var svgTransform;
|
|
564
|
+
if (mapView) {
|
|
565
|
+
var scale = mapView.getScale();
|
|
566
|
+
var _a = mapView.projection.forward(mapView.center), x = _a[0], y = _a[1];
|
|
567
|
+
// When dealing with unprojected coordinates, y axis is flipped.
|
|
568
|
+
var flipFactor = mapView.projection.hasCoordinates ? -1 : 1;
|
|
569
|
+
var translateX = this.chart.plotWidth / 2 - x * scale;
|
|
570
|
+
var translateY = this.chart.plotHeight / 2 - y * scale * flipFactor;
|
|
571
|
+
svgTransform = {
|
|
572
|
+
scaleX: scale,
|
|
573
|
+
scaleY: scale * flipFactor,
|
|
574
|
+
translateX: translateX,
|
|
575
|
+
translateY: translateY
|
|
576
|
+
};
|
|
577
|
+
this.svgTransform = svgTransform;
|
|
578
|
+
}
|
|
579
|
+
series.points.forEach(function (point) {
|
|
617
580
|
// Record the middle point (loosely based on centroid),
|
|
618
581
|
// determined by the middleX and middleY options.
|
|
619
|
-
if (
|
|
620
|
-
point.
|
|
621
|
-
point.
|
|
582
|
+
if (svgTransform &&
|
|
583
|
+
point.bounds &&
|
|
584
|
+
isNumber(point.bounds.midX) &&
|
|
585
|
+
isNumber(point.bounds.midY)) {
|
|
586
|
+
point.plotX = point.bounds.midX * svgTransform.scaleX +
|
|
587
|
+
svgTransform.translateX;
|
|
588
|
+
point.plotY = point.bounds.midY * svgTransform.scaleY +
|
|
589
|
+
svgTransform.translateY;
|
|
622
590
|
}
|
|
623
591
|
if (doFullTranslate) {
|
|
624
592
|
point.shapeType = 'path';
|
|
625
593
|
point.shapeArgs = {
|
|
626
|
-
d:
|
|
594
|
+
d: MapPoint.getProjectedPath(point, projection)
|
|
627
595
|
};
|
|
628
596
|
}
|
|
629
597
|
});
|
|
630
598
|
fireEvent(series, 'afterTranslate');
|
|
631
599
|
};
|
|
632
|
-
/**
|
|
633
|
-
* Translate the path, so it automatically fits into the plot area box.
|
|
634
|
-
* @private
|
|
635
|
-
*/
|
|
636
|
-
MapSeries.prototype.translatePath = function (path) {
|
|
637
|
-
var series = this, xAxis = series.xAxis, yAxis = series.yAxis, xMin = xAxis.min, xTransA = xAxis.transA, xMinPixelPadding = xAxis.minPixelPadding, yMin = yAxis.min, yTransA = yAxis.transA, yMinPixelPadding = yAxis.minPixelPadding, ret = []; // Preserve the original
|
|
638
|
-
// Do the translation
|
|
639
|
-
if (path) {
|
|
640
|
-
path.forEach(function (seg) {
|
|
641
|
-
if (seg[0] === 'M') {
|
|
642
|
-
ret.push([
|
|
643
|
-
'M',
|
|
644
|
-
(seg[1] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
645
|
-
(seg[2] - (yMin || 0)) * yTransA + yMinPixelPadding
|
|
646
|
-
]);
|
|
647
|
-
}
|
|
648
|
-
else if (seg[0] === 'L') {
|
|
649
|
-
ret.push([
|
|
650
|
-
'L',
|
|
651
|
-
(seg[1] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
652
|
-
(seg[2] - (yMin || 0)) * yTransA + yMinPixelPadding
|
|
653
|
-
]);
|
|
654
|
-
}
|
|
655
|
-
else if (seg[0] === 'C') {
|
|
656
|
-
ret.push([
|
|
657
|
-
'C',
|
|
658
|
-
(seg[1] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
659
|
-
(seg[2] - (yMin || 0)) * yTransA + yMinPixelPadding,
|
|
660
|
-
(seg[3] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
661
|
-
(seg[4] - (yMin || 0)) * yTransA + yMinPixelPadding,
|
|
662
|
-
(seg[5] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
663
|
-
(seg[6] - (yMin || 0)) * yTransA + yMinPixelPadding
|
|
664
|
-
]);
|
|
665
|
-
}
|
|
666
|
-
else if (seg[0] === 'Q') {
|
|
667
|
-
ret.push([
|
|
668
|
-
'Q',
|
|
669
|
-
(seg[1] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
670
|
-
(seg[2] - (yMin || 0)) * yTransA + yMinPixelPadding,
|
|
671
|
-
(seg[3] - (xMin || 0)) * xTransA + xMinPixelPadding,
|
|
672
|
-
(seg[4] - (yMin || 0)) * yTransA + yMinPixelPadding
|
|
673
|
-
]);
|
|
674
|
-
}
|
|
675
|
-
else if (seg[0] === 'Z') {
|
|
676
|
-
ret.push(['Z']);
|
|
677
|
-
}
|
|
678
|
-
});
|
|
679
|
-
}
|
|
680
|
-
return ret;
|
|
681
|
-
};
|
|
682
600
|
/**
|
|
683
601
|
* The map series is used for basic choropleth maps, where each map area has
|
|
684
602
|
* a color based on its value.
|
|
@@ -724,7 +642,7 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
724
642
|
*
|
|
725
643
|
* @private
|
|
726
644
|
*/
|
|
727
|
-
nullColor:
|
|
645
|
+
nullColor: "#f7f7f7" /* neutralColor3 */,
|
|
728
646
|
/**
|
|
729
647
|
* Whether to allow pointer interaction like tooltips and mouse events
|
|
730
648
|
* on null points.
|
|
@@ -778,7 +696,7 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
778
696
|
*
|
|
779
697
|
* @private
|
|
780
698
|
*/
|
|
781
|
-
borderColor:
|
|
699
|
+
borderColor: "#cccccc" /* neutralColor20 */,
|
|
782
700
|
/**
|
|
783
701
|
* The border width of each map area.
|
|
784
702
|
*
|
|
@@ -909,11 +827,11 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
909
827
|
select: {
|
|
910
828
|
/**
|
|
911
829
|
* @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
|
|
912
|
-
* @default
|
|
830
|
+
* @default #cccccc
|
|
913
831
|
* @product highmaps
|
|
914
832
|
* @apioption plotOptions.series.states.select.color
|
|
915
833
|
*/
|
|
916
|
-
color:
|
|
834
|
+
color: "#cccccc" /* neutralColor20 */
|
|
917
835
|
},
|
|
918
836
|
inactive: {
|
|
919
837
|
opacity: 1
|
|
@@ -924,9 +842,8 @@ var MapSeries = /** @class */ (function (_super) {
|
|
|
924
842
|
}(ScatterSeries));
|
|
925
843
|
extend(MapSeries.prototype, {
|
|
926
844
|
type: 'map',
|
|
927
|
-
axisTypes:
|
|
928
|
-
|
|
929
|
-
colorKey: colorMapSeriesMixin.colorKey,
|
|
845
|
+
axisTypes: ['colorAxis'],
|
|
846
|
+
colorKey: 'value',
|
|
930
847
|
// When tooltip is not shared, this series (and derivatives) requires
|
|
931
848
|
// direct touch/hover. KD-tree does not apply.
|
|
932
849
|
directTouch: true,
|
|
@@ -937,8 +854,10 @@ extend(MapSeries.prototype, {
|
|
|
937
854
|
drawGraph: noop,
|
|
938
855
|
drawLegendSymbol: LegendSymbol.drawRectangle,
|
|
939
856
|
forceDL: true,
|
|
857
|
+
getCenter: CU.getCenter,
|
|
940
858
|
getExtremesFromAll: true,
|
|
941
|
-
getSymbol:
|
|
859
|
+
getSymbol: noop,
|
|
860
|
+
isCartesian: false,
|
|
942
861
|
parallelArrays: colorMapSeriesMixin.parallelArrays,
|
|
943
862
|
pointArrayMap: colorMapSeriesMixin.pointArrayMap,
|
|
944
863
|
pointClass: MapPoint,
|
|
@@ -949,6 +868,7 @@ extend(MapSeries.prototype, {
|
|
|
949
868
|
// Get axis extremes from paths, not values
|
|
950
869
|
useMapGeometry: true
|
|
951
870
|
});
|
|
871
|
+
ColorMapComposition.compose(MapSeries, MapPoint);
|
|
952
872
|
SeriesRegistry.registerSeriesType('map', MapSeries);
|
|
953
873
|
/* *
|
|
954
874
|
*
|
|
@@ -962,8 +882,8 @@ export default MapSeries;
|
|
|
962
882
|
*
|
|
963
883
|
* */
|
|
964
884
|
/**
|
|
965
|
-
* A map data object containing a `path` definition and optionally
|
|
966
|
-
* properties to join in the data as per the `joinBy` option.
|
|
885
|
+
* A map data object containing a `geometry` or `path` definition and optionally
|
|
886
|
+
* additional properties to join in the `data` as per the `joinBy` option.
|
|
967
887
|
*
|
|
968
888
|
* @sample maps/demo/category-map/
|
|
969
889
|
* Map data and joinBy
|
|
@@ -1054,6 +974,45 @@ export default MapSeries;
|
|
|
1054
974
|
* @product highmaps
|
|
1055
975
|
* @apioption series.map.data.drilldown
|
|
1056
976
|
*/
|
|
977
|
+
/**
|
|
978
|
+
* For map and mapline series types, the geometry of a point.
|
|
979
|
+
*
|
|
980
|
+
* To achieve a better separation between the structure and the data,
|
|
981
|
+
* it is recommended to use `mapData` to define the geometry instead
|
|
982
|
+
* of defining it on the data points themselves.
|
|
983
|
+
*
|
|
984
|
+
* The geometry object is compatible to that of a `feature` in geoJSON, so
|
|
985
|
+
* features of geoJSON can be passed directly into the `data`, optionally
|
|
986
|
+
* after first filtering and processing it.
|
|
987
|
+
*
|
|
988
|
+
* @sample maps/series/data-geometry/
|
|
989
|
+
* Geometry defined in data
|
|
990
|
+
*
|
|
991
|
+
* @type {Object}
|
|
992
|
+
* @since 9.3.0
|
|
993
|
+
* @product highmaps
|
|
994
|
+
* @apioption series.map.data.geometry
|
|
995
|
+
*/
|
|
996
|
+
/**
|
|
997
|
+
* The geometry type. Can be one of `LineString`, `Polygon`, `MultiLineString`
|
|
998
|
+
* or `MultiPolygon`.
|
|
999
|
+
*
|
|
1000
|
+
* @type {string}
|
|
1001
|
+
* @since 9.3.0
|
|
1002
|
+
* @product highmaps
|
|
1003
|
+
* @validvalue ["LineString", "Polygon", "MultiLineString", "MultiPolygon"]
|
|
1004
|
+
* @apioption series.map.data.geometry.type
|
|
1005
|
+
*/
|
|
1006
|
+
/**
|
|
1007
|
+
* The geometry coordinates in terms of arrays of `[longitude, latitude]`, or
|
|
1008
|
+
* a two dimensional array of the same. The dimensionality must comply with the
|
|
1009
|
+
* `type`.
|
|
1010
|
+
*
|
|
1011
|
+
* @type {Array<LonLatArray>|Array<Array<LonLatArray>>}
|
|
1012
|
+
* @since 9.3.0
|
|
1013
|
+
* @product highmaps
|
|
1014
|
+
* @apioption series.map.data.geometry.coordinates
|
|
1015
|
+
*/
|
|
1057
1016
|
/**
|
|
1058
1017
|
* An id for the point. This can be used after render time to get a
|
|
1059
1018
|
* pointer to the point object through `chart.get()`.
|