highcharts 7.1.1 → 7.1.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/annotations/popup.css +3 -3
- package/css/annotations/popup.scss +1 -1
- package/css/stocktools/gui.css +5 -5
- package/css/stocktools/gui.scss +1 -1
- package/es-modules/annotations/ControlPoint.js +1 -1
- package/es-modules/annotations/MockPoint.js +45 -12
- package/es-modules/annotations/annotations.src.js +203 -166
- package/es-modules/annotations/controllable/ControllableCircle.js +2 -10
- package/es-modules/annotations/controllable/ControllableImage.js +2 -10
- package/es-modules/annotations/controllable/ControllableLabel.js +54 -9
- package/es-modules/annotations/controllable/ControllableRect.js +2 -10
- package/es-modules/annotations/controllable/controllableMixin.js +32 -4
- package/es-modules/annotations/controllable/markerMixin.js +1 -0
- package/es-modules/annotations/eventEmitterMixin.js +1 -0
- package/es-modules/annotations/navigationBindings.js +15 -11
- package/es-modules/annotations/popup.js +59 -81
- package/es-modules/annotations/types/CrookedLine.js +19 -7
- package/es-modules/annotations/types/ElliottWave.js +7 -6
- package/es-modules/annotations/types/Fibonacci.js +14 -14
- package/es-modules/annotations/types/InfinityLine.js +4 -4
- package/es-modules/annotations/types/Measure.js +41 -41
- package/es-modules/annotations/types/Pitchfork.js +5 -4
- package/es-modules/annotations/types/VerticalLine.js +6 -5
- package/es-modules/error-messages.js +6 -1
- package/es-modules/indicators/indicators.src.js +5 -3
- package/es-modules/mixins/nodes.js +16 -8
- package/es-modules/modules/accessibility/AccessibilityComponent.js +4 -4
- package/es-modules/modules/accessibility/KeyboardNavigation.js +17 -4
- package/es-modules/modules/accessibility/components/RangeSelectorComponent.js +3 -2
- package/es-modules/modules/accessibility/components/SeriesComponent.js +110 -2
- package/es-modules/modules/accessibility/components/ZoomComponent.js +1 -1
- package/es-modules/modules/accessibility/options.js +2 -1
- package/es-modules/modules/bellcurve.src.js +27 -29
- package/es-modules/modules/boost/boost-init.js +14 -0
- package/es-modules/modules/boost/boost-overrides.js +13 -3
- package/es-modules/modules/boost/wgl-renderer.js +30 -15
- package/es-modules/modules/boost/wgl-shader.js +33 -16
- package/es-modules/modules/boost/wgl-vbuffer.js +8 -4
- package/es-modules/modules/broken-axis.src.js +1 -1
- package/es-modules/modules/bullet.src.js +68 -68
- package/es-modules/modules/cylinder.src.js +3 -1
- package/es-modules/modules/data.src.js +9 -5
- package/es-modules/modules/draggable-points.src.js +1 -1
- package/es-modules/modules/drilldown.src.js +1 -1
- package/es-modules/modules/export-data.src.js +7 -8
- package/es-modules/modules/exporting.src.js +9 -1
- package/es-modules/modules/full-screen.src.js +1 -1
- package/es-modules/modules/funnel3d.src.js +10 -3
- package/es-modules/modules/histogram.src.js +162 -164
- package/es-modules/modules/item-series.src.js +10 -10
- package/es-modules/modules/networkgraph/layouts.js +16 -12
- package/es-modules/modules/networkgraph/networkgraph.src.js +147 -51
- package/es-modules/modules/offline-exporting.src.js +15 -2
- package/es-modules/modules/oldie-polyfills.src.js +1 -1
- package/es-modules/modules/organization.src.js +65 -20
- package/es-modules/modules/pareto.src.js +52 -51
- package/es-modules/modules/pattern-fill.src.js +1 -1
- package/es-modules/modules/price-indicator.src.js +1 -1
- package/es-modules/modules/pyramid3d.src.js +1 -1
- package/es-modules/modules/sankey.src.js +22 -10
- package/es-modules/modules/series-label.src.js +16 -8
- package/es-modules/modules/solid-gauge.src.js +128 -79
- package/es-modules/modules/static-scale.src.js +8 -1
- package/es-modules/modules/stock-tools-gui.js +1 -1
- package/es-modules/modules/streamgraph.src.js +11 -11
- package/es-modules/modules/sunburst.src.js +23 -2
- package/es-modules/modules/tilemap.src.js +58 -57
- package/es-modules/modules/timeline.src.js +17 -12
- package/es-modules/modules/treemap.src.js +6 -6
- package/es-modules/modules/variwide.src.js +39 -39
- package/es-modules/modules/vector.src.js +108 -107
- package/es-modules/modules/venn.src.js +4 -2
- package/es-modules/modules/windbarb.src.js +43 -43
- package/es-modules/modules/wordcloud.src.js +1 -0
- package/es-modules/modules/xrange.src.js +112 -104
- package/es-modules/parts/AreaSeries.js +4 -1
- package/es-modules/parts/Axis.js +809 -1870
- package/es-modules/parts/Chart.js +254 -743
- package/es-modules/parts/Color.js +160 -113
- package/es-modules/parts/ColumnSeries.js +9 -3
- package/es-modules/parts/DataLabels.js +31 -2
- package/es-modules/parts/Dynamics.js +73 -26
- package/es-modules/parts/FlagsSeries.js +6 -4
- package/es-modules/parts/Globals.js +20 -36
- package/es-modules/parts/Html.js +116 -235
- package/es-modules/parts/Interaction.js +17 -7
- package/es-modules/parts/Legend.js +277 -632
- package/es-modules/parts/MSPointer.js +62 -106
- package/es-modules/parts/Options.js +128 -367
- package/es-modules/parts/OrdinalAxis.js +12 -0
- package/es-modules/parts/PieSeries.js +61 -44
- package/es-modules/parts/PlotLineOrBand.js +38 -3
- package/es-modules/parts/Point.js +117 -227
- package/es-modules/parts/Pointer.js +273 -558
- package/es-modules/parts/RangeSelector.js +5 -3
- package/es-modules/parts/Responsive.js +8 -4
- package/es-modules/parts/ScrollablePlotArea.js +215 -81
- package/es-modules/parts/Scrollbar.js +38 -23
- package/es-modules/parts/Series.js +151 -47
- package/es-modules/parts/Stacking.js +8 -3
- package/es-modules/parts/StockChart.js +42 -29
- package/es-modules/parts/SvgRenderer.js +1080 -2100
- package/es-modules/parts/Tick.js +11 -4
- package/es-modules/parts/Time.js +179 -363
- package/es-modules/parts/Tooltip.js +23 -12
- package/es-modules/parts/TouchPointer.js +69 -187
- package/es-modules/parts/Utilities.js +593 -846
- package/es-modules/parts-3d/Axis.js +2 -2
- package/es-modules/parts-3d/Column.js +18 -8
- package/es-modules/parts-gantt/GanttSeries.js +17 -21
- package/es-modules/parts-gantt/GridAxis.js +183 -101
- package/es-modules/parts-gantt/PathfinderAlgorithms.js +2 -2
- package/es-modules/parts-gantt/TreeGrid.js +53 -36
- package/es-modules/parts-map/ColorAxis.js +35 -14
- package/es-modules/parts-map/MapBubbleSeries.js +2 -1
- package/es-modules/parts-map/MapSeries.js +29 -18
- package/es-modules/parts-more/AreaRangeSeries.js +13 -12
- package/es-modules/parts-more/ColumnRangeSeries.js +8 -2
- package/es-modules/parts-more/GaugeSeries.js +9 -9
- package/es-modules/parts-more/PackedBubbleSeries.js +152 -115
- package/es-modules/parts-more/RadialAxis.js +102 -8
- package/es-modules/parts-more/WaterfallSeries.js +148 -35
- package/highcharts-3d.js +68 -67
- package/highcharts-3d.js.map +1 -1
- package/highcharts-3d.src.js +21 -11
- package/highcharts-gantt.d.ts +5 -3
- package/highcharts-gantt.js +618 -610
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.d.ts +5 -3
- package/highcharts-gantt.src.js +5185 -8892
- package/highcharts-more.js +144 -140
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.js +449 -194
- package/highcharts.d.ts +3943 -5236
- package/highcharts.js +454 -449
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +3943 -5236
- package/highcharts.src.js +4767 -8601
- package/highmaps.d.ts +5 -3
- package/highmaps.js +498 -494
- package/highmaps.js.map +1 -1
- package/highmaps.src.d.ts +5 -3
- package/highmaps.src.js +4547 -8507
- package/highstock.d.ts +5 -3
- package/highstock.js +597 -590
- package/highstock.js.map +1 -1
- package/highstock.src.d.ts +5 -3
- package/highstock.src.js +4871 -8661
- package/indicators/acceleration-bands.js +1 -1
- package/indicators/acceleration-bands.src.js +1 -1
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.js +1 -1
- package/indicators/ao.src.js +1 -1
- package/indicators/apo.js +1 -1
- package/indicators/apo.src.js +1 -1
- package/indicators/aroon-oscillator.js +1 -1
- package/indicators/aroon-oscillator.src.js +1 -1
- package/indicators/aroon.js +1 -1
- package/indicators/aroon.src.js +1 -1
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.js +1 -1
- package/indicators/bollinger-bands.src.js +1 -1
- package/indicators/cci.js +1 -1
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.js +1 -1
- package/indicators/chaikin.src.js +1 -1
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.src.js +1 -1
- package/indicators/dema.js +1 -1
- package/indicators/dema.src.js +1 -1
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.src.js +1 -1
- package/indicators/ema.js +1 -1
- package/indicators/ema.src.js +1 -1
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.js +105 -105
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.js +6 -4
- package/indicators/indicators.js +9 -9
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +6 -4
- package/indicators/keltner-channels.js +1 -1
- package/indicators/keltner-channels.src.js +1 -1
- package/indicators/macd.js +1 -1
- package/indicators/macd.src.js +1 -1
- 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 +1 -1
- package/indicators/natr.src.js +1 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.src.js +1 -1
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.src.js +1 -1
- package/indicators/price-channel.js +1 -1
- package/indicators/price-channel.src.js +1 -1
- 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 +1 -1
- 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/stochastic.js +1 -1
- package/indicators/stochastic.src.js +1 -1
- package/indicators/supertrend.js +1 -1
- package/indicators/supertrend.src.js +1 -1
- package/indicators/tema.js +1 -1
- package/indicators/tema.src.js +1 -1
- package/indicators/trix.js +1 -1
- package/indicators/trix.src.js +1 -1
- package/indicators/volume-by-price.js +1 -1
- package/indicators/volume-by-price.src.js +1 -1
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.js +1 -1
- package/indicators/williams-r.src.js +1 -1
- 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.js +92 -89
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.js +138 -15
- package/modules/annotations-advanced.js +128 -127
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.js +514 -396
- package/modules/annotations.d.ts +36 -0
- package/modules/annotations.js +81 -81
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.d.ts +36 -0
- package/modules/annotations.src.js +418 -315
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +1 -1
- package/modules/boost-canvas.src.js +1 -1
- package/modules/boost.js +63 -63
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.js +99 -39
- package/modules/broken-axis.js +1 -1
- package/modules/broken-axis.src.js +2 -2
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +69 -69
- package/modules/current-date-indicator.js +1 -1
- package/modules/current-date-indicator.src.js +1 -1
- package/modules/cylinder.js +1 -1
- package/modules/cylinder.js.map +1 -1
- package/modules/cylinder.src.js +4 -2
- package/modules/data.js +4 -4
- package/modules/data.js.map +1 -1
- package/modules/data.src.js +10 -6
- package/modules/datagrouping.js +1 -1
- package/modules/datagrouping.src.js +1 -1
- package/modules/debugger.js +4 -4
- package/modules/debugger.js.map +1 -1
- package/modules/debugger.src.js +7 -2
- package/modules/dependency-wheel.js +1 -1
- package/modules/dependency-wheel.src.js +1 -1
- package/modules/dotplot.js +1 -1
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.js +1 -1
- package/modules/drag-panes.src.js +1 -1
- package/modules/draggable-points.js +1 -1
- package/modules/draggable-points.src.js +2 -2
- package/modules/drilldown.js +1 -1
- package/modules/drilldown.src.js +2 -2
- package/modules/export-data.js +2 -2
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +8 -9
- package/modules/exporting.js +25 -25
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.js +11 -3
- package/modules/full-screen.js +1 -1
- package/modules/full-screen.src.js +2 -2
- package/modules/funnel.js +1 -1
- package/modules/funnel.src.js +1 -1
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.js.map +1 -1
- package/modules/funnel3d.src.js +11 -4
- package/modules/gantt.js +166 -164
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +422 -295
- package/modules/grid-axis.js +18 -16
- package/modules/grid-axis.js.map +1 -1
- package/modules/grid-axis.src.js +184 -102
- package/modules/heatmap.js +22 -22
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +36 -15
- package/modules/histogram-bellcurve.js +1 -1
- package/modules/histogram-bellcurve.js.map +1 -1
- package/modules/histogram-bellcurve.src.js +186 -183
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +11 -11
- package/modules/map-parser.js +1 -1
- package/modules/map-parser.src.js +1 -1
- package/modules/map.js +83 -83
- package/modules/map.js.map +1 -1
- package/modules/map.src.js +67 -34
- package/modules/networkgraph.js +10 -9
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.js +180 -72
- package/modules/no-data-to-display.js +1 -1
- package/modules/no-data-to-display.src.js +1 -1
- package/modules/offline-exporting.js +15 -15
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +17 -4
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +2 -2
- package/modules/oldie.js +2 -2
- package/modules/oldie.src.js +2 -2
- package/modules/organization.js +1 -1
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +66 -21
- 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 +1 -1
- package/modules/pareto.js.map +1 -1
- package/modules/pareto.src.js +53 -52
- package/modules/pathfinder.js +3 -3
- package/modules/pathfinder.js.map +1 -1
- package/modules/pathfinder.src.js +3 -3
- package/modules/pattern-fill.js +1 -1
- package/modules/pattern-fill.src.js +2 -2
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +2 -2
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +2 -2
- package/modules/sankey.js +14 -14
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.js +39 -19
- package/modules/series-label.js +16 -16
- package/modules/series-label.js.map +1 -1
- package/modules/series-label.src.js +17 -9
- package/modules/solid-gauge.js +5 -5
- package/modules/solid-gauge.js.map +1 -1
- package/modules/solid-gauge.src.js +129 -80
- package/modules/sonification.js +1 -1
- package/modules/sonification.src.js +1 -1
- package/modules/static-scale.js +4 -4
- package/modules/static-scale.js.map +1 -1
- package/modules/static-scale.src.js +9 -2
- package/modules/stock-tools.js +2 -2
- package/modules/stock-tools.src.js +3 -3
- package/modules/stock.js +146 -145
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.js +105 -61
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +12 -12
- package/modules/sunburst.js +40 -40
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +30 -9
- package/modules/tilemap.js +1 -1
- package/modules/tilemap.js.map +1 -1
- package/modules/tilemap.src.js +59 -58
- package/modules/timeline.js +12 -11
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +18 -13
- package/modules/treegrid.js +45 -43
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +238 -139
- package/modules/treemap.js +1 -1
- package/modules/treemap.src.js +7 -7
- 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 +40 -40
- package/modules/vector.js +1 -1
- package/modules/vector.js.map +1 -1
- package/modules/vector.src.js +109 -108
- package/modules/venn.js +23 -23
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +5 -3
- package/modules/windbarb.js +1 -1
- package/modules/windbarb.src.js +44 -44
- package/modules/wordcloud.js +10 -10
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +2 -1
- package/modules/xrange.js +12 -12
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +113 -105
- package/package.json +1 -1
- package/themes/avocado.js +21 -37
- 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/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 +21 -37
- package/themes/sunset.src.js +1 -1
- package/.DS_Store +0 -0
- package/es-modules/.DS_Store +0 -0
- package/es-modules/modules/annotations-legacy.src.js +0 -1977
- package/js/.DS_Store +0 -0
|
@@ -238,8 +238,8 @@ wrap(Axis.prototype, 'getPlotBandPath', function (proceed) {
|
|
|
238
238
|
from = args[1],
|
|
239
239
|
to = args[2],
|
|
240
240
|
path = [],
|
|
241
|
-
fromPath = this.getPlotLinePath(from),
|
|
242
|
-
toPath = this.getPlotLinePath(to);
|
|
241
|
+
fromPath = this.getPlotLinePath({ value: from }),
|
|
242
|
+
toPath = this.getPlotLinePath({ value: to });
|
|
243
243
|
|
|
244
244
|
if (fromPath && toPath) {
|
|
245
245
|
for (var i = 0; i < fromPath.length; i += 6) {
|
|
@@ -241,14 +241,23 @@ wrap(
|
|
|
241
241
|
seriesTypes.column.prototype,
|
|
242
242
|
'plotGroup',
|
|
243
243
|
function (proceed, prop, name, visibility, zIndex, parent) {
|
|
244
|
-
if (this.chart.is3d()
|
|
245
|
-
if (
|
|
246
|
-
this
|
|
247
|
-
|
|
244
|
+
if (this.chart.is3d()) {
|
|
245
|
+
if (this[prop]) {
|
|
246
|
+
delete this[prop];
|
|
247
|
+
}
|
|
248
|
+
if (parent) {
|
|
249
|
+
if (!this.chart.columnGroup) {
|
|
250
|
+
this.chart.columnGroup =
|
|
251
|
+
this.chart.renderer.g('columnGroup').add(parent);
|
|
252
|
+
}
|
|
253
|
+
this[prop] = this.chart.columnGroup;
|
|
254
|
+
this.chart.columnGroup.attr(this.getPlotBox());
|
|
255
|
+
this[prop].survive = true;
|
|
256
|
+
if (prop === 'group' || prop === 'markerGroup') {
|
|
257
|
+
arguments[3] = 'visible';
|
|
258
|
+
// For 3D column group and markerGroup should be visible
|
|
259
|
+
}
|
|
248
260
|
}
|
|
249
|
-
this[prop] = this.chart.columnGroup;
|
|
250
|
-
this.chart.columnGroup.attr(this.getPlotBox());
|
|
251
|
-
this[prop].survive = true;
|
|
252
261
|
}
|
|
253
262
|
return proceed.apply(this, Array.prototype.slice.call(arguments, 1));
|
|
254
263
|
}
|
|
@@ -266,7 +275,8 @@ wrap(
|
|
|
266
275
|
if (series.chart.is3d()) {
|
|
267
276
|
series.data.forEach(function (point) {
|
|
268
277
|
point.visible = point.options.visible = vis =
|
|
269
|
-
vis === undefined ?
|
|
278
|
+
vis === undefined ?
|
|
279
|
+
!pick(series.visible, point.visible) : vis;
|
|
270
280
|
pointVis = vis ? 'visible' : 'hidden';
|
|
271
281
|
series.options.data[series.data.indexOf(point)] =
|
|
272
282
|
point.options;
|
|
@@ -19,13 +19,11 @@ import 'Pathfinder.js';
|
|
|
19
19
|
import '../modules/xrange.src.js';
|
|
20
20
|
|
|
21
21
|
var dateFormat = H.dateFormat,
|
|
22
|
-
isObject = H.isObject,
|
|
23
22
|
isNumber = H.isNumber,
|
|
24
23
|
merge = H.merge,
|
|
25
24
|
pick = H.pick,
|
|
26
25
|
seriesType = H.seriesType,
|
|
27
26
|
seriesTypes = H.seriesTypes,
|
|
28
|
-
stop = H.stop,
|
|
29
27
|
Series = H.Series,
|
|
30
28
|
parent = seriesTypes.xrange;
|
|
31
29
|
|
|
@@ -53,19 +51,7 @@ seriesType('gantt', 'xrange'
|
|
|
53
51
|
|
|
54
52
|
dataLabels: {
|
|
55
53
|
/** @ignore-option */
|
|
56
|
-
enabled: true
|
|
57
|
-
/** @ignore-option */
|
|
58
|
-
formatter: function () {
|
|
59
|
-
var point = this,
|
|
60
|
-
amount = point.point.partialFill;
|
|
61
|
-
|
|
62
|
-
if (isObject(amount)) {
|
|
63
|
-
amount = amount.amount;
|
|
64
|
-
}
|
|
65
|
-
if (isNumber(amount) && amount > 0) {
|
|
66
|
-
return (amount * 100) + '%';
|
|
67
|
-
}
|
|
68
|
-
}
|
|
54
|
+
enabled: true
|
|
69
55
|
},
|
|
70
56
|
tooltip: {
|
|
71
57
|
headerFormat: '<span style="font-size: 10px">{series.name}</span><br/>',
|
|
@@ -75,12 +61,10 @@ seriesType('gantt', 'xrange'
|
|
|
75
61
|
series = point.series,
|
|
76
62
|
tooltip = series.chart.tooltip,
|
|
77
63
|
xAxis = series.xAxis,
|
|
78
|
-
|
|
79
|
-
formats = options.dateTimeLabelFormats,
|
|
64
|
+
formats = series.tooltipOptions.dateTimeLabelFormats,
|
|
80
65
|
startOfWeek = xAxis.options.startOfWeek,
|
|
81
66
|
ttOptions = series.tooltipOptions,
|
|
82
67
|
format = ttOptions.xDateFormat,
|
|
83
|
-
range = point.end ? point.end - point.start : 0,
|
|
84
68
|
start,
|
|
85
69
|
end,
|
|
86
70
|
milestone = point.options.milestone,
|
|
@@ -93,7 +77,7 @@ seriesType('gantt', 'xrange'
|
|
|
93
77
|
if (!format) {
|
|
94
78
|
format = H.splat(
|
|
95
79
|
tooltip.getDateFormat(
|
|
96
|
-
|
|
80
|
+
xAxis.closestPointRange,
|
|
97
81
|
point.start,
|
|
98
82
|
startOfWeek,
|
|
99
83
|
formats
|
|
@@ -110,7 +94,7 @@ seriesType('gantt', 'xrange'
|
|
|
110
94
|
retVal += 'Start: ' + start + '<br/>';
|
|
111
95
|
retVal += 'End: ' + end + '<br/>';
|
|
112
96
|
} else {
|
|
113
|
-
retVal +=
|
|
97
|
+
retVal += start + '<br/>';
|
|
114
98
|
}
|
|
115
99
|
|
|
116
100
|
return retVal;
|
|
@@ -199,7 +183,6 @@ seriesType('gantt', 'xrange'
|
|
|
199
183
|
);
|
|
200
184
|
|
|
201
185
|
if (graphic) {
|
|
202
|
-
stop(graphic);
|
|
203
186
|
graphic[verb]({
|
|
204
187
|
d: diamondShape
|
|
205
188
|
});
|
|
@@ -267,6 +250,19 @@ seriesType('gantt', 'xrange'
|
|
|
267
250
|
retVal = parent.prototype.pointClass.prototype.applyOptions
|
|
268
251
|
.call(point, retVal, x);
|
|
269
252
|
return retVal;
|
|
253
|
+
},
|
|
254
|
+
isValid: function () {
|
|
255
|
+
return (
|
|
256
|
+
(
|
|
257
|
+
typeof this.start === 'number' ||
|
|
258
|
+
typeof this.x === 'number'
|
|
259
|
+
) &&
|
|
260
|
+
(
|
|
261
|
+
typeof this.end === 'number' ||
|
|
262
|
+
typeof this.x2 === 'number' ||
|
|
263
|
+
this.milestone
|
|
264
|
+
)
|
|
265
|
+
);
|
|
270
266
|
}
|
|
271
267
|
}));
|
|
272
268
|
|
|
@@ -24,9 +24,50 @@ var addEvent = H.addEvent,
|
|
|
24
24
|
merge = H.merge,
|
|
25
25
|
pick = H.pick,
|
|
26
26
|
wrap = H.wrap,
|
|
27
|
+
Chart = H.Chart,
|
|
27
28
|
Axis = H.Axis,
|
|
28
29
|
Tick = H.Tick;
|
|
29
30
|
|
|
31
|
+
var applyGridOptions = function applyGridOptions(axis) {
|
|
32
|
+
var options = axis.options,
|
|
33
|
+
gridOptions = options && isObject(options.grid) ? options.grid : {},
|
|
34
|
+
// TODO: Consider using cell margins defined in % of font size?
|
|
35
|
+
// 25 is optimal height for default fontSize (11px)
|
|
36
|
+
// 25 / 11 ≈ 2.28
|
|
37
|
+
fontSizeToCellHeightRatio = 25 / 11,
|
|
38
|
+
fontSize = options.labels.style.fontSize,
|
|
39
|
+
fontMetrics = axis.chart.renderer.fontMetrics(fontSize);
|
|
40
|
+
|
|
41
|
+
// Center-align by default
|
|
42
|
+
if (!options.labels) {
|
|
43
|
+
options.labels = {};
|
|
44
|
+
}
|
|
45
|
+
options.labels.align = pick(options.labels.align, 'center');
|
|
46
|
+
|
|
47
|
+
// @todo: Check against tickLabelPlacement between/on etc
|
|
48
|
+
|
|
49
|
+
/* Prevents adding the last tick label if the axis is not a category
|
|
50
|
+
axis.
|
|
51
|
+
Since numeric labels are normally placed at starts and ends of a
|
|
52
|
+
range of value, and this module makes the label point at the value,
|
|
53
|
+
an "extra" label would appear. */
|
|
54
|
+
if (!axis.categories) {
|
|
55
|
+
options.showLastLabel = false;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Make tick marks taller, creating cell walls of a grid. Use cellHeight
|
|
59
|
+
// axis option if set
|
|
60
|
+
if (axis.horiz) {
|
|
61
|
+
options.tickLength = gridOptions.cellHeight ||
|
|
62
|
+
fontMetrics.h * fontSizeToCellHeightRatio;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Prevents rotation of labels when squished, as rotating them would not
|
|
66
|
+
// help.
|
|
67
|
+
axis.labelRotation = 0;
|
|
68
|
+
options.labels.rotation = 0;
|
|
69
|
+
};
|
|
70
|
+
|
|
30
71
|
/**
|
|
31
72
|
* Set grid options for the axis labels. Requires Highcharts Gantt.
|
|
32
73
|
*
|
|
@@ -143,6 +184,13 @@ Axis.prototype.isOuterAxis = function () {
|
|
|
143
184
|
}
|
|
144
185
|
}
|
|
145
186
|
});
|
|
187
|
+
|
|
188
|
+
if (isOuter && isNumber(axis.columnIndex)) {
|
|
189
|
+
var columns = axis.linkedParent && axis.linkedParent.columns ||
|
|
190
|
+
axis.columns;
|
|
191
|
+
isOuter = columns.length === axis.columnIndex;
|
|
192
|
+
}
|
|
193
|
+
|
|
146
194
|
// There were either no other axes on the same side,
|
|
147
195
|
// or the other axes were not farther from the chart
|
|
148
196
|
return isOuter;
|
|
@@ -180,6 +228,9 @@ Axis.prototype.getMaxLabelDimensions = function (ticks, tickPositions) {
|
|
|
180
228
|
|
|
181
229
|
// Find width and height of tick
|
|
182
230
|
tickHeight = label.getBBox ? label.getBBox().height : 0;
|
|
231
|
+
if (label.textStr && !isNumber(label.textPxLength)) {
|
|
232
|
+
label.textPxLength = label.getBBox().width;
|
|
233
|
+
}
|
|
183
234
|
tickWidth = isNumber(label.textPxLength) ? label.textPxLength : 0;
|
|
184
235
|
|
|
185
236
|
// Update the result if width and/or height are larger
|
|
@@ -695,8 +746,6 @@ addEvent(
|
|
|
695
746
|
min = linkedMin || axis.min,
|
|
696
747
|
max = linkedMax || axis.max,
|
|
697
748
|
tickInterval = axis.tickInterval,
|
|
698
|
-
moreThanMin = firstPos > min,
|
|
699
|
-
lessThanMax = lastPos < max,
|
|
700
749
|
endMoreThanMin = firstPos < min && firstPos + tickInterval > min,
|
|
701
750
|
startLessThanMax = lastPos > max && lastPos - tickInterval < max;
|
|
702
751
|
|
|
@@ -705,11 +754,11 @@ addEvent(
|
|
|
705
754
|
!categoryAxis &&
|
|
706
755
|
(axis.horiz || axis.isLinked)
|
|
707
756
|
) {
|
|
708
|
-
if (
|
|
757
|
+
if (endMoreThanMin && !options.startOnTick) {
|
|
709
758
|
tickPositions[0] = min;
|
|
710
759
|
}
|
|
711
760
|
|
|
712
|
-
if (
|
|
761
|
+
if (startLessThanMax && !options.endOnTick) {
|
|
713
762
|
tickPositions[tickPositions.length - 1] = max;
|
|
714
763
|
}
|
|
715
764
|
}
|
|
@@ -841,119 +890,152 @@ addEvent(
|
|
|
841
890
|
}
|
|
842
891
|
}
|
|
843
892
|
|
|
893
|
+
(axis.columns || []).forEach(function (column) {
|
|
894
|
+
column.render();
|
|
895
|
+
});
|
|
844
896
|
}
|
|
845
897
|
}
|
|
846
898
|
);
|
|
847
899
|
|
|
848
|
-
//
|
|
849
|
-
|
|
900
|
+
// Handle columns and getOffset
|
|
901
|
+
var onGridAxisAfterGetOffset = function onGridAxisAfterGetOffset() {
|
|
902
|
+
(this.columns || []).forEach(function (column) {
|
|
903
|
+
column.getOffset();
|
|
904
|
+
});
|
|
905
|
+
};
|
|
906
|
+
|
|
907
|
+
var onGridAxisAfterInit = function onGridAxisAfterInit() {
|
|
850
908
|
var axis = this,
|
|
851
909
|
chart = axis.chart,
|
|
852
|
-
userOptions =
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
userOptions.grid :
|
|
856
|
-
{}
|
|
857
|
-
),
|
|
858
|
-
columnOptions,
|
|
859
|
-
column,
|
|
860
|
-
columnIndex,
|
|
861
|
-
i;
|
|
862
|
-
|
|
863
|
-
function applyGridOptions() {
|
|
864
|
-
var options = axis.options,
|
|
865
|
-
// TODO: Consider using cell margins defined in % of font size?
|
|
866
|
-
// 25 is optimal height for default fontSize (11px)
|
|
867
|
-
// 25 / 11 ≈ 2.28
|
|
868
|
-
fontSizeToCellHeightRatio = 25 / 11,
|
|
869
|
-
fontSize = options.labels.style.fontSize,
|
|
870
|
-
fontMetrics = axis.chart.renderer.fontMetrics(fontSize);
|
|
871
|
-
|
|
872
|
-
// Center-align by default
|
|
873
|
-
if (!options.labels) {
|
|
874
|
-
options.labels = {};
|
|
875
|
-
}
|
|
876
|
-
options.labels.align = pick(options.labels.align, 'center');
|
|
910
|
+
userOptions = axis.userOptions,
|
|
911
|
+
options = axis.options,
|
|
912
|
+
gridOptions = options && isObject(options.grid) ? options.grid : {};
|
|
877
913
|
|
|
878
|
-
|
|
914
|
+
if (gridOptions.enabled) {
|
|
915
|
+
applyGridOptions(axis);
|
|
916
|
+
|
|
917
|
+
// TODO: wrap the axis instead
|
|
918
|
+
wrap(axis, 'labelFormatter', function (proceed) {
|
|
919
|
+
var axis = this.axis,
|
|
920
|
+
tickPos = axis.tickPositions,
|
|
921
|
+
value = this.value,
|
|
922
|
+
series = (axis.isLinked ? axis.linkedParent : axis)
|
|
923
|
+
.series[0],
|
|
924
|
+
isFirst = value === tickPos[0],
|
|
925
|
+
isLast = value === tickPos[tickPos.length - 1],
|
|
926
|
+
point = series && H.find(series.options.data, function (p) {
|
|
927
|
+
return p[axis.isXAxis ? 'x' : 'y'] === value;
|
|
928
|
+
});
|
|
879
929
|
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
if (!axis.categories) {
|
|
886
|
-
options.showLastLabel = false;
|
|
887
|
-
}
|
|
930
|
+
// Make additional properties available for the
|
|
931
|
+
// formatter
|
|
932
|
+
this.isFirst = isFirst;
|
|
933
|
+
this.isLast = isLast;
|
|
934
|
+
this.point = point;
|
|
888
935
|
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
options.tickLength = gridOptions.cellHeight ||
|
|
893
|
-
fontMetrics.h * fontSizeToCellHeightRatio;
|
|
894
|
-
}
|
|
895
|
-
|
|
896
|
-
// Prevents rotation of labels when squished, as rotating them would not
|
|
897
|
-
// help.
|
|
898
|
-
axis.labelRotation = 0;
|
|
899
|
-
options.labels.rotation = 0;
|
|
936
|
+
// Call original labelFormatter
|
|
937
|
+
return proceed.call(this);
|
|
938
|
+
});
|
|
900
939
|
}
|
|
901
940
|
|
|
902
|
-
if (gridOptions.
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
userOptions.lineColor = gridOptions.borderColor;
|
|
906
|
-
}
|
|
941
|
+
if (gridOptions.columns) {
|
|
942
|
+
var columns = axis.columns = [],
|
|
943
|
+
columnIndex = axis.columnIndex = 0;
|
|
907
944
|
|
|
908
945
|
// Handle columns, each column is a grid axis
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
946
|
+
while (++columnIndex < gridOptions.columns.length) {
|
|
947
|
+
var columnOptions = merge(
|
|
948
|
+
userOptions,
|
|
949
|
+
gridOptions.columns[
|
|
950
|
+
gridOptions.columns.length - columnIndex - 1
|
|
951
|
+
],
|
|
952
|
+
{
|
|
953
|
+
linkedTo: 0,
|
|
954
|
+
// Force to behave like category axis
|
|
955
|
+
type: 'category'
|
|
956
|
+
}
|
|
957
|
+
);
|
|
921
958
|
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
column = new Axis(axis.chart, columnOptions);
|
|
925
|
-
column.isColumn = true;
|
|
926
|
-
column.columnIndex = columnIndex;
|
|
927
|
-
|
|
928
|
-
wrap(column, 'labelFormatter', function (proceed) {
|
|
929
|
-
var axis = this.axis,
|
|
930
|
-
tickPos = axis.tickPositions,
|
|
931
|
-
value = this.value,
|
|
932
|
-
series = axis.series[0],
|
|
933
|
-
isFirst = value === tickPos[0],
|
|
934
|
-
isLast = value === tickPos[tickPos.length - 1],
|
|
935
|
-
point = H.find(series.options.data, function (p) {
|
|
936
|
-
return p[axis.isXAxis ? 'x' : 'y'] === value;
|
|
937
|
-
});
|
|
959
|
+
delete columnOptions.grid.columns; // Prevent recursion
|
|
938
960
|
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
this.point = point;
|
|
961
|
+
var column = new Axis(axis.chart, columnOptions, true);
|
|
962
|
+
column.isColumn = true;
|
|
963
|
+
column.columnIndex = columnIndex;
|
|
943
964
|
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
}
|
|
950
|
-
// This axis should not be shown, instead the column axes take over
|
|
951
|
-
addEvent(this, 'afterInit', function () {
|
|
952
|
-
H.erase(chart.axes, this);
|
|
953
|
-
H.erase(chart[axis.coll], this);
|
|
954
|
-
});
|
|
955
|
-
} else {
|
|
956
|
-
addEvent(this, 'afterInit', applyGridOptions);
|
|
965
|
+
// Remove column axis from chart axes array, and place it
|
|
966
|
+
// in the columns array.
|
|
967
|
+
H.erase(chart.axes, column);
|
|
968
|
+
H.erase(chart[axis.coll], column);
|
|
969
|
+
columns.push(column);
|
|
957
970
|
}
|
|
958
971
|
}
|
|
972
|
+
};
|
|
973
|
+
|
|
974
|
+
var onGridAxisAfterSetChartSize = function onGridAxisAfterSetChartSize() {
|
|
975
|
+
this.axes.forEach(function (axis) {
|
|
976
|
+
(axis.columns || []).forEach(function (column) {
|
|
977
|
+
column.setAxisSize();
|
|
978
|
+
column.setAxisTranslation();
|
|
979
|
+
});
|
|
980
|
+
});
|
|
981
|
+
};
|
|
982
|
+
|
|
983
|
+
// Handle columns and setScale
|
|
984
|
+
var onGridAxisAfterSetScale = function onGridAxisAfterSetScale() {
|
|
985
|
+
(this.columns || []).forEach(function (column) {
|
|
986
|
+
column.setScale();
|
|
987
|
+
});
|
|
988
|
+
};
|
|
989
|
+
|
|
990
|
+
var onGridAxisDestroy = function onGridAxisDestroy(e) {
|
|
991
|
+
(this.columns || []).forEach(function (column) {
|
|
992
|
+
column.destroy(e.keepEvents);
|
|
993
|
+
});
|
|
994
|
+
};
|
|
995
|
+
|
|
996
|
+
// Wraps axis init to draw cell walls on vertical axes.
|
|
997
|
+
var onGridAxisInit = function onGridAxisInit(e) {
|
|
998
|
+
var userOptions = e.userOptions,
|
|
999
|
+
gridOptions = (
|
|
1000
|
+
(userOptions && isObject(userOptions.grid)) ?
|
|
1001
|
+
userOptions.grid :
|
|
1002
|
+
{}
|
|
1003
|
+
);
|
|
1004
|
+
|
|
1005
|
+
if (gridOptions.enabled && defined(gridOptions.borderColor)) {
|
|
1006
|
+
userOptions.tickColor = userOptions.lineColor = gridOptions.borderColor;
|
|
1007
|
+
}
|
|
1008
|
+
};
|
|
1009
|
+
|
|
1010
|
+
var onGridAxisAfterSetOptions = function onGridAxisAfterSetOptions(e) {
|
|
1011
|
+
var axis = this,
|
|
1012
|
+
userOptions = e.userOptions,
|
|
1013
|
+
gridOptions = (
|
|
1014
|
+
(userOptions && isObject(userOptions.grid)) ?
|
|
1015
|
+
userOptions.grid :
|
|
1016
|
+
{}
|
|
1017
|
+
),
|
|
1018
|
+
columns = gridOptions.columns;
|
|
1019
|
+
|
|
1020
|
+
// Add column options to the parent axis.
|
|
1021
|
+
// Children has their column options set on init in onGridAxisAfterInit.
|
|
1022
|
+
if (gridOptions.enabled && columns) {
|
|
1023
|
+
merge(true, axis.options, columns[columns.length - 1]);
|
|
1024
|
+
}
|
|
1025
|
+
};
|
|
1026
|
+
|
|
1027
|
+
|
|
1028
|
+
var axisEvents = {
|
|
1029
|
+
afterGetOffset: onGridAxisAfterGetOffset,
|
|
1030
|
+
afterInit: onGridAxisAfterInit,
|
|
1031
|
+
afterSetOptions: onGridAxisAfterSetOptions,
|
|
1032
|
+
afterSetScale: onGridAxisAfterSetScale,
|
|
1033
|
+
destroy: onGridAxisDestroy,
|
|
1034
|
+
init: onGridAxisInit
|
|
1035
|
+
};
|
|
1036
|
+
|
|
1037
|
+
// Add event handlers
|
|
1038
|
+
Object.keys(axisEvents).forEach(function (event) {
|
|
1039
|
+
addEvent(Axis, event, axisEvents[event]);
|
|
959
1040
|
});
|
|
1041
|
+
addEvent(Chart, 'afterSetChartSize', onGridAxisAfterSetChartSize);
|
|
@@ -277,8 +277,8 @@ var algorithms = {
|
|
|
277
277
|
// If we are going back again, switch direction to get around start
|
|
278
278
|
// obstacle.
|
|
279
279
|
if (
|
|
280
|
-
waypoint[dir]
|
|
281
|
-
waypoint[dir]
|
|
280
|
+
waypoint[dir] >= start[dir] === // Going towards max from start
|
|
281
|
+
waypoint[dir] >= endPoint[dir] // Going towards min to end
|
|
282
282
|
) {
|
|
283
283
|
dir = dir === 'y' ? 'x' : 'y';
|
|
284
284
|
useMax = start[dir] < end[dir];
|
|
@@ -485,6 +485,19 @@ var onBeforeRender = function (e) {
|
|
|
485
485
|
removeFoundExtremesEvent,
|
|
486
486
|
uniqueNames = options.uniqueNames,
|
|
487
487
|
numberOfSeries = 0,
|
|
488
|
+
isDirty,
|
|
489
|
+
data,
|
|
490
|
+
treeGrid;
|
|
491
|
+
// Check whether any of series is rendering for the first time,
|
|
492
|
+
// visibility has changed, or its data is dirty,
|
|
493
|
+
// and only then update. #10570, #10580
|
|
494
|
+
isDirty = axis.series.some(function (series) {
|
|
495
|
+
return !series.hasRendered ||
|
|
496
|
+
series.isDirtyData ||
|
|
497
|
+
series.isDirty;
|
|
498
|
+
});
|
|
499
|
+
|
|
500
|
+
if (isDirty) {
|
|
488
501
|
// Concatenate data from all series assigned to this axis.
|
|
489
502
|
data = axis.series.reduce(function (arr, s) {
|
|
490
503
|
if (s.visible) {
|
|
@@ -504,7 +517,7 @@ var onBeforeRender = function (e) {
|
|
|
504
517
|
}
|
|
505
518
|
}
|
|
506
519
|
return arr;
|
|
507
|
-
}, [])
|
|
520
|
+
}, []);
|
|
508
521
|
// setScale is fired after all the series is initialized,
|
|
509
522
|
// which is an ideal time to update the axis.categories.
|
|
510
523
|
treeGrid = getTreeGridFromData(
|
|
@@ -513,48 +526,52 @@ var onBeforeRender = function (e) {
|
|
|
513
526
|
(uniqueNames === true) ? numberOfSeries : 1
|
|
514
527
|
);
|
|
515
528
|
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
// Update yData now that we have calculated the y values
|
|
523
|
-
axis.series.forEach(function (series) {
|
|
524
|
-
var data = series.options.data.map(function (d) {
|
|
525
|
-
return isObject(d) ? merge(d) : d;
|
|
526
|
-
});
|
|
529
|
+
// Assign values to the axis.
|
|
530
|
+
axis.categories = treeGrid.categories;
|
|
531
|
+
axis.mapOfPosToGridNode = treeGrid.mapOfPosToGridNode;
|
|
532
|
+
axis.hasNames = true;
|
|
533
|
+
axis.tree = treeGrid.tree;
|
|
527
534
|
|
|
528
|
-
//
|
|
529
|
-
|
|
530
|
-
series.
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
// Calculate the label options for each level in the tree.
|
|
535
|
-
axis.mapOptionsToLevel = getLevelOptions({
|
|
536
|
-
defaults: labelOptions,
|
|
537
|
-
from: 1,
|
|
538
|
-
levels: labelOptions.levels,
|
|
539
|
-
to: axis.tree.height
|
|
540
|
-
});
|
|
535
|
+
// Update yData now that we have calculated the y values
|
|
536
|
+
axis.series.forEach(function (series) {
|
|
537
|
+
var data = series.options.data.map(function (d) {
|
|
538
|
+
return isObject(d) ? merge(d) : d;
|
|
539
|
+
});
|
|
541
540
|
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
H.addEvent(axis, 'foundExtremes', function () {
|
|
548
|
-
treeGrid.collapsedNodes.forEach(function (node) {
|
|
549
|
-
var breaks = collapse(axis, node);
|
|
541
|
+
// Avoid destroying points when series is not visible
|
|
542
|
+
if (series.visible) {
|
|
543
|
+
series.setData(data, false);
|
|
544
|
+
}
|
|
545
|
+
});
|
|
550
546
|
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
547
|
+
// Calculate the label options for each level in the tree.
|
|
548
|
+
axis.mapOptionsToLevel = getLevelOptions({
|
|
549
|
+
defaults: labelOptions,
|
|
550
|
+
from: 1,
|
|
551
|
+
levels: labelOptions.levels,
|
|
552
|
+
to: axis.tree.height
|
|
554
553
|
});
|
|
554
|
+
|
|
555
|
+
// Collapse all the nodes belonging to a point where collapsed
|
|
556
|
+
// equals true. Only do this on init.
|
|
557
|
+
// Can be called from beforeRender, if getBreakFromNode removes
|
|
558
|
+
// its dependency on axis.max.
|
|
559
|
+
if (e.type === 'beforeRender') {
|
|
560
|
+
removeFoundExtremesEvent =
|
|
561
|
+
H.addEvent(axis, 'foundExtremes', function () {
|
|
562
|
+
treeGrid.collapsedNodes.forEach(function (node) {
|
|
563
|
+
var breaks = collapse(axis, node);
|
|
564
|
+
|
|
565
|
+
axis.setBreaks(breaks, false);
|
|
566
|
+
});
|
|
567
|
+
removeFoundExtremesEvent();
|
|
568
|
+
});
|
|
569
|
+
}
|
|
570
|
+
}
|
|
555
571
|
});
|
|
556
572
|
};
|
|
557
573
|
|
|
574
|
+
|
|
558
575
|
override(GridAxis.prototype, {
|
|
559
576
|
init: function (proceed, chart, userOptions) {
|
|
560
577
|
var axis = this,
|