corrade-nucleus-nucleons – Blame information for rev 31

Subversion Repositories:
Rev:
Rev Author Line No. Line
31 office 1 /**
2 * @license Highcharts JS v5.0.14 (2017-07-28)
3 *
4 * (c) 2009-2016 Torstein Honsi
5 *
6 * License: www.highcharts.com/license
7 */
8 'use strict';
9 (function(factory) {
10 if (typeof module === 'object' && module.exports) {
11 module.exports = factory;
12 } else {
13 factory(Highcharts);
14 }
15 }(function(Highcharts) {
16 (function(H) {
17 /**
18 * (c) 2010-2017 Torstein Honsi
19 *
20 * License: www.highcharts.com/license
21 */
22 var CenteredSeriesMixin = H.CenteredSeriesMixin,
23 each = H.each,
24 extend = H.extend,
25 merge = H.merge,
26 splat = H.splat;
27 /**
28 * The Pane object allows options that are common to a set of X and Y axes.
29 *
30 * In the future, this can be extended to basic Highcharts and Highstock.
31 *
32 */
33 function Pane(options, chart) {
34 this.init(options, chart);
35 }
36  
37 // Extend the Pane prototype
38 extend(Pane.prototype, {
39  
40 coll: 'pane', // Member of chart.pane
41  
42 /**
43 * Initiate the Pane object
44 */
45 init: function(options, chart) {
46 this.chart = chart;
47 this.background = [];
48  
49 chart.pane.push(this);
50  
51 this.setOptions(options);
52 },
53  
54 setOptions: function(options) {
55  
56 // Set options. Angular charts have a default background (#3318)
57 this.options = options = merge(
58 this.defaultOptions,
59 this.chart.angular ? {
60 background: {}
61 } : undefined,
62 options
63 );
64 },
65  
66 /**
67 * Render the pane with its backgrounds.
68 */
69 render: function() {
70  
71 var options = this.options,
72 backgroundOption = this.options.background,
73 renderer = this.chart.renderer,
74 len,
75 i;
76  
77 if (!this.group) {
78 this.group = renderer.g('pane-group')
79 .attr({
80 zIndex: options.zIndex || 0
81 })
82 .add();
83 }
84  
85 this.updateCenter();
86  
87 // Render the backgrounds
88 if (backgroundOption) {
89 backgroundOption = splat(backgroundOption);
90  
91 len = Math.max(
92 backgroundOption.length,
93 this.background.length || 0
94 );
95  
96 for (i = 0; i < len; i++) {
97 if (backgroundOption[i] && this.axis) { // #6641 - if axis exists, chart is circular and apply background
98 this.renderBackground(
99 merge(
100 this.defaultBackgroundOptions,
101 backgroundOption[i]
102 ),
103 i
104 );
105 } else if (this.background[i]) {
106 this.background[i] = this.background[i].destroy();
107 this.background.splice(i, 1);
108 }
109 }
110 }
111 },
112  
113 /**
114 * Render an individual pane background.
115 * @param {Object} backgroundOptions Background options
116 * @param {number} i The index of the background in this.backgrounds
117 */
118 renderBackground: function(backgroundOptions, i) {
119 var method = 'animate';
120  
121 if (!this.background[i]) {
122 this.background[i] = this.chart.renderer.path()
123 .add(this.group);
124 method = 'attr';
125 }
126  
127 this.background[i][method]({
128 'd': this.axis.getPlotBandPath(
129 backgroundOptions.from,
130 backgroundOptions.to,
131 backgroundOptions
132 )
133 }).attr({
134  
135 'class': 'highcharts-pane ' + (backgroundOptions.className || '')
136 });
137  
138 },
139  
140 /**
141 * The default options object
142 * @optionparent pane
143 */
144 defaultOptions: {
145 // background: {conditional},
146  
147 /**
148 * The center of a polar chart or angular gauge, given as an array
149 * of [x, y] positions. Positions can be given as integers that transform
150 * to pixels, or as percentages of the plot area size.
151 *
152 * @type {Array<String|Number>}
153 * @sample {highcharts} highcharts/demo/gauge-vu-meter/ Two gauges with different center
154 * @default ["50%", "50%"]
155 * @since 2.3.0
156 * @product highcharts
157 */
158 center: ['50%', '50%'],
159  
160 /**
161 * The size of the pane, either as a number defining pixels, or a
162 * percentage defining a percentage of the plot are.
163 *
164 * @type {Number|String}
165 * @sample {highcharts} highcharts/demo/gauge-vu-meter/ Smaller size
166 * @default 85%
167 * @product highcharts
168 */
169 size: '85%',
170  
171 /**
172 * The start angle of the polar X axis or gauge axis, given in degrees
173 * where 0 is north. Defaults to 0.
174 *
175 * @type {Number}
176 * @sample {highcharts} highcharts/demo/gauge-vu-meter/ VU-meter with custom start and end angle
177 * @since 2.3.0
178 * @product highcharts
179 */
180 startAngle: 0
181 //endAngle: startAngle + 360
182 },
183  
184 /**
185 * The default background options
186 * @optionparent pane.background
187 */
188 defaultBackgroundOptions: {
189 //className: 'highcharts-pane',
190  
191 /**
192 * Tha shape of the pane background. When `solid`, the background
193 * is circular. When `arc`, the background extends only from the min
194 * to the max of the value axis.
195 *
196 * @validvalue ["solid", "arc"]
197 * @type {String}
198 * @default solid
199 * @since 2.3.0
200 * @product highcharts
201 */
202 shape: 'circle',
203  
204  
205 /**
206 */
207 from: -Number.MAX_VALUE, // corrected to axis min
208  
209 /**
210 * The inner radius of the pane background. Can be either numeric
211 * (pixels) or a percentage string.
212 *
213 * @type {Number|String}
214 * @default 0
215 * @since 2.3.0
216 * @product highcharts
217 */
218 innerRadius: 0,
219  
220 /**
221 */
222 to: Number.MAX_VALUE, // corrected to axis max
223  
224 /**
225 * The outer radius of the circular pane background. Can be either
226 * numeric (pixels) or a percentage string.
227 *
228 * @type {Number|String}
229 * @default 105%
230 * @since 2.3.0
231 * @product highcharts
232 */
233 outerRadius: '105%'
234 },
235  
236 /**
237 * Gets the center for the pane and its axis.
238 */
239 updateCenter: function(axis) {
240 this.center = (axis || this.axis || {}).center =
241 CenteredSeriesMixin.getCenter.call(this);
242 },
243  
244 /**
245 * Destroy the pane item
246 * /
247 destroy: function () {
248 H.erase(this.chart.pane, this);
249 each(this.background, function (background) {
250 background.destroy();
251 });
252 this.background.length = 0;
253 this.group = this.group.destroy();
254 },
255 */
256  
257 /**
258 * Update the pane item with new options
259 * @param {Object} options New pane options
260 */
261 update: function(options, redraw) {
262  
263 merge(true, this.options, options);
264 this.setOptions(this.options);
265 this.render();
266 each(this.chart.axes, function(axis) {
267 if (axis.pane === this) {
268 axis.pane = null;
269 axis.update({}, redraw);
270 }
271 }, this);
272 }
273  
274 });
275  
276 H.Pane = Pane;
277  
278 }(Highcharts));
279 (function(H) {
280 /**
281 * (c) 2010-2017 Torstein Honsi
282 *
283 * License: www.highcharts.com/license
284 */
285 var Axis = H.Axis,
286 each = H.each,
287 extend = H.extend,
288 map = H.map,
289 merge = H.merge,
290 noop = H.noop,
291 pick = H.pick,
292 pInt = H.pInt,
293 Tick = H.Tick,
294 wrap = H.wrap,
295  
296  
297 hiddenAxisMixin, // @todo Extract this to a new file
298 radialAxisMixin, // @todo Extract this to a new file
299 axisProto = Axis.prototype,
300 tickProto = Tick.prototype;
301  
302 /**
303 * Augmented methods for the x axis in order to hide it completely, used for the X axis in gauges
304 */
305 hiddenAxisMixin = {
306 getOffset: noop,
307 redraw: function() {
308 this.isDirty = false; // prevent setting Y axis dirty
309 },
310 render: function() {
311 this.isDirty = false; // prevent setting Y axis dirty
312 },
313 setScale: noop,
314 setCategories: noop,
315 setTitle: noop
316 };
317  
318 /**
319 * Augmented methods for the value axis
320 */
321 radialAxisMixin = {
322  
323 /**
324 * The default options extend defaultYAxisOptions
325 */
326 defaultRadialGaugeOptions: {
327 labels: {
328 align: 'center',
329 x: 0,
330 y: null // auto
331 },
332 minorGridLineWidth: 0,
333 minorTickInterval: 'auto',
334 minorTickLength: 10,
335 minorTickPosition: 'inside',
336 minorTickWidth: 1,
337 tickLength: 10,
338 tickPosition: 'inside',
339 tickWidth: 2,
340 title: {
341 rotation: 0
342 },
343 zIndex: 2 // behind dials, points in the series group
344 },
345  
346 // Circular axis around the perimeter of a polar chart
347 defaultRadialXOptions: {
348 gridLineWidth: 1, // spokes
349 labels: {
350 align: null, // auto
351 distance: 15,
352 x: 0,
353 y: null // auto
354 },
355 maxPadding: 0,
356 minPadding: 0,
357 showLastLabel: false,
358 tickLength: 0
359 },
360  
361 // Radial axis, like a spoke in a polar chart
362 defaultRadialYOptions: {
363 gridLineInterpolation: 'circle',
364 labels: {
365 align: 'right',
366 x: -3,
367 y: -2
368 },
369 showLastLabel: false,
370 title: {
371 x: 4,
372 text: null,
373 rotation: 90
374 }
375 },
376  
377 /**
378 * Merge and set options
379 */
380 setOptions: function(userOptions) {
381  
382 var options = this.options = merge(
383 this.defaultOptions,
384 this.defaultRadialOptions,
385 userOptions
386 );
387  
388 // Make sure the plotBands array is instanciated for each Axis (#2649)
389 if (!options.plotBands) {
390 options.plotBands = [];
391 }
392  
393 },
394  
395 /**
396 * Wrap the getOffset method to return zero offset for title or labels in a radial
397 * axis
398 */
399 getOffset: function() {
400 // Call the Axis prototype method (the method we're in now is on the instance)
401 axisProto.getOffset.call(this);
402  
403 // Title or label offsets are not counted
404 this.chart.axisOffset[this.side] = 0;
405  
406 },
407  
408  
409 /**
410 * Get the path for the axis line. This method is also referenced in the getPlotLinePath
411 * method.
412 */
413 getLinePath: function(lineWidth, radius) {
414 var center = this.center,
415 end,
416 chart = this.chart,
417 r = pick(radius, center[2] / 2 - this.offset),
418 path;
419  
420 if (this.isCircular || radius !== undefined) {
421 path = this.chart.renderer.symbols.arc(
422 this.left + center[0],
423 this.top + center[1],
424 r,
425 r, {
426 start: this.startAngleRad,
427 end: this.endAngleRad,
428 open: true,
429 innerR: 0
430 }
431 );
432 } else {
433 end = this.postTranslate(this.angleRad, r);
434 path = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
435 }
436 return path;
437 },
438  
439 /**
440 * Override setAxisTranslation by setting the translation to the difference
441 * in rotation. This allows the translate method to return angle for
442 * any given value.
443 */
444 setAxisTranslation: function() {
445  
446 // Call uber method
447 axisProto.setAxisTranslation.call(this);
448  
449 // Set transA and minPixelPadding
450 if (this.center) { // it's not defined the first time
451 if (this.isCircular) {
452  
453 this.transA = (this.endAngleRad - this.startAngleRad) /
454 ((this.max - this.min) || 1);
455  
456  
457 } else {
458 this.transA = (this.center[2] / 2) / ((this.max - this.min) || 1);
459 }
460  
461 if (this.isXAxis) {
462 this.minPixelPadding = this.transA * this.minPointOffset;
463 } else {
464 // This is a workaround for regression #2593, but categories still don't position correctly.
465 this.minPixelPadding = 0;
466 }
467 }
468 },
469  
470 /**
471 * In case of auto connect, add one closestPointRange to the max value right before
472 * tickPositions are computed, so that ticks will extend passed the real max.
473 */
474 beforeSetTickPositions: function() {
475 // If autoConnect is true, polygonal grid lines are connected, and one closestPointRange
476 // is added to the X axis to prevent the last point from overlapping the first.
477 this.autoConnect = this.isCircular && pick(this.userMax, this.options.max) === undefined &&
478 this.endAngleRad - this.startAngleRad === 2 * Math.PI;
479  
480 if (this.autoConnect) {
481 this.max += (this.categories && 1) || this.pointRange || this.closestPointRange || 0; // #1197, #2260
482 }
483 },
484  
485 /**
486 * Override the setAxisSize method to use the arc's circumference as length. This
487 * allows tickPixelInterval to apply to pixel lengths along the perimeter
488 */
489 setAxisSize: function() {
490  
491 axisProto.setAxisSize.call(this);
492  
493 if (this.isRadial) {
494  
495 // Set the center array
496 this.pane.updateCenter(this);
497  
498 // The sector is used in Axis.translate to compute the translation of reversed axis points (#2570)
499 if (this.isCircular) {
500 this.sector = this.endAngleRad - this.startAngleRad;
501 }
502  
503 // Axis len is used to lay out the ticks
504 this.len = this.width = this.height = this.center[2] * pick(this.sector, 1) / 2;
505  
506  
507 }
508 },
509  
510 /**
511 * Returns the x, y coordinate of a point given by a value and a pixel distance
512 * from center
513 */
514 getPosition: function(value, length) {
515 return this.postTranslate(
516 this.isCircular ? this.translate(value) : this.angleRad, // #2848
517 pick(this.isCircular ? length : this.translate(value), this.center[2] / 2) - this.offset
518 );
519 },
520  
521 /**
522 * Translate from intermediate plotX (angle), plotY (axis.len - radius) to final chart coordinates.
523 */
524 postTranslate: function(angle, radius) {
525  
526 var chart = this.chart,
527 center = this.center;
528  
529 angle = this.startAngleRad + angle;
530  
531 return {
532 x: chart.plotLeft + center[0] + Math.cos(angle) * radius,
533 y: chart.plotTop + center[1] + Math.sin(angle) * radius
534 };
535  
536 },
537  
538 /**
539 * Find the path for plot bands along the radial axis
540 */
541 getPlotBandPath: function(from, to, options) {
542 var center = this.center,
543 startAngleRad = this.startAngleRad,
544 fullRadius = center[2] / 2,
545 radii = [
546 pick(options.outerRadius, '100%'),
547 options.innerRadius,
548 pick(options.thickness, 10)
549 ],
550 offset = Math.min(this.offset, 0),
551 percentRegex = /%$/,
552 start,
553 end,
554 open,
555 isCircular = this.isCircular, // X axis in a polar chart
556 ret;
557  
558 // Polygonal plot bands
559 if (this.options.gridLineInterpolation === 'polygon') {
560 ret = this.getPlotLinePath(from).concat(this.getPlotLinePath(to, true));
561  
562 // Circular grid bands
563 } else {
564  
565 // Keep within bounds
566 from = Math.max(from, this.min);
567 to = Math.min(to, this.max);
568  
569 // Plot bands on Y axis (radial axis) - inner and outer radius depend on to and from
570 if (!isCircular) {
571 radii[0] = this.translate(from);
572 radii[1] = this.translate(to);
573 }
574  
575 // Convert percentages to pixel values
576 radii = map(radii, function(radius) {
577 if (percentRegex.test(radius)) {
578 radius = (pInt(radius, 10) * fullRadius) / 100;
579 }
580 return radius;
581 });
582  
583 // Handle full circle
584 if (options.shape === 'circle' || !isCircular) {
585 start = -Math.PI / 2;
586 end = Math.PI * 1.5;
587 open = true;
588 } else {
589 start = startAngleRad + this.translate(from);
590 end = startAngleRad + this.translate(to);
591 }
592  
593 radii[0] -= offset; // #5283
594 radii[2] -= offset; // #5283
595  
596 ret = this.chart.renderer.symbols.arc(
597 this.left + center[0],
598 this.top + center[1],
599 radii[0],
600 radii[0], {
601 start: Math.min(start, end), // Math is for reversed yAxis (#3606)
602 end: Math.max(start, end),
603 innerR: pick(radii[1], radii[0] - radii[2]),
604 open: open
605 }
606 );
607 }
608  
609 return ret;
610 },
611  
612 /**
613 * Find the path for plot lines perpendicular to the radial axis.
614 */
615 getPlotLinePath: function(value, reverse) {
616 var axis = this,
617 center = axis.center,
618 chart = axis.chart,
619 end = axis.getPosition(value),
620 xAxis,
621 xy,
622 tickPositions,
623 ret;
624  
625 // Spokes
626 if (axis.isCircular) {
627 ret = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
628  
629 // Concentric circles
630 } else if (axis.options.gridLineInterpolation === 'circle') {
631 value = axis.translate(value);
632 if (value) { // a value of 0 is in the center
633 ret = axis.getLinePath(0, value);
634 }
635 // Concentric polygons
636 } else {
637 // Find the X axis in the same pane
638 each(chart.xAxis, function(a) {
639 if (a.pane === axis.pane) {
640 xAxis = a;
641 }
642 });
643 ret = [];
644 value = axis.translate(value);
645 tickPositions = xAxis.tickPositions;
646 if (xAxis.autoConnect) {
647 tickPositions = tickPositions.concat([tickPositions[0]]);
648 }
649 // Reverse the positions for concatenation of polygonal plot bands
650 if (reverse) {
651 tickPositions = [].concat(tickPositions).reverse();
652 }
653  
654 each(tickPositions, function(pos, i) {
655 xy = xAxis.getPosition(pos, value);
656 ret.push(i ? 'L' : 'M', xy.x, xy.y);
657 });
658  
659 }
660 return ret;
661 },
662  
663 /**
664 * Find the position for the axis title, by default inside the gauge
665 */
666 getTitlePosition: function() {
667 var center = this.center,
668 chart = this.chart,
669 titleOptions = this.options.title;
670  
671 return {
672 x: chart.plotLeft + center[0] + (titleOptions.x || 0),
673 y: chart.plotTop + center[1] - ({
674 high: 0.5,
675 middle: 0.25,
676 low: 0
677 }[titleOptions.align] *
678 center[2]) + (titleOptions.y || 0)
679 };
680 }
681  
682 };
683  
684 /**
685 * Override axisProto.init to mix in special axis instance functions and function overrides
686 */
687 wrap(axisProto, 'init', function(proceed, chart, userOptions) {
688 var angular = chart.angular,
689 polar = chart.polar,
690 isX = userOptions.isX,
691 isHidden = angular && isX,
692 isCircular,
693 options,
694 chartOptions = chart.options,
695 paneIndex = userOptions.pane || 0,
696 pane = this.pane = chart.pane[paneIndex],
697 paneOptions = pane.options;
698  
699 // Before prototype.init
700 if (angular) {
701 extend(this, isHidden ? hiddenAxisMixin : radialAxisMixin);
702 isCircular = !isX;
703 if (isCircular) {
704 this.defaultRadialOptions = this.defaultRadialGaugeOptions;
705 }
706  
707 } else if (polar) {
708 extend(this, radialAxisMixin);
709 isCircular = isX;
710 this.defaultRadialOptions = isX ? this.defaultRadialXOptions : merge(this.defaultYAxisOptions, this.defaultRadialYOptions);
711  
712 }
713  
714 // Disable certain features on angular and polar axes
715 if (angular || polar) {
716 this.isRadial = true;
717 chart.inverted = false;
718 chartOptions.chart.zoomType = null;
719 } else {
720 this.isRadial = false;
721 }
722  
723 // A pointer back to this axis to borrow geometry
724 if (isCircular) {
725 pane.axis = this;
726 }
727  
728 // Run prototype.init
729 proceed.call(this, chart, userOptions);
730  
731 if (!isHidden && (angular || polar)) {
732 options = this.options;
733  
734 // Start and end angle options are
735 // given in degrees relative to top, while internal computations are
736 // in radians relative to right (like SVG).
737 this.angleRad = (options.angle || 0) * Math.PI / 180; // Y axis in polar charts
738 this.startAngleRad = (paneOptions.startAngle - 90) * Math.PI / 180; // Gauges
739 this.endAngleRad = (pick(paneOptions.endAngle, paneOptions.startAngle + 360) - 90) * Math.PI / 180; // Gauges
740 this.offset = options.offset || 0;
741  
742 this.isCircular = isCircular;
743  
744 }
745  
746 });
747  
748 /**
749 * Wrap auto label align to avoid setting axis-wide rotation on radial axes (#4920)
750 * @param {Function} proceed
751 * @returns {String} Alignment
752 */
753 wrap(axisProto, 'autoLabelAlign', function(proceed) {
754 if (!this.isRadial) {
755 return proceed.apply(this, [].slice.call(arguments, 1));
756 } // else return undefined
757 });
758  
759 /**
760 * Add special cases within the Tick class' methods for radial axes.
761 */
762 wrap(tickProto, 'getPosition', function(proceed, horiz, pos, tickmarkOffset, old) {
763 var axis = this.axis;
764  
765 return axis.getPosition ?
766 axis.getPosition(pos) :
767 proceed.call(this, horiz, pos, tickmarkOffset, old);
768 });
769  
770 /**
771 * Wrap the getLabelPosition function to find the center position of the label
772 * based on the distance option
773 */
774 wrap(tickProto, 'getLabelPosition', function(proceed, x, y, label, horiz, labelOptions, tickmarkOffset, index, step) {
775 var axis = this.axis,
776 optionsY = labelOptions.y,
777 ret,
778 centerSlot = 20, // 20 degrees to each side at the top and bottom
779 align = labelOptions.align,
780 angle = ((axis.translate(this.pos) + axis.startAngleRad + Math.PI / 2) / Math.PI * 180) % 360;
781  
782 if (axis.isRadial) { // Both X and Y axes in a polar chart
783 ret = axis.getPosition(this.pos, (axis.center[2] / 2) + pick(labelOptions.distance, -25));
784  
785 // Automatically rotated
786 if (labelOptions.rotation === 'auto') {
787 label.attr({
788 rotation: angle
789 });
790  
791 // Vertically centered
792 } else if (optionsY === null) {
793 optionsY = axis.chart.renderer.fontMetrics(label.styles.fontSize).b - label.getBBox().height / 2;
794 }
795  
796 // Automatic alignment
797 if (align === null) {
798 if (axis.isCircular) { // Y axis
799 if (this.label.getBBox().width > axis.len * axis.tickInterval / (axis.max - axis.min)) { // #3506
800 centerSlot = 0;
801 }
802 if (angle > centerSlot && angle < 180 - centerSlot) {
803 < 180 - centerSlot) { align = 'left'; // right hemisphere
804 < 180 - centerSlot) { } else if (angle > 180 + centerSlot && angle < 360 - centerSlot) {
805 < 180 - centerSlot) {< 360 - centerSlot) { align = 'right'; // left hemisphere
806 < 180 - centerSlot) {< 360 - centerSlot) { } else {
807 < 180 - centerSlot) {< 360 - centerSlot) { align = 'center'; // top or bottom
808 < 180 - centerSlot) {< 360 - centerSlot) { }
809 < 180 - centerSlot) {< 360 - centerSlot) { } else {
810 < 180 - centerSlot) {< 360 - centerSlot) { align = 'center';
811 < 180 - centerSlot) {< 360 - centerSlot) { }
812 < 180 - centerSlot) {< 360 - centerSlot) { label.attr({
813 < 180 - centerSlot) {< 360 - centerSlot) { align: align
814 < 180 - centerSlot) {< 360 - centerSlot) { });
815 < 180 - centerSlot) {< 360 - centerSlot) { }
816  
817 < 180 - centerSlot) {< 360 - centerSlot) { ret.x += labelOptions.x;
818 < 180 - centerSlot) {< 360 - centerSlot) { ret.y += optionsY;
819  
820 < 180 - centerSlot) {< 360 - centerSlot) { } else {
821 < 180 - centerSlot) {< 360 - centerSlot) { ret = proceed.call(this, x, y, label, horiz, labelOptions, tickmarkOffset, index, step);
822 < 180 - centerSlot) {< 360 - centerSlot) { }
823 < 180 - centerSlot) {< 360 - centerSlot) { return ret;
824 < 180 - centerSlot) {< 360 - centerSlot) { });
825  
826 < 180 - centerSlot) {< 360 - centerSlot) { /**
827 < 180 - centerSlot) {< 360 - centerSlot) { * Wrap the getMarkPath function to return the path of the radial marker
828 < 180 - centerSlot) {< 360 - centerSlot) { */
829 < 180 - centerSlot) {< 360 - centerSlot) { wrap(tickProto, 'getMarkPath', function(proceed, x, y, tickLength, tickWidth, horiz, renderer) {
830 < 180 - centerSlot) {< 360 - centerSlot) { var axis = this.axis,
831 < 180 - centerSlot) {< 360 - centerSlot) { endPoint,
832 < 180 - centerSlot) {< 360 - centerSlot) { ret;
833  
834 < 180 - centerSlot) {< 360 - centerSlot) { if (axis.isRadial) {
835 < 180 - centerSlot) {< 360 - centerSlot) { endPoint = axis.getPosition(this.pos, axis.center[2] / 2 + tickLength);
836 < 180 - centerSlot) {< 360 - centerSlot) { ret = [
837 < 180 - centerSlot) {< 360 - centerSlot) { 'M',
838 < 180 - centerSlot) {< 360 - centerSlot) { x,
839 < 180 - centerSlot) {< 360 - centerSlot) { y,
840 < 180 - centerSlot) {< 360 - centerSlot) { 'L',
841 < 180 - centerSlot) {< 360 - centerSlot) { endPoint.x,
842 < 180 - centerSlot) {< 360 - centerSlot) { endPoint.y
843 < 180 - centerSlot) {< 360 - centerSlot) { ];
844 < 180 - centerSlot) {< 360 - centerSlot) { } else {
845 < 180 - centerSlot) {< 360 - centerSlot) { ret = proceed.call(this, x, y, tickLength, tickWidth, horiz, renderer);
846 < 180 - centerSlot) {< 360 - centerSlot) { }
847 < 180 - centerSlot) {< 360 - centerSlot) { return ret;
848 < 180 - centerSlot) {< 360 - centerSlot) { });
849  
850 < 180 - centerSlot) {< 360 - centerSlot) { }(Highcharts));
851 < 180 - centerSlot) {< 360 - centerSlot) { (function(H) {
852 < 180 - centerSlot) {< 360 - centerSlot) { /**
853 < 180 - centerSlot) {< 360 - centerSlot) { * (c) 2010-2017 Torstein Honsi
854 < 180 - centerSlot) {< 360 - centerSlot) { *
855 < 180 - centerSlot) {< 360 - centerSlot) { * License: www.highcharts.com/license
856 < 180 - centerSlot) {< 360 - centerSlot) { */
857 < 180 - centerSlot) {< 360 - centerSlot) { var each = H.each,
858 < 180 - centerSlot) {< 360 - centerSlot) { noop = H.noop,
859 < 180 - centerSlot) {< 360 - centerSlot) { pick = H.pick,
860 < 180 - centerSlot) {< 360 - centerSlot) { defined = H.defined,
861 < 180 - centerSlot) {< 360 - centerSlot) { Series = H.Series,
862 < 180 - centerSlot) {< 360 - centerSlot) { seriesType = H.seriesType,
863 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes = H.seriesTypes,
864 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto = Series.prototype,
865 < 180 - centerSlot) {< 360 - centerSlot) { pointProto = H.Point.prototype;
866  
867 < 180 - centerSlot) {< 360 - centerSlot) { // The arearangeseries series type
868  
869  
870 < 180 - centerSlot) {< 360 - centerSlot) { /**
871 < 180 - centerSlot) {< 360 - centerSlot) { * @extends plotOptions.area
872 < 180 - centerSlot) {< 360 - centerSlot) { * @optionparent plotOptions.arearange
873 < 180 - centerSlot) {< 360 - centerSlot) { */
874 < 180 - centerSlot) {< 360 - centerSlot) { seriesType('arearange', 'area', {
875  
876  
877 < 180 - centerSlot) {< 360 - centerSlot) { /**
878 < 180 - centerSlot) {< 360 - centerSlot) { */
879 < 180 - centerSlot) {< 360 - centerSlot) { threshold: null,
880  
881 < 180 - centerSlot) {< 360 - centerSlot) { /**
882 < 180 - centerSlot) {< 360 - centerSlot) { */
883 < 180 - centerSlot) {< 360 - centerSlot) { tooltip: {
884  
885 < 180 - centerSlot) {< 360 - centerSlot) { pointFormat: '<span class="highcharts-color-{series.colorIndex}">\u25CF</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'
886  
887 < 180 - centerSlot) {< 360 - centerSlot) { },
888  
889 < 180 - centerSlot) {< 360 - centerSlot) { /**
890 < 180 - centerSlot) {< 360 - centerSlot) { * Whether the whole area or just the line should respond to mouseover
891 < 180 - centerSlot) {< 360 - centerSlot) { * tooltips and other mouse or touch events.
892 < 180 - centerSlot) {< 360 - centerSlot) { *
893 < 180 - centerSlot) {< 360 - centerSlot) { * @type {Boolean}
894 < 180 - centerSlot) {< 360 - centerSlot) { * @default true
895 < 180 - centerSlot) {< 360 - centerSlot) { * @since 2.3.0
896 < 180 - centerSlot) {< 360 - centerSlot) { * @product highcharts highstock
897 < 180 - centerSlot) {< 360 - centerSlot) { */
898 < 180 - centerSlot) {< 360 - centerSlot) { trackByArea: true,
899  
900 < 180 - centerSlot) {< 360 - centerSlot) { /**
901 < 180 - centerSlot) {< 360 - centerSlot) { * Extended data labels for range series types. Range series data labels
902 < 180 - centerSlot) {< 360 - centerSlot) { * have no `x` and `y` options. Instead, they have `xLow`, `xHigh`,
903 < 180 - centerSlot) {< 360 - centerSlot) { * `yLow` and `yHigh` options to allow the higher and lower data label
904 < 180 - centerSlot) {< 360 - centerSlot) { * sets individually.
905 < 180 - centerSlot) {< 360 - centerSlot) { *
906 < 180 - centerSlot) {< 360 - centerSlot) { * @type {Object}
907 < 180 - centerSlot) {< 360 - centerSlot) { * @extends plotOptions.series.dataLabels
908 < 180 - centerSlot) {< 360 - centerSlot) { * @excluding x,y
909 < 180 - centerSlot) {< 360 - centerSlot) { * @since 2.3.0
910 < 180 - centerSlot) {< 360 - centerSlot) { * @product highcharts highstock
911 < 180 - centerSlot) {< 360 - centerSlot) { */
912 < 180 - centerSlot) {< 360 - centerSlot) { dataLabels: {
913  
914 < 180 - centerSlot) {< 360 - centerSlot) { /**
915 < 180 - centerSlot) {< 360 - centerSlot) { */
916 < 180 - centerSlot) {< 360 - centerSlot) { align: null,
917  
918 < 180 - centerSlot) {< 360 - centerSlot) { /**
919 < 180 - centerSlot) {< 360 - centerSlot) { */
920 < 180 - centerSlot) {< 360 - centerSlot) { verticalAlign: null,
921  
922 < 180 - centerSlot) {< 360 - centerSlot) { /**
923 < 180 - centerSlot) {< 360 - centerSlot) { * X offset of the lower data labels relative to the point value.
924 < 180 - centerSlot) {< 360 - centerSlot) { *
925 < 180 - centerSlot) {< 360 - centerSlot) { * @type {Number}
926 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highcharts} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
927 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highstock} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
928 < 180 - centerSlot) {< 360 - centerSlot) { * @default 0
929 < 180 - centerSlot) {< 360 - centerSlot) { * @since 2.3.0
930 < 180 - centerSlot) {< 360 - centerSlot) { * @product highcharts highstock
931 < 180 - centerSlot) {< 360 - centerSlot) { */
932 < 180 - centerSlot) {< 360 - centerSlot) { xLow: 0,
933  
934 < 180 - centerSlot) {< 360 - centerSlot) { /**
935 < 180 - centerSlot) {< 360 - centerSlot) { * X offset of the higher data labels relative to the point value.
936 < 180 - centerSlot) {< 360 - centerSlot) { *
937 < 180 - centerSlot) {< 360 - centerSlot) { * @type {Number}
938 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highcharts} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
939 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highstock} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
940 < 180 - centerSlot) {< 360 - centerSlot) { * @default 0
941 < 180 - centerSlot) {< 360 - centerSlot) { * @since 2.3.0
942 < 180 - centerSlot) {< 360 - centerSlot) { * @product highcharts highstock
943 < 180 - centerSlot) {< 360 - centerSlot) { */
944 < 180 - centerSlot) {< 360 - centerSlot) { xHigh: 0,
945  
946 < 180 - centerSlot) {< 360 - centerSlot) { /**
947 < 180 - centerSlot) {< 360 - centerSlot) { * Y offset of the lower data labels relative to the point value.
948 < 180 - centerSlot) {< 360 - centerSlot) { *
949 < 180 - centerSlot) {< 360 - centerSlot) { * @type {Number}
950 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highcharts} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
951 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highstock} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
952 < 180 - centerSlot) {< 360 - centerSlot) { * @default 16
953 < 180 - centerSlot) {< 360 - centerSlot) { * @since 2.3.0
954 < 180 - centerSlot) {< 360 - centerSlot) { * @product highcharts highstock
955 < 180 - centerSlot) {< 360 - centerSlot) { */
956 < 180 - centerSlot) {< 360 - centerSlot) { yLow: 0,
957  
958 < 180 - centerSlot) {< 360 - centerSlot) { /**
959 < 180 - centerSlot) {< 360 - centerSlot) { * Y offset of the higher data labels relative to the point value.
960 < 180 - centerSlot) {< 360 - centerSlot) { *
961 < 180 - centerSlot) {< 360 - centerSlot) { * @type {Number}
962 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highcharts} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
963 < 180 - centerSlot) {< 360 - centerSlot) { * @sample {highstock} highcharts/plotoptions/arearange-datalabels/ Data labels on range series
964 < 180 - centerSlot) {< 360 - centerSlot) { * @default -6
965 < 180 - centerSlot) {< 360 - centerSlot) { * @since 2.3.0
966 < 180 - centerSlot) {< 360 - centerSlot) { * @product highcharts highstock
967 < 180 - centerSlot) {< 360 - centerSlot) { */
968 < 180 - centerSlot) {< 360 - centerSlot) { yHigh: 0
969 < 180 - centerSlot) {< 360 - centerSlot) { }
970  
971 < 180 - centerSlot) {< 360 - centerSlot) { // Prototype members
972 < 180 - centerSlot) {< 360 - centerSlot) { }, {
973 < 180 - centerSlot) {< 360 - centerSlot) { pointArrayMap: ['low', 'high'],
974 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelCollections: ['dataLabel', 'dataLabelUpper'],
975 < 180 - centerSlot) {< 360 - centerSlot) { toYData: function(point) {
976 < 180 - centerSlot) {< 360 - centerSlot) { return [point.low, point.high];
977 < 180 - centerSlot) {< 360 - centerSlot) { },
978 < 180 - centerSlot) {< 360 - centerSlot) { pointValKey: 'low',
979 < 180 - centerSlot) {< 360 - centerSlot) { deferTranslatePolar: true,
980  
981 < 180 - centerSlot) {< 360 - centerSlot) { /**
982 < 180 - centerSlot) {< 360 - centerSlot) { * Translate a point's plotHigh from the internal angle and radius measures to
983 < 180 - centerSlot) {< 360 - centerSlot) { * true plotHigh coordinates. This is an addition of the toXY method found in
984 < 180 - centerSlot) {< 360 - centerSlot) { * Polar.js, because it runs too early for arearanges to be considered (#3419).
985 < 180 - centerSlot) {< 360 - centerSlot) { */
986 < 180 - centerSlot) {< 360 - centerSlot) { highToXY: function(point) {
987 < 180 - centerSlot) {< 360 - centerSlot) { // Find the polar plotX and plotY
988 < 180 - centerSlot) {< 360 - centerSlot) { var chart = this.chart,
989 < 180 - centerSlot) {< 360 - centerSlot) { xy = this.xAxis.postTranslate(point.rectPlotX, this.yAxis.len - point.plotHigh);
990 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHighX = xy.x - chart.plotLeft;
991 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHigh = xy.y - chart.plotTop;
992 < 180 - centerSlot) {< 360 - centerSlot) { point.plotLowX = point.plotX;
993 < 180 - centerSlot) {< 360 - centerSlot) { },
994  
995 < 180 - centerSlot) {< 360 - centerSlot) { /**
996 < 180 - centerSlot) {< 360 - centerSlot) { * Translate data points from raw values x and y to plotX and plotY
997 < 180 - centerSlot) {< 360 - centerSlot) { */
998 < 180 - centerSlot) {< 360 - centerSlot) { translate: function() {
999 < 180 - centerSlot) {< 360 - centerSlot) { var series = this,
1000 < 180 - centerSlot) {< 360 - centerSlot) { yAxis = series.yAxis,
1001 < 180 - centerSlot) {< 360 - centerSlot) { hasModifyValue = !!series.modifyValue;
1002  
1003 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes.area.prototype.translate.apply(series);
1004  
1005 < 180 - centerSlot) {< 360 - centerSlot) { // Set plotLow and plotHigh
1006 < 180 - centerSlot) {< 360 - centerSlot) { each(series.points, function(point) {
1007  
1008 < 180 - centerSlot) {< 360 - centerSlot) { var low = point.low,
1009 < 180 - centerSlot) {< 360 - centerSlot) { high = point.high,
1010 < 180 - centerSlot) {< 360 - centerSlot) { plotY = point.plotY;
1011  
1012 < 180 - centerSlot) {< 360 - centerSlot) { if (high === null || low === null) {
1013 < 180 - centerSlot) {< 360 - centerSlot) { point.isNull = true;
1014 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = null;
1015 < 180 - centerSlot) {< 360 - centerSlot) { } else {
1016 < 180 - centerSlot) {< 360 - centerSlot) { point.plotLow = plotY;
1017 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHigh = yAxis.translate(
1018 < 180 - centerSlot) {< 360 - centerSlot) { hasModifyValue ? series.modifyValue(high, point) : high,
1019 < 180 - centerSlot) {< 360 - centerSlot) { 0,
1020 < 180 - centerSlot) {< 360 - centerSlot) { 1,
1021 < 180 - centerSlot) {< 360 - centerSlot) { 0,
1022 < 180 - centerSlot) {< 360 - centerSlot) { 1
1023 < 180 - centerSlot) {< 360 - centerSlot) { );
1024 < 180 - centerSlot) {< 360 - centerSlot) { if (hasModifyValue) {
1025 < 180 - centerSlot) {< 360 - centerSlot) { point.yBottom = point.plotHigh;
1026 < 180 - centerSlot) {< 360 - centerSlot) { }
1027 < 180 - centerSlot) {< 360 - centerSlot) { }
1028 < 180 - centerSlot) {< 360 - centerSlot) { });
1029  
1030 < 180 - centerSlot) {< 360 - centerSlot) { // Postprocess plotHigh
1031 < 180 - centerSlot) {< 360 - centerSlot) { if (this.chart.polar) {
1032 < 180 - centerSlot) {< 360 - centerSlot) { each(this.points, function(point) {
1033 < 180 - centerSlot) {< 360 - centerSlot) { series.highToXY(point);
1034 < 180 - centerSlot) {< 360 - centerSlot) { point.tooltipPos = [
1035 < 180 - centerSlot) {< 360 - centerSlot) { (point.plotHighX + point.plotLowX) / 2,
1036 < 180 - centerSlot) {< 360 - centerSlot) { (point.plotHigh + point.plotLow) / 2
1037 < 180 - centerSlot) {< 360 - centerSlot) { ];
1038 < 180 - centerSlot) {< 360 - centerSlot) { });
1039 < 180 - centerSlot) {< 360 - centerSlot) { }
1040 < 180 - centerSlot) {< 360 - centerSlot) { },
1041  
1042 < 180 - centerSlot) {< 360 - centerSlot) { /**
1043 < 180 - centerSlot) {< 360 - centerSlot) { * Extend the line series' getSegmentPath method by applying the segment
1044 < 180 - centerSlot) {< 360 - centerSlot) { * path to both lower and higher values of the range
1045 < 180 - centerSlot) {< 360 - centerSlot) { */
1046 < 180 - centerSlot) {< 360 - centerSlot) { getGraphPath: function(points) {
1047  
1048 < 180 - centerSlot) {< 360 - centerSlot) { var highPoints = [],
1049 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints = [],
1050 < 180 - centerSlot) {< 360 - centerSlot) { i,
1051 < 180 - centerSlot) {< 360 - centerSlot) { getGraphPath = seriesTypes.area.prototype.getGraphPath,
1052 < 180 - centerSlot) {< 360 - centerSlot) { point,
1053 < 180 - centerSlot) {< 360 - centerSlot) { pointShim,
1054 < 180 - centerSlot) {< 360 - centerSlot) { linePath,
1055 < 180 - centerSlot) {< 360 - centerSlot) { lowerPath,
1056 < 180 - centerSlot) {< 360 - centerSlot) { options = this.options,
1057 < 180 - centerSlot) {< 360 - centerSlot) { connectEnds = this.chart.polar && options.connectEnds !== false,
1058 < 180 - centerSlot) {< 360 - centerSlot) { connectNulls = options.connectNulls,
1059 < 180 - centerSlot) {< 360 - centerSlot) { step = options.step,
1060 < 180 - centerSlot) {< 360 - centerSlot) { higherPath,
1061 < 180 - centerSlot) {< 360 - centerSlot) { higherAreaPath;
1062  
1063 < 180 - centerSlot) {< 360 - centerSlot) { points = points || this.points;
1064 < 180 - centerSlot) {< 360 - centerSlot) { i = points.length;
1065  
1066 < 180 - centerSlot) {< 360 - centerSlot) { // Create the top line and the top part of the area fill. The area fill compensates for
1067 < 180 - centerSlot) {< 360 - centerSlot) { // null points by drawing down to the lower graph, moving across the null gap and
1068 < 180 - centerSlot) {< 360 - centerSlot) { // starting again at the lower graph.
1069 < 180 - centerSlot) {< 360 - centerSlot) { i = points.length;
1070 < 180 - centerSlot) {< 360 - centerSlot) { while (i--) {
1071 < 180 - centerSlot) {< 360 - centerSlot) { point = points[i];
1072  
1073 < 180 - centerSlot) {< 360 - centerSlot) { if (!point.isNull &&
1074 < 180 - centerSlot) {< 360 - centerSlot) { !connectEnds &&
1075 < 180 - centerSlot) {< 360 - centerSlot) { !connectNulls &&
1076 < 180 - centerSlot) {< 360 - centerSlot) { (!points[i + 1] || points[i + 1].isNull)
1077 < 180 - centerSlot) {< 360 - centerSlot) { ) {
1078 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints.push({
1079 < 180 - centerSlot) {< 360 - centerSlot) { plotX: point.plotX,
1080 < 180 - centerSlot) {< 360 - centerSlot) { plotY: point.plotY,
1081 < 180 - centerSlot) {< 360 - centerSlot) { doCurve: false // #5186, gaps in areasplinerange fill
1082 < 180 - centerSlot) {< 360 - centerSlot) { });
1083 < 180 - centerSlot) {< 360 - centerSlot) { }
1084  
1085 < 180 - centerSlot) {< 360 - centerSlot) { pointShim = {
1086 < 180 - centerSlot) {< 360 - centerSlot) { polarPlotY: point.polarPlotY,
1087 < 180 - centerSlot) {< 360 - centerSlot) { rectPlotX: point.rectPlotX,
1088 < 180 - centerSlot) {< 360 - centerSlot) { yBottom: point.yBottom,
1089 < 180 - centerSlot) {< 360 - centerSlot) { plotX: pick(point.plotHighX, point.plotX), // plotHighX is for polar charts
1090 < 180 - centerSlot) {< 360 - centerSlot) { plotY: point.plotHigh,
1091 < 180 - centerSlot) {< 360 - centerSlot) { isNull: point.isNull
1092 < 180 - centerSlot) {< 360 - centerSlot) { };
1093  
1094 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints.push(pointShim);
1095  
1096 < 180 - centerSlot) {< 360 - centerSlot) { highPoints.push(pointShim);
1097  
1098 < 180 - centerSlot) {< 360 - centerSlot) { if (!point.isNull &&
1099 < 180 - centerSlot) {< 360 - centerSlot) { !connectEnds &&
1100 < 180 - centerSlot) {< 360 - centerSlot) { !connectNulls &&
1101 < 180 - centerSlot) {< 360 - centerSlot) { (!points[i - 1] || points[i - 1].isNull)
1102 < 180 - centerSlot) {< 360 - centerSlot) { ) {
1103 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints.push({
1104 < 180 - centerSlot) {< 360 - centerSlot) { plotX: point.plotX,
1105 < 180 - centerSlot) {< 360 - centerSlot) { plotY: point.plotY,
1106 < 180 - centerSlot) {< 360 - centerSlot) { doCurve: false // #5186, gaps in areasplinerange fill
1107 < 180 - centerSlot) {< 360 - centerSlot) { });
1108 < 180 - centerSlot) {< 360 - centerSlot) { }
1109 < 180 - centerSlot) {< 360 - centerSlot) { }
1110  
1111 < 180 - centerSlot) {< 360 - centerSlot) { // Get the paths
1112 < 180 - centerSlot) {< 360 - centerSlot) { lowerPath = getGraphPath.call(this, points);
1113 < 180 - centerSlot) {< 360 - centerSlot) { if (step) {
1114 < 180 - centerSlot) {< 360 - centerSlot) { if (step === true) {
1115 < 180 - centerSlot) {< 360 - centerSlot) { step = 'left';
1116 < 180 - centerSlot) {< 360 - centerSlot) { }
1117 < 180 - centerSlot) {< 360 - centerSlot) { options.step = {
1118 < 180 - centerSlot) {< 360 - centerSlot) { left: 'right',
1119 < 180 - centerSlot) {< 360 - centerSlot) { center: 'center',
1120 < 180 - centerSlot) {< 360 - centerSlot) { right: 'left'
1121 < 180 - centerSlot) {< 360 - centerSlot) { }[step]; // swap for reading in getGraphPath
1122 < 180 - centerSlot) {< 360 - centerSlot) { }
1123 < 180 - centerSlot) {< 360 - centerSlot) { higherPath = getGraphPath.call(this, highPoints);
1124 < 180 - centerSlot) {< 360 - centerSlot) { higherAreaPath = getGraphPath.call(this, highAreaPoints);
1125 < 180 - centerSlot) {< 360 - centerSlot) { options.step = step;
1126  
1127 < 180 - centerSlot) {< 360 - centerSlot) { // Create a line on both top and bottom of the range
1128 < 180 - centerSlot) {< 360 - centerSlot) { linePath = [].concat(lowerPath, higherPath);
1129  
1130 < 180 - centerSlot) {< 360 - centerSlot) { // For the area path, we need to change the 'move' statement into 'lineTo' or 'curveTo'
1131 < 180 - centerSlot) {< 360 - centerSlot) { if (!this.chart.polar && higherAreaPath[0] === 'M') {
1132 < 180 - centerSlot) {< 360 - centerSlot) { higherAreaPath[0] = 'L'; // this probably doesn't work for spline
1133 < 180 - centerSlot) {< 360 - centerSlot) { }
1134  
1135 < 180 - centerSlot) {< 360 - centerSlot) { this.graphPath = linePath;
1136 < 180 - centerSlot) {< 360 - centerSlot) { this.areaPath = this.areaPath.concat(lowerPath, higherAreaPath);
1137  
1138 < 180 - centerSlot) {< 360 - centerSlot) { // Prepare for sideways animation
1139 < 180 - centerSlot) {< 360 - centerSlot) { linePath.isArea = true;
1140 < 180 - centerSlot) {< 360 - centerSlot) { linePath.xMap = lowerPath.xMap;
1141 < 180 - centerSlot) {< 360 - centerSlot) { this.areaPath.xMap = lowerPath.xMap;
1142  
1143 < 180 - centerSlot) {< 360 - centerSlot) { return linePath;
1144 < 180 - centerSlot) {< 360 - centerSlot) { },
1145  
1146 < 180 - centerSlot) {< 360 - centerSlot) { /**
1147 < 180 - centerSlot) {< 360 - centerSlot) { * Extend the basic drawDataLabels method by running it for both lower and higher
1148 < 180 - centerSlot) {< 360 - centerSlot) { * values.
1149 < 180 - centerSlot) {< 360 - centerSlot) { */
1150 < 180 - centerSlot) {< 360 - centerSlot) { drawDataLabels: function() {
1151  
1152 < 180 - centerSlot) {< 360 - centerSlot) { var data = this.data,
1153 < 180 - centerSlot) {< 360 - centerSlot) { length = data.length,
1154 < 180 - centerSlot) {< 360 - centerSlot) { i,
1155 < 180 - centerSlot) {< 360 - centerSlot) { originalDataLabels = [],
1156 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions = this.options.dataLabels,
1157 < 180 - centerSlot) {< 360 - centerSlot) { align = dataLabelOptions.align,
1158 < 180 - centerSlot) {< 360 - centerSlot) { verticalAlign = dataLabelOptions.verticalAlign,
1159 < 180 - centerSlot) {< 360 - centerSlot) { inside = dataLabelOptions.inside,
1160 < 180 - centerSlot) {< 360 - centerSlot) { point,
1161 < 180 - centerSlot) {< 360 - centerSlot) { up,
1162 < 180 - centerSlot) {< 360 - centerSlot) { inverted = this.chart.inverted;
1163  
1164 < 180 - centerSlot) {< 360 - centerSlot) { if (dataLabelOptions.enabled || this._hasPointLabels) {
1165  
1166 < 180 - centerSlot) {< 360 - centerSlot) { // Step 1: set preliminary values for plotY and dataLabel and draw the upper labels
1167 < 180 - centerSlot) {< 360 - centerSlot) { i = length;
1168 < 180 - centerSlot) {< 360 - centerSlot) { while (i--) {
1169 < 180 - centerSlot) {< 360 - centerSlot) { point = data[i];
1170 < 180 - centerSlot) {< 360 - centerSlot) { if (point) {
1171 < 180 - centerSlot) {< 360 - centerSlot) { up = inside ? point.plotHigh < point.plotLow : point.plotHigh > point.plotLow;
1172  
1173 < 180 - centerSlot) {< 360 - centerSlot) { // Set preliminary values
1174 < 180 - centerSlot) {< 360 - centerSlot) { point.y = point.high;
1175 < 180 - centerSlot) {< 360 - centerSlot) { point._plotY = point.plotY;
1176 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = point.plotHigh;
1177  
1178 < 180 - centerSlot) {< 360 - centerSlot) { // Store original data labels and set preliminary label objects to be picked up
1179 < 180 - centerSlot) {< 360 - centerSlot) { // in the uber method
1180 < 180 - centerSlot) {< 360 - centerSlot) { originalDataLabels[i] = point.dataLabel;
1181 < 180 - centerSlot) {< 360 - centerSlot) { point.dataLabel = point.dataLabelUpper;
1182  
1183 < 180 - centerSlot) {< 360 - centerSlot) { // Set the default offset
1184 < 180 - centerSlot) {< 360 - centerSlot) { point.below = up;
1185 < 180 - centerSlot) {< 360 - centerSlot) { if (inverted) {
1186 < 180 - centerSlot) {< 360 - centerSlot) { if (!align) {
1187 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.align = up ? 'right' : 'left';
1188 < 180 - centerSlot) {< 360 - centerSlot) { }
1189 < 180 - centerSlot) {< 360 - centerSlot) { } else {
1190 < 180 - centerSlot) {< 360 - centerSlot) { if (!verticalAlign) {
1191 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.verticalAlign = up ? 'top' : 'bottom';
1192 < 180 - centerSlot) {< 360 - centerSlot) { }
1193 < 180 - centerSlot) {< 360 - centerSlot) { }
1194  
1195 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.x = dataLabelOptions.xHigh;
1196 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.y = dataLabelOptions.yHigh;
1197 < 180 - centerSlot) {< 360 - centerSlot) { }
1198 < 180 - centerSlot) {< 360 - centerSlot) { }
1199  
1200 < 180 - centerSlot) {< 360 - centerSlot) { if (seriesProto.drawDataLabels) {
1201 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto.drawDataLabels.apply(this, arguments); // #1209
1202 < 180 - centerSlot) {< 360 - centerSlot) { }
1203  
1204 < 180 - centerSlot) {< 360 - centerSlot) { // Step 2: reorganize and handle data labels for the lower values
1205 < 180 - centerSlot) {< 360 - centerSlot) { i = length;
1206 < 180 - centerSlot) {< 360 - centerSlot) { while (i--) {
1207 < 180 - centerSlot) {< 360 - centerSlot) { point = data[i];
1208 < 180 - centerSlot) {< 360 - centerSlot) { if (point) {
1209 < 180 - centerSlot) {< 360 - centerSlot) { up = inside ? point.plotHigh < point.plotLow : point.plotHigh > point.plotLow;
1210  
1211 < 180 - centerSlot) {< 360 - centerSlot) { // Move the generated labels from step 1, and reassign the original data labels
1212 < 180 - centerSlot) {< 360 - centerSlot) { point.dataLabelUpper = point.dataLabel;
1213 < 180 - centerSlot) {< 360 - centerSlot) { point.dataLabel = originalDataLabels[i];
1214  
1215 < 180 - centerSlot) {< 360 - centerSlot) { // Reset values
1216 < 180 - centerSlot) {< 360 - centerSlot) { point.y = point.low;
1217 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = point._plotY;
1218  
1219 < 180 - centerSlot) {< 360 - centerSlot) { // Set the default offset
1220 < 180 - centerSlot) {< 360 - centerSlot) { point.below = !up;
1221 < 180 - centerSlot) {< 360 - centerSlot) { if (inverted) {
1222 < 180 - centerSlot) {< 360 - centerSlot) { if (!align) {
1223 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.align = up ? 'left' : 'right';
1224 < 180 - centerSlot) {< 360 - centerSlot) { }
1225 < 180 - centerSlot) {< 360 - centerSlot) { } else {
1226 < 180 - centerSlot) {< 360 - centerSlot) { if (!verticalAlign) {
1227 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.verticalAlign = up ? 'bottom' : 'top';
1228 < 180 - centerSlot) {< 360 - centerSlot) { }
1229  
1230 < 180 - centerSlot) {< 360 - centerSlot) { }
1231  
1232 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.x = dataLabelOptions.xLow;
1233 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.y = dataLabelOptions.yLow;
1234 < 180 - centerSlot) {< 360 - centerSlot) { }
1235 < 180 - centerSlot) {< 360 - centerSlot) { }
1236 < 180 - centerSlot) {< 360 - centerSlot) { if (seriesProto.drawDataLabels) {
1237 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto.drawDataLabels.apply(this, arguments);
1238 < 180 - centerSlot) {< 360 - centerSlot) { }
1239 < 180 - centerSlot) {< 360 - centerSlot) { }
1240  
1241 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.align = align;
1242 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.verticalAlign = verticalAlign;
1243 < 180 - centerSlot) {< 360 - centerSlot) { },
1244  
1245 < 180 - centerSlot) {< 360 - centerSlot) { alignDataLabel: function() {
1246 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes.column.prototype.alignDataLabel.apply(this, arguments);
1247 < 180 - centerSlot) {< 360 - centerSlot) { },
1248  
1249 < 180 - centerSlot) {< 360 - centerSlot) { drawPoints: function() {
1250 < 180 - centerSlot) {< 360 - centerSlot) { var series = this,
1251 < 180 - centerSlot) {< 360 - centerSlot) { pointLength = series.points.length,
1252 < 180 - centerSlot) {< 360 - centerSlot) { point,
1253 < 180 - centerSlot) {< 360 - centerSlot) { i;
1254  
1255 < 180 - centerSlot) {< 360 - centerSlot) { // Draw bottom points
1256 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto.drawPoints.apply(series, arguments);
1257  
1258 < 180 - centerSlot) {< 360 - centerSlot) { i = 0;
1259 < 180 - centerSlot) {< 360 - centerSlot) { while (i < pointLength) {
1260 < 180 - centerSlot) {< 360 - centerSlot) { point = series.points[i];
1261 < 180 - centerSlot) {< 360 - centerSlot) { point.lowerGraphic = point.graphic;
1262 < 180 - centerSlot) {< 360 - centerSlot) { point.graphic = point.upperGraphic;
1263 < 180 - centerSlot) {< 360 - centerSlot) { point._plotY = point.plotY;
1264 < 180 - centerSlot) {< 360 - centerSlot) { point._plotX = point.plotX;
1265 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = point.plotHigh;
1266 < 180 - centerSlot) {< 360 - centerSlot) { if (defined(point.plotHighX)) {
1267 < 180 - centerSlot) {< 360 - centerSlot) { point.plotX = point.plotHighX;
1268 < 180 - centerSlot) {< 360 - centerSlot) { }
1269 < 180 - centerSlot) {< 360 - centerSlot) { i++;
1270 < 180 - centerSlot) {< 360 - centerSlot) { }
1271  
1272 < 180 - centerSlot) {< 360 - centerSlot) { // Draw top points
1273 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto.drawPoints.apply(series, arguments);
1274  
1275 < 180 - centerSlot) {< 360 - centerSlot) { i = 0;
1276 < 180 - centerSlot) {< 360 - centerSlot) { while (i < pointLength) {
1277 < 180 - centerSlot) {< 360 - centerSlot) { point = series.points[i];
1278 < 180 - centerSlot) {< 360 - centerSlot) { point.upperGraphic = point.graphic;
1279 < 180 - centerSlot) {< 360 - centerSlot) { point.graphic = point.lowerGraphic;
1280 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = point._plotY;
1281 < 180 - centerSlot) {< 360 - centerSlot) { point.plotX = point._plotX;
1282 < 180 - centerSlot) {< 360 - centerSlot) { i++;
1283 < 180 - centerSlot) {< 360 - centerSlot) { }
1284 < 180 - centerSlot) {< 360 - centerSlot) { },
1285  
1286 < 180 - centerSlot) {< 360 - centerSlot) { setStackedPoints: noop
1287 < 180 - centerSlot) {< 360 - centerSlot) { }, {
1288 < 180 - centerSlot) {< 360 - centerSlot) { setState: function() {
1289 < 180 - centerSlot) {< 360 - centerSlot) { var prevState = this.state,
1290 < 180 - centerSlot) {< 360 - centerSlot) { series = this.series,
1291 < 180 - centerSlot) {< 360 - centerSlot) { isPolar = series.chart.polar;
1292  
1293  
1294 < 180 - centerSlot) {< 360 - centerSlot) { if (!defined(this.plotHigh)) {
1295 < 180 - centerSlot) {< 360 - centerSlot) { // Boost doesn't calculate plotHigh
1296 < 180 - centerSlot) {< 360 - centerSlot) { this.plotHigh = series.yAxis.toPixels(this.high, true);
1297 < 180 - centerSlot) {< 360 - centerSlot) { }
1298  
1299 < 180 - centerSlot) {< 360 - centerSlot) { if (!defined(this.plotLow)) {
1300 < 180 - centerSlot) {< 360 - centerSlot) { // Boost doesn't calculate plotLow
1301 < 180 - centerSlot) {< 360 - centerSlot) { this.plotLow = this.plotY = series.yAxis.toPixels(this.low, true);
1302 < 180 - centerSlot) {< 360 - centerSlot) { }
1303  
1304 < 180 - centerSlot) {< 360 - centerSlot) { // Bottom state:
1305 < 180 - centerSlot) {< 360 - centerSlot) { pointProto.setState.apply(this, arguments);
1306  
1307 < 180 - centerSlot) {< 360 - centerSlot) { // Change state also for the top marker
1308 < 180 - centerSlot) {< 360 - centerSlot) { this.graphic = this.upperGraphic;
1309 < 180 - centerSlot) {< 360 - centerSlot) { this.plotY = this.plotHigh;
1310  
1311 < 180 - centerSlot) {< 360 - centerSlot) { if (isPolar) {
1312 < 180 - centerSlot) {< 360 - centerSlot) { this.plotX = this.plotHighX;
1313 < 180 - centerSlot) {< 360 - centerSlot) { }
1314  
1315 < 180 - centerSlot) {< 360 - centerSlot) { this.state = prevState;
1316  
1317 < 180 - centerSlot) {< 360 - centerSlot) { if (series.stateMarkerGraphic) {
1318 < 180 - centerSlot) {< 360 - centerSlot) { series.lowerStateMarkerGraphic = series.stateMarkerGraphic;
1319 < 180 - centerSlot) {< 360 - centerSlot) { series.stateMarkerGraphic = series.upperStateMarkerGraphic;
1320 < 180 - centerSlot) {< 360 - centerSlot) { }
1321  
1322 < 180 - centerSlot) {< 360 - centerSlot) { pointProto.setState.apply(this, arguments);
1323  
1324 < 180 - centerSlot) {< 360 - centerSlot) { // Now restore defaults
1325 < 180 - centerSlot) {< 360 - centerSlot) { this.plotY = this.plotLow;
1326 < 180 - centerSlot) {< 360 - centerSlot) { this.graphic = this.lowerGraphic;
1327  
1328 < 180 - centerSlot) {< 360 - centerSlot) { if (isPolar) {
1329 < 180 - centerSlot) {< 360 - centerSlot) { this.plotX = this.plotLowX;
1330 < 180 - centerSlot) {< 360 - centerSlot) { }
1331  
1332 < 180 - centerSlot) {< 360 - centerSlot) { if (series.stateMarkerGraphic) {
1333 < 180 - centerSlot) {< 360 - centerSlot) { series.upperStateMarkerGraphic = series.stateMarkerGraphic;
1334 < 180 - centerSlot) {< 360 - centerSlot) { series.stateMarkerGraphic = series.lowerStateMarkerGraphic;
1335 < 180 - centerSlot) {< 360 - centerSlot) { }
1336 < 180 - centerSlot) {< 360 - centerSlot) { },
1337 < 180 - centerSlot) {< 360 - centerSlot) { haloPath: function() {
1338 < 180 - centerSlot) {< 360 - centerSlot) { var isPolar = this.series.chart.polar,
1339 < 180 - centerSlot) {< 360 - centerSlot) { path = [];
1340  
1341 < 180 - centerSlot) {< 360 - centerSlot) { // Bottom halo
1342 < 180 - centerSlot) {< 360 - centerSlot) { this.plotY = this.plotLow;
1343 < 180 - centerSlot) {< 360 - centerSlot) { if (isPolar) {
1344 < 180 - centerSlot) {< 360 - centerSlot) { this.plotX = this.plotLowX;
1345 < 180 - centerSlot) {< 360 - centerSlot) { }
1346  
1347 < 180 - centerSlot) {< 360 - centerSlot) { path = pointProto.haloPath.apply(this, arguments);
1348  
1349 < 180 - centerSlot) {< 360 - centerSlot) { // Top halo
1350 < 180 - centerSlot) {< 360 - centerSlot) { this.plotY = this.plotHigh;
1351 < 180 - centerSlot) {< 360 - centerSlot) { if (isPolar) {
1352 < 180 - centerSlot) {< 360 - centerSlot) { this.plotX = this.plotHighX;
1353 < 180 - centerSlot) {< 360 - centerSlot) { }
1354 < 180 - centerSlot) {< 360 - centerSlot) { path = path.concat(
1355 < 180 - centerSlot) {< 360 - centerSlot) { pointProto.haloPath.apply(this, arguments)
1356 < 180 - centerSlot) {< 360 - centerSlot) { );
1357  
1358 < 180 - centerSlot) {< 360 - centerSlot) { return path;
1359 < 180 - centerSlot) {< 360 - centerSlot) { },
1360 < 180 - centerSlot) {< 360 - centerSlot) { destroy: function() {
1361 < 180 - centerSlot) {< 360 - centerSlot) { if (this.upperGraphic) {
1362 < 180 - centerSlot) {< 360 - centerSlot) { this.upperGraphic = this.upperGraphic.destroy();
1363 < 180 - centerSlot) {< 360 - centerSlot) { }
1364 < 180 - centerSlot) {< 360 - centerSlot) { return pointProto.destroy.apply(this, arguments);
1365 < 180 - centerSlot) {< 360 - centerSlot) { }
1366 < 180 - centerSlot) {< 360 - centerSlot) { });
1367  
1368 < 180 - centerSlot) {< 360 - centerSlot) { }(Highcharts));
1369 < 180 - centerSlot) {< 360 - centerSlot) { (function(H) {
1370 < 180 - centerSlot) {< 360 - centerSlot) { /**
1371 < 180 - centerSlot) {< 360 - centerSlot) { * (c) 2010-2017 Torstein Honsi
1372 < 180 - centerSlot) {< 360 - centerSlot) { *
1373 < 180 - centerSlot) {< 360 - centerSlot) { * License: www.highcharts.com/license
1374 < 180 - centerSlot) {< 360 - centerSlot) { */
1375  
1376 < 180 - centerSlot) {< 360 - centerSlot) { var seriesType = H.seriesType,
1377 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes = H.seriesTypes;
1378  
1379 < 180 - centerSlot) {< 360 - centerSlot) { /**
1380 < 180 - centerSlot) {< 360 - centerSlot) { * The areasplinerange series type
1381 < 180 - centerSlot) {< 360 - centerSlot) { */
1382 < 180 - centerSlot) {< 360 - centerSlot) { seriesType('areasplinerange', 'arearange', null, {
1383 < 180 - centerSlot) {< 360 - centerSlot) { getPointSpline: seriesTypes.spline.prototype.getPointSpline
1384 < 180 - centerSlot) {< 360 - centerSlot) { });
1385  
1386 < 180 - centerSlot) {< 360 - centerSlot) { }(Highcharts));
1387 < 180 - centerSlot) {< 360 - centerSlot) { (function(H) {
1388 < 180 - centerSlot) {< 360 - centerSlot) { /**
1389 < 180 - centerSlot) {< 360 - centerSlot) { * (c) 2010-2017 Torstein Honsi
1390 < 180 - centerSlot) {< 360 - centerSlot) { *
1391 < 180 - centerSlot) {< 360 - centerSlot) { * License: www.highcharts.com/license
1392 < 180 - centerSlot) {< 360 - centerSlot) { */
1393 < 180 - centerSlot) {< 360 - centerSlot) { var defaultPlotOptions = H.defaultPlotOptions,
1394 < 180 - centerSlot) {< 360 - centerSlot) { each = H.each,
1395 < 180 - centerSlot) {< 360 - centerSlot) { merge = H.merge,
1396 < 180 - centerSlot) {< 360 - centerSlot) { noop = H.noop,
1397 < 180 - centerSlot) {< 360 - centerSlot) { pick = H.pick,
1398 < 180 - centerSlot) {< 360 - centerSlot) { seriesType = H.seriesType,
1399 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes = H.seriesTypes;
1400  
1401 < 180 - centerSlot) {< 360 - centerSlot) { var colProto = seriesTypes.column.prototype;
1402 < 180 - centerSlot) {< 360 - centerSlot) { /**
1403 < 180 - centerSlot) {< 360 - centerSlot) { * @extends {plotOptions.arearange}
1404 < 180 - centerSlot) {< 360 - centerSlot) { * @optionparent plotOptions.columrange
1405 < 180 - centerSlot) {< 360 - centerSlot) { */
1406 < 180 - centerSlot) {< 360 - centerSlot) { var columnRangeOptions = {
1407  
1408 < 180 - centerSlot) {< 360 - centerSlot) { /**
1409 < 180 - centerSlot) {< 360 - centerSlot) { */
1410 < 180 - centerSlot) {< 360 - centerSlot) { lineWidth: 1,
1411  
1412 < 180 - centerSlot) {< 360 - centerSlot) { /**
1413 < 180 - centerSlot) {< 360 - centerSlot) { */
1414 < 180 - centerSlot) {< 360 - centerSlot) { pointRange: null,
1415  
1416 < 180 - centerSlot) {< 360 - centerSlot) { /**
1417 < 180 - centerSlot) {< 360 - centerSlot) { */
1418 < 180 - centerSlot) {< 360 - centerSlot) { marker: null,
1419  
1420 < 180 - centerSlot) {< 360 - centerSlot) { /**
1421 < 180 - centerSlot) {< 360 - centerSlot) { */
1422 < 180 - centerSlot) {< 360 - centerSlot) { states: {
1423  
1424 < 180 - centerSlot) {< 360 - centerSlot) { /**
1425 < 180 - centerSlot) {< 360 - centerSlot) { */
1426 < 180 - centerSlot) {< 360 - centerSlot) { hover: {
1427  
1428 < 180 - centerSlot) {< 360 - centerSlot) { /**
1429 < 180 - centerSlot) {< 360 - centerSlot) { */
1430 < 180 - centerSlot) {< 360 - centerSlot) { halo: false
1431 < 180 - centerSlot) {< 360 - centerSlot) { }
1432 < 180 - centerSlot) {< 360 - centerSlot) { }
1433 < 180 - centerSlot) {< 360 - centerSlot) { };
1434 < 180 - centerSlot) {< 360 - centerSlot) { /**
1435 < 180 - centerSlot) {< 360 - centerSlot) { * The ColumnRangeSeries class
1436 < 180 - centerSlot) {< 360 - centerSlot) { */
1437 < 180 - centerSlot) {< 360 - centerSlot) { seriesType('columnrange', 'arearange', merge(
1438 < 180 - centerSlot) {< 360 - centerSlot) { defaultPlotOptions.column,
1439 < 180 - centerSlot) {< 360 - centerSlot) { defaultPlotOptions.arearange,
1440 < 180 - centerSlot) {< 360 - centerSlot) { columnRangeOptions
1441  
1442 < 180 - centerSlot) {< 360 - centerSlot) { ), {
1443 < 180 - centerSlot) {< 360 - centerSlot) { /**
1444 < 180 - centerSlot) {< 360 - centerSlot) { * Translate data points from raw values x and y to plotX and plotY
1445 < 180 - centerSlot) {< 360 - centerSlot) { */
1446 < 180 - centerSlot) {< 360 - centerSlot) { translate: function() {
1447 < 180 - centerSlot) {< 360 - centerSlot) { var series = this,
1448 < 180 - centerSlot) {< 360 - centerSlot) { yAxis = series.yAxis,
1449 < 180 - centerSlot) {< 360 - centerSlot) { xAxis = series.xAxis,
1450 < 180 - centerSlot) {< 360 - centerSlot) { startAngleRad = xAxis.startAngleRad,
1451 < 180 - centerSlot) {< 360 - centerSlot) { start,
1452 < 180 - centerSlot) {< 360 - centerSlot) { chart = series.chart,
1453 < 180 - centerSlot) {< 360 - centerSlot) { isRadial = series.xAxis.isRadial,
1454 < 180 - centerSlot) {< 360 - centerSlot) { safeDistance = Math.max(chart.chartWidth, chart.chartHeight) + 999,
1455 < 180 - centerSlot) {< 360 - centerSlot) { plotHigh;
1456  
1457 < 180 - centerSlot) {< 360 - centerSlot) { // Don't draw too far outside plot area (#6835)
1458 < 180 - centerSlot) {< 360 - centerSlot) { function safeBounds(pixelPos) {
1459 < 180 - centerSlot) {< 360 - centerSlot) { return Math.min(Math.max(-safeDistance,
1460 < 180 - centerSlot) {< 360 - centerSlot) { pixelPos
1461 < 180 - centerSlot) {< 360 - centerSlot) { ), safeDistance);
1462 < 180 - centerSlot) {< 360 - centerSlot) { }
1463  
1464  
1465 < 180 - centerSlot) {< 360 - centerSlot) { colProto.translate.apply(series);
1466  
1467 < 180 - centerSlot) {< 360 - centerSlot) { // Set plotLow and plotHigh
1468 < 180 - centerSlot) {< 360 - centerSlot) { each(series.points, function(point) {
1469 < 180 - centerSlot) {< 360 - centerSlot) { var shapeArgs = point.shapeArgs,
1470 < 180 - centerSlot) {< 360 - centerSlot) { minPointLength = series.options.minPointLength,
1471 < 180 - centerSlot) {< 360 - centerSlot) { heightDifference,
1472 < 180 - centerSlot) {< 360 - centerSlot) { height,
1473 < 180 - centerSlot) {< 360 - centerSlot) { y;
1474  
1475 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHigh = plotHigh = safeBounds(
1476 < 180 - centerSlot) {< 360 - centerSlot) { yAxis.translate(point.high, 0, 1, 0, 1)
1477 < 180 - centerSlot) {< 360 - centerSlot) { );
1478 < 180 - centerSlot) {< 360 - centerSlot) { point.plotLow = safeBounds(point.plotY);
1479  
1480 < 180 - centerSlot) {< 360 - centerSlot) { // adjust shape
1481 < 180 - centerSlot) {< 360 - centerSlot) { y = plotHigh;
1482 < 180 - centerSlot) {< 360 - centerSlot) { height = pick(point.rectPlotY, point.plotY) - plotHigh;
1483  
1484 < 180 - centerSlot) {< 360 - centerSlot) { // Adjust for minPointLength
1485 < 180 - centerSlot) {< 360 - centerSlot) { if (Math.abs(height) < minPointLength) {
1486 < 180 - centerSlot) {< 360 - centerSlot) { heightDifference = (minPointLength - height);
1487 < 180 - centerSlot) {< 360 - centerSlot) { height += heightDifference;
1488 < 180 - centerSlot) {< 360 - centerSlot) { y -= heightDifference / 2;
1489  
1490 < 180 - centerSlot) {< 360 - centerSlot) { // Adjust for negative ranges or reversed Y axis (#1457)
1491 < 180 - centerSlot) {< 360 - centerSlot) { } else if (height < 0) {
1492 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { height *= -1;
1493 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { y -= height;
1494 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1495  
1496 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (isRadial) {
1497  
1498 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { start = point.barX + startAngleRad;
1499 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeType = 'path';
1500 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeArgs = {
1501 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: series.polarArc(y + height, y, start, start + point.pointWidth)
1502 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { };
1503 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else {
1504  
1505 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.height = height;
1506 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.y = y;
1507  
1508 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.tooltipPos = chart.inverted ? [
1509 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis.len + yAxis.pos - chart.plotLeft - y - height / 2,
1510 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { xAxis.len + xAxis.pos - chart.plotTop - shapeArgs.x -
1511 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.width / 2,
1512 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { height
1513 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ] : [
1514 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { xAxis.left - chart.plotLeft + shapeArgs.x +
1515 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.width / 2,
1516 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis.pos - chart.plotTop + y + height / 2,
1517 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { height
1518 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]; // don't inherit from column tooltip position - #3372
1519 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1520 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1521 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1522 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { directTouch: true,
1523 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { trackerGroups: ['group', 'dataLabelsGroup'],
1524 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawGraph: noop,
1525 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { getSymbol: noop,
1526 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCol: colProto.crispCol,
1527 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawPoints: colProto.drawPoints,
1528 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawTracker: colProto.drawTracker,
1529 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { getColumnMetrics: colProto.getColumnMetrics,
1530 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { animate: function() {
1531 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return colProto.animate.apply(this, arguments);
1532 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1533 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { polarArc: function() {
1534 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return colProto.polarArc.apply(this, arguments);
1535 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1536 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointAttribs: colProto.pointAttribs
1537 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1538 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setState: colProto.pointClass.prototype.setState
1539 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1540  
1541 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
1542 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
1543 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1544 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
1545 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1546 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
1547 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1548 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var each = H.each,
1549 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { isNumber = H.isNumber,
1550 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { merge = H.merge,
1551 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noop = H.noop,
1552 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pick = H.pick,
1553 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pInt = H.pInt,
1554 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series = H.Series,
1555 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
1556 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { TrackerMixin = H.TrackerMixin;
1557  
1558  
1559 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1560 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The GaugeSeries class
1561 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @extends {plotOptions.line}
1562 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @optionparent plotOptions.gauge
1563 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1564 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('gauge', 'line', {
1565  
1566 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1567 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Data labels for the gauge. For gauges, the data labels are enabled
1568 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * by default and shown in a bordered box below the point.
1569 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1570 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Object}
1571 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @extends plotOptions.series.dataLabels
1572 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1573 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
1574 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1575 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dataLabels: {
1576  
1577 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1578 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Enable or disable the data labels.
1579 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1580 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Boolean}
1581 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1582 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts highmaps
1583 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1584 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { enabled: true,
1585  
1586 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1587 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1588 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { defer: false,
1589  
1590 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1591 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The y position offset of the label relative to the center of the
1592 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * gauge.
1593 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1594 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Number}
1595 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default 15
1596 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1597 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts highmaps
1598 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1599 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { y: 15,
1600  
1601 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1602 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The border radius in pixels for the gauge's data label.
1603 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1604 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Number}
1605 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default 3
1606 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1607 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts highmaps
1608 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1609 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { borderRadius: 3,
1610  
1611 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1612 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1613 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crop: false,
1614  
1615 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1616 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The vertical alignment of the data label.
1617 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1618 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {String}
1619 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default top
1620 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts highmaps
1621 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1622 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { verticalAlign: 'top',
1623  
1624 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1625 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The Z index of the data labels. A value of 2 display them behind
1626 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * the dial.
1627 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1628 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Number}
1629 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default 2
1630 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.1.5
1631 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts highmaps
1632 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1633 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { zIndex: 2
1634  
1635 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1636  
1637 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1638 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Options for the dial or arrow pointer of the gauge.
1639 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1640 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
1641 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * style/style-by-css), the dial is styled with the `.highcharts-gauge-
1642 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * series .highcharts-dial` rule.
1643 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1644 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Object}
1645 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @sample {highcharts} highcharts/css/gauge/ Styled mode
1646 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1647 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
1648 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1649 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dial: {
1650 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // radius: '80%',
1651 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // baseWidth: 3,
1652 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // topWidth: 1,
1653 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // baseLength: '70%' // of radius
1654 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // rearLength: '10%'
1655  
1656  
1657 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1658  
1659 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1660 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Options for the pivot or the center point of the gauge.
1661 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1662 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
1663 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * style/style-by-css), the pivot is styled with the `.highcharts-gauge-
1664 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * series .highcharts-pivot` rule.
1665 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1666 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Object}
1667 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @sample {highcharts} highcharts/css/gauge/ Styled mode
1668 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1669 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
1670 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1671 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivot: {
1672 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //radius: 5
1673  
1674 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1675  
1676 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1677 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1678 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltip: {
1679  
1680 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1681 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1682 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { headerFormat: ''
1683 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1684  
1685 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1686 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Whether to display this particular series or series type in the
1687 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * legend. Defaults to false for gauge series.
1688 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1689 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Boolean}
1690 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 2.3.0
1691 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
1692 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1693 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { showInLegend: false
1694  
1695 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Prototype members
1696 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1697 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // chart.angular will be set to true when a gauge series is present, and this will
1698 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // be used on the axes
1699 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { angular: true,
1700 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { directTouch: true, // #5063
1701 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawGraph: noop,
1702 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { fixedBox: true,
1703 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { forceDL: true,
1704 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noSharedTooltip: true,
1705 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { trackerGroups: ['group', 'dataLabelsGroup'],
1706  
1707 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1708 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Calculate paths etc
1709 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1710 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translate: function() {
1711  
1712 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1713 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis = series.yAxis,
1714 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1715 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { center = yAxis.center;
1716  
1717 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.generatePoints();
1718  
1719 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1720  
1721 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var dialOptions = merge(options.dial, point.dial),
1722 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { radius = (pInt(pick(dialOptions.radius, 80)) * center[2]) / 200,
1723 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseLength = (pInt(pick(dialOptions.baseLength, 70)) * radius) / 100,
1724 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rearLength = (pInt(pick(dialOptions.rearLength, 10)) * radius) / 100,
1725 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseWidth = dialOptions.baseWidth || 3,
1726 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { topWidth = dialOptions.topWidth || 1,
1727 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { overshoot = options.overshoot,
1728 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = yAxis.startAngleRad + yAxis.translate(point.y, null, null, null, true);
1729  
1730 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Handle the wrap and overshoot options
1731 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (isNumber(overshoot)) {
1732 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { overshoot = overshoot / 180 * Math.PI;
1733 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = Math.max(yAxis.startAngleRad - overshoot, Math.min(yAxis.endAngleRad + overshoot, rotation));
1734  
1735 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else if (options.wrap === false) {
1736 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = Math.max(yAxis.startAngleRad, Math.min(yAxis.endAngleRad, rotation));
1737 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1738  
1739 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = rotation * 180 / Math.PI;
1740  
1741 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeType = 'path';
1742 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeArgs = {
1743 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: dialOptions.path || [
1744 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M', -rearLength, -baseWidth / 2,
1745 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1746 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseLength, -baseWidth / 2,
1747 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { radius, -topWidth / 2,
1748 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { radius, topWidth / 2,
1749 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseLength, baseWidth / 2, -rearLength, baseWidth / 2,
1750 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'z'
1751 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ],
1752 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateX: center[0],
1753 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateY: center[1],
1754 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: rotation
1755 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { };
1756  
1757 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Positions for data label
1758 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.plotX = center[0];
1759 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.plotY = center[1];
1760 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1761 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1762  
1763 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1764 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Draw the points where each point is one needle
1765 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1766 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawPoints: function() {
1767  
1768 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1769 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { center = series.yAxis.center,
1770 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivot = series.pivot,
1771 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1772 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivotOptions = options.pivot,
1773 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { renderer = series.chart.renderer;
1774  
1775 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1776  
1777 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var graphic = point.graphic,
1778 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs = point.shapeArgs,
1779 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d = shapeArgs.d,
1780 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dialOptions = merge(options.dial, point.dial); // #1233
1781  
1782 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (graphic) {
1783 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { graphic.animate(shapeArgs);
1784 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.d = d; // animate alters it
1785 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else {
1786 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.graphic = renderer[point.shapeType](shapeArgs)
1787 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .attr({
1788 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: shapeArgs.rotation, // required by VML when animation is false
1789 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { zIndex: 1
1790 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { })
1791 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-dial')
1792 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(series.group);
1793  
1794  
1795 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1796 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1797  
1798 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Add or move the pivot
1799 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (pivot) {
1800 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivot.animate({ // #1235
1801 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateX: center[0],
1802 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateY: center[1]
1803 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1804 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else {
1805 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.pivot = renderer.circle(0, 0, pick(pivotOptions.radius, 5))
1806 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .attr({
1807 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { zIndex: 2
1808 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { })
1809 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-pivot')
1810 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .translate(center[0], center[1])
1811 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(series.group);
1812  
1813  
1814 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1815 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1816  
1817 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1818 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Animate the arrow up from startAngle
1819 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1820 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { animate: function(init) {
1821 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this;
1822  
1823 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (!init) {
1824 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1825 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var graphic = point.graphic;
1826  
1827 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (graphic) {
1828 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // start value
1829 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { graphic.attr({
1830 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: series.yAxis.startAngleRad * 180 / Math.PI
1831 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1832  
1833 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // animate
1834 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { graphic.animate({
1835 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: point.shapeArgs.rotation
1836 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, series.options.animation);
1837 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1838 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1839  
1840 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // delete this function to allow it only once
1841 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.animate = null;
1842 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1843 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1844  
1845 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { render: function() {
1846 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.group = this.plotGroup(
1847 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'group',
1848 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'series',
1849 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.visible ? 'visible' : 'hidden',
1850 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.options.zIndex,
1851 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.chart.seriesGroup
1852 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { );
1853 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series.prototype.render.call(this);
1854 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.group.clip(this.chart.clipRect);
1855 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1856  
1857 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1858 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Extend the basic setData method by running processData and generatePoints immediately,
1859 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * in order to access the points from the legend.
1860 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1861 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setData: function(data, redraw) {
1862 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series.prototype.setData.call(this, data, false);
1863 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.processData();
1864 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.generatePoints();
1865 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (pick(redraw, true)) {
1866 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.chart.redraw();
1867 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1868 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1869  
1870 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1871 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * If the tracking module is loaded, add the point tracker
1872 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1873 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawTracker: TrackerMixin && TrackerMixin.drawTrackerPoint
1874  
1875 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Point members
1876 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1877 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1878 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Don't do any hover colors or anything
1879 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1880 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setState: function(state) {
1881 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.state = state;
1882 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1883 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1884  
1885 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
1886 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
1887 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1888 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
1889 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1890 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
1891 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1892 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var each = H.each,
1893 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noop = H.noop,
1894 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pick = H.pick,
1895 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
1896 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes = H.seriesTypes;
1897  
1898 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1899 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The boxplot series type.
1900 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1901 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @constructor seriesTypes.boxplot
1902 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @augments seriesTypes.column
1903 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1904  
1905 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1906 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @extends {plotOptions.column}
1907 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @optionparent plotOptions.boxplot
1908 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1909 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('boxplot', 'column', {
1910  
1911 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1912 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1913 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { threshold: null,
1914  
1915 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1916 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1917 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltip: {
1918  
1919 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointFormat: '<span class="highcharts-color-{point.colorIndex}">\u25CF</span> <b> {series.name}</b><br/>' +
1920 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Maximum: {point.high}<br/>' +
1921 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Upper quartile: {point.q3}<br/>' +
1922 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Median: {point.median}<br/>' +
1923 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Lower quartile: {point.q1}<br/>' +
1924 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Minimum: {point.low}<br/>'
1925  
1926 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1927  
1928 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1929 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The length of the whiskers, the horizontal lines marking low and
1930 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * high values. It can be a numerical pixel value, or a percentage
1931 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * value of the box width. Set `0` to disable whiskers.
1932 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1933 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Number|String}
1934 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @sample {highcharts} highcharts/plotoptions/box-plot-styling/ True by default
1935 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default 50%
1936 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 3.0
1937 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
1938 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1939 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerLength: '50%'
1940  
1941  
1942 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, /** @lends seriesTypes.boxplot */ {
1943 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointArrayMap: ['low', 'q1', 'median', 'q3', 'high'], // array point configs are mapped to this
1944 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { toYData: function(point) { // return a plain array for speedy calculation
1945 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return [point.low, point.q1, point.median, point.q3, point.high];
1946 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1947 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointValKey: 'high', // defines the top of the tracker
1948  
1949  
1950  
1951 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1952 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Disable data labels for box plot
1953 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1954 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawDataLabels: noop,
1955  
1956 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1957 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Translate data points from raw values x and y to plotX and plotY
1958 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1959 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translate: function() {
1960 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1961 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis = series.yAxis,
1962 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointArrayMap = series.pointArrayMap;
1963  
1964 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.column.prototype.translate.apply(series);
1965  
1966 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // do the translation on each point dimension
1967 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1968 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(pointArrayMap, function(key) {
1969 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (point[key] !== null) {
1970 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point[key + 'Plot'] = yAxis.translate(point[key], 0, 1, 0, 1);
1971 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1972 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1973 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1974 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1975  
1976 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1977 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Draw the data points
1978 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1979 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawPoints: function() {
1980 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this, //state = series.state,
1981 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { points = series.points,
1982 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1983 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { chart = series.chart,
1984 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { renderer = chart.renderer,
1985 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q1Plot,
1986 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q3Plot,
1987 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot,
1988 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot,
1989 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot,
1990 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPath,
1991 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr,
1992 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX = 0,
1993 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { boxPath,
1994 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { width,
1995 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left,
1996 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right,
1997 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { halfWidth,
1998 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { doQuartiles = series.doQuartiles !== false, // error bar inherits this series type but doesn't do quartiles
1999 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointWiskerLength,
2000 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerLength = series.options.whiskerLength;
2001  
2002  
2003 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(points, function(point) {
2004  
2005 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var graphic = point.graphic,
2006 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { verb = graphic ? 'animate' : 'attr',
2007 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs = point.shapeArgs; // the box
2008  
2009  
2010  
2011 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (point.plotY !== undefined) {
2012  
2013 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // crisp vector coordinates
2014 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { width = shapeArgs.width;
2015 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left = Math.floor(shapeArgs.x);
2016 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right = left + width;
2017 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { halfWidth = Math.round(width / 2);
2018 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q1Plot = Math.floor(doQuartiles ? point.q1Plot : point.lowPlot);
2019 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q3Plot = Math.floor(doQuartiles ? point.q3Plot : point.lowPlot);
2020 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot = Math.floor(point.highPlot);
2021 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot = Math.floor(point.lowPlot);
2022  
2023 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (!graphic) {
2024 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.graphic = graphic = renderer.g('point')
2025 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(series.group);
2026  
2027 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.stem = renderer.path()
2028 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-stem')
2029 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
2030  
2031 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (whiskerLength) {
2032 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.whiskers = renderer.path()
2033 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-whisker')
2034 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
2035 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2036 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (doQuartiles) {
2037 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.box = renderer.path(boxPath)
2038 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-box')
2039 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
2040 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2041 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.medianShape = renderer.path(medianPath)
2042 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-median')
2043 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
2044 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2045  
2046  
2047  
2048  
2049  
2050  
2051  
2052  
2053 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The stem
2054 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.stem.strokeWidth() % 2) / 2;
2055 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX = left + halfWidth + crispCorr;
2056 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.stem[verb]({
2057 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
2058 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // stem up
2059 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
2060 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, q3Plot,
2061 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2062 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, highPlot,
2063  
2064 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // stem down
2065 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
2066 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, q1Plot,
2067 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2068 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, lowPlot
2069 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
2070 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2071  
2072 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The box
2073 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (doQuartiles) {
2074 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.box.strokeWidth() % 2) / 2;
2075 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q1Plot = Math.floor(q1Plot) + crispCorr;
2076 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q3Plot = Math.floor(q3Plot) + crispCorr;
2077 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left += crispCorr;
2078 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right += crispCorr;
2079 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.box[verb]({
2080 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
2081 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
2082 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left, q3Plot,
2083 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2084 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left, q1Plot,
2085 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2086 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right, q1Plot,
2087 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2088 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right, q3Plot,
2089 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2090 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left, q3Plot,
2091 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'z'
2092 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
2093 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2094 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2095  
2096 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The whiskers
2097 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (whiskerLength) {
2098 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.whiskers.strokeWidth() % 2) / 2;
2099 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot = highPlot + crispCorr;
2100 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot = lowPlot + crispCorr;
2101 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointWiskerLength = (/%$/).test(whiskerLength) ? halfWidth * parseFloat(whiskerLength) / 100 : whiskerLength / 2;
2102 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.whiskers[verb]({
2103 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
2104 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // High whisker
2105 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
2106 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX - pointWiskerLength,
2107 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot,
2108 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2109 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX + pointWiskerLength,
2110 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot,
2111  
2112 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Low whisker
2113 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
2114 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX - pointWiskerLength,
2115 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot,
2116 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2117 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX + pointWiskerLength,
2118 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot
2119 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
2120 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2121 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2122  
2123 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The median
2124 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot = Math.round(point.medianPlot);
2125 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.medianShape.strokeWidth() % 2) / 2;
2126 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot = medianPlot + crispCorr;
2127  
2128 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.medianShape[verb]({
2129 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
2130 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
2131 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left,
2132 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot,
2133 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
2134 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right,
2135 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot
2136 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
2137 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2138 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2139 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2140  
2141 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
2142 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setStackedPoints: noop // #3890
2143  
2144  
2145 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2146  
2147 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
2148 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * End Box plot series code *
2149 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
2150  
2151 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
2152 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
2153 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2154 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
2155 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
2156 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
2157 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2158 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var each = H.each,
2159 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noop = H.noop,
2160 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
2161 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes = H.seriesTypes;
2162  
2163  
2164 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
2165 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Start error bar series code *
2166 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
2167  
2168 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2169 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @extends {plotOptions.boxplot}
2170 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @optionparent plotOptions.errorbar
2171 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2172 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('errorbar', 'boxplot', {
2173  
2174  
2175 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2176 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2177 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { grouping: false,
2178  
2179 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2180 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The parent series of the error bar. The default value links it to
2181 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * the previous series. Otherwise, use the id of the parent series.
2182 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
2183 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {String}
2184 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default :previous
2185 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 3.0
2186 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
2187 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2188 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { linkedTo: ':previous',
2189  
2190 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2191 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2192 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltip: {
2193  
2194 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2195 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2196 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'
2197 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
2198  
2199 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2200 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The line width of the whiskers, the horizontal lines marking low
2201 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * and high values. When `null`, the general [lineWidth](#plotOptions.
2202 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * errorbar.lineWidth) applies.
2203 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
2204 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @type {Number}
2205 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @sample {highcharts} highcharts/plotoptions/error-bar-styling/ Error bar styling
2206 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @default null
2207 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @since 3.0
2208 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @product highcharts
2209 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2210 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerWidth: null
2211  
2212 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Prototype members
2213 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
2214 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { type: 'errorbar',
2215 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointArrayMap: ['low', 'high'], // array point configs are mapped to this
2216 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { toYData: function(point) { // return a plain array for speedy calculation
2217 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return [point.low, point.high];
2218 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
2219 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointValKey: 'high', // defines the top of the tracker
2220 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { doQuartiles: false,
2221 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawDataLabels: seriesTypes.arearange ? function() {
2222 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var valKey = this.pointValKey;
2223 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.arearange.prototype.drawDataLabels.call(this);
2224 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Arearange drawDataLabels does not reset point.y to high, but to low after drawing. #4133
2225 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(this.data, function(point) {
2226 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.y = point[valKey];
2227 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2228 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } : noop,
2229  
2230 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2231 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Get the width and X offset, either on top of the linked series column
2232 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * or standalone
2233 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2234 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { getColumnMetrics: function() {
2235 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return (this.linkedParent && this.linkedParent.columnMetrics) ||
2236 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.column.prototype.getColumnMetrics.call(this);
2237 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
2238 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
2239  
2240 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
2241 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * End error bar series code *
2242 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
2243  
2244 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
2245 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
2246 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2247 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
2248 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
2249 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
2250 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2251 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var correctFloat = H.correctFloat,
2252 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { isNumber = H.isNumber,
2253 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pick = H.pick,
2254 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Point = H.Point,
2255 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series = H.Series,
2256 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
2257 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes = H.seriesTypes;
2258  
2259 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
2260 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Start Waterfall series code *
2261 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
2262 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2263 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @extends {plotOptions.column}
2264 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @optionparent plotOptions.waterfall
2265 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2266 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('waterfall', 'column', {
2267  
2268 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2269 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2270 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dataLabels: {
2271  
2272 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2273 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2274 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { inside: true
2275 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
2276  
2277  
2278 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Prototype members
2279 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
2280 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointValKey: 'y',
2281  
2282 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
2283 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Translate data points from raw values
2284 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
2285 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translate: function() {
2286 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
2287 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
2288 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis = series.yAxis,
2289 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { len,
2290 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { i,
2291 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { points,
2292 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point,
2293 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs,
2294 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stack,
2295 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { y,
2296 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yValue,
2297 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { previousY,
2298 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { previousIntermediate,
2299 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { range,
2300 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { minPointLength = pick(options.minPointLength, 5),
2301 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { halfMinPointLength = minPointLength / 2,
2302 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { threshold = options.threshold,
2303 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stacking = options.stacking,
2304 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stackIndicator,
2305 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltipY;
2306  
2307 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // run column series translate
2308 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.column.prototype.translate.apply(series);
2309  
2310 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { previousY = previousIntermediate = threshold;
2311 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { points = series.points;
2312  
2313 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { for (i = 0, len = points.length; i < len; i++) {
2314 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { // cache current point object
2315 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { point = points[i];
2316 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { yValue = series.processedYData[i];
2317 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { shapeArgs = point.shapeArgs;
2318  
2319 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { // get current stack
2320 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { stack = stacking && yAxis.stacks[(series.negStacks && yValue < threshold ? '-' : '') + series.stackKey];
2321 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; stackIndicator = series.getStackIndicator(
2322 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; stackIndicator,
2323 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; point.x,
2324 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; series.index
2325 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; );
2326 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; range = stack ?
2327 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; stack[point.x].points[stackIndicator.key] : [0, yValue];
2328  
2329 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // override point value for sums
2330 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // #3710 Update point does not propagate to sum
2331 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; if (point.isSum) {
2332 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; point.y = correctFloat(yValue);
2333 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; } else if (point.isIntermediateSum) {
2334 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; point.y = correctFloat(yValue - previousIntermediate); // #3840
2335 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; }
2336 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // up points
2337 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; y = Math.max(previousY, previousY + point.y) + range[0];
2338 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y = yAxis.translate(y, 0, 1, 0, 1);
2339  
2340 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // sum points
2341 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; if (point.isSum) {
2342 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y = yAxis.translate(range[1], 0, 1, 0, 1);
2343 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.height = Math.min(yAxis.translate(range[0], 0, 1, 0, 1), yAxis.len) -
2344 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y; // #4256
2345  
2346 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; } else if (point.isIntermediateSum) {
2347 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y = yAxis.translate(range[1], 0, 1, 0, 1);
2348 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.height = Math.min(yAxis.translate(previousIntermediate, 0, 1, 0, 1), yAxis.len) -
2349 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y;
2350 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; previousIntermediate = range[1];
2351  
2352 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // If it's not the sum point, update previous stack end position and get
2353 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // shape height (#3886)
2354 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; } else {
2355 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.height = yValue > 0 ?
2356 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; yAxis.translate(previousY, 0, 1, 0, 1) - shapeArgs.y :
2357 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; yAxis.translate(previousY, 0, 1, 0, 1) - yAxis.translate(previousY - yValue, 0, 1, 0, 1);
2358  
2359 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; previousY += stack && stack[point.x] ? stack[point.x].total : yValue;
2360 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; }
2361  
2362 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // #3952 Negative sum or intermediate sum not rendered correctly
2363 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; if (shapeArgs.height < 0) {
2364 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.y += shapeArgs.height;
2365 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.height *= -1;
2366 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2367  
2368 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.plotY = shapeArgs.y = Math.round(shapeArgs.y) - (series.borderWidth % 2) / 2;
2369 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.height = Math.max(Math.round(shapeArgs.height), 0.001); // #3151
2370 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.yBottom = shapeArgs.y + shapeArgs.height;
2371  
2372 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (shapeArgs.height <= minPointLength && !point.isNull) {
2373 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.height = minPointLength;
2374 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.y -= halfMinPointLength;
2375 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.plotY = shapeArgs.y;
2376 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (point.y < 0) {
2377 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.minPointLengthOffset = -halfMinPointLength;
2378 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2379 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.minPointLengthOffset = halfMinPointLength;
2380 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2381 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2382 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.minPointLengthOffset = 0;
2383 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2384  
2385 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // Correct tooltip placement (#3014)
2386 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { tooltipY = point.plotY + (point.negative ? shapeArgs.height : 0);
2387  
2388 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (series.chart.inverted) {
2389 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.tooltipPos[0] = yAxis.len - tooltipY;
2390 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2391 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.tooltipPos[1] = tooltipY;
2392 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2393 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2394 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2395  
2396 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2397 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Call default processData then override yData to reflect waterfall's extremes on yAxis
2398 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2399 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { processData: function(force) {
2400 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { var series = this,
2401 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { options = series.options,
2402 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { yData = series.yData,
2403 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { points = series.options.data, // #3710 Update point does not propagate to sum
2404 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point,
2405 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataLength = yData.length,
2406 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { threshold = options.threshold || 0,
2407 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { subSum,
2408 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { sum,
2409 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMin,
2410 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMax,
2411 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { y,
2412 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { i;
2413  
2414 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { sum = subSum = dataMin = dataMax = threshold;
2415  
2416 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { for (i = 0; i < dataLength; i++) {
2417 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { y = yData[i];
2418 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point = points && points[i] ? points[i] : {};
2419  
2420 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (y === 'sum' || point.isSum) {
2421 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { yData[i] = correctFloat(sum);
2422 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else if (y === 'intermediateSum' || point.isIntermediateSum) {
2423 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { yData[i] = correctFloat(subSum);
2424 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2425 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { sum += y;
2426 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { subSum += y;
2427 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2428 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMin = Math.min(sum, dataMin);
2429 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMax = Math.max(sum, dataMax);
2430 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2431  
2432 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { Series.prototype.processData.call(this, force);
2433  
2434 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // Record extremes only if stacking was not set:
2435 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (!series.options.stacking) {
2436 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { series.dataMin = dataMin;
2437 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { series.dataMax = dataMax;
2438 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2439 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2440  
2441 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2442 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Return y value or string if point is sum
2443 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2444 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { toYData: function(pt) {
2445 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (pt.isSum) {
2446 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return (pt.x === 0 ? null : 'sum'); //#3245 Error when first element is Sum or Intermediate Sum
2447 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2448 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (pt.isIntermediateSum) {
2449 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return (pt.x === 0 ? null : 'intermediateSum'); //#3245
2450 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2451 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return pt.y;
2452 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2453  
2454  
2455  
2456 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2457 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Return an empty path initially, because we need to know the stroke-width in order
2458 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * to set the final path.
2459 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2460 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { getGraphPath: function() {
2461 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return ['M', 0, 0];
2462 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2463  
2464 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2465 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Draw columns' connector lines
2466 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2467 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { getCrispPath: function() {
2468  
2469 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { var data = this.data,
2470 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { length = data.length,
2471 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { lineWidth = this.graph.strokeWidth() + this.borderWidth,
2472 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { normalizer = Math.round(lineWidth) % 2 / 2,
2473 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { reversedYAxis = this.yAxis.reversed,
2474 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { path = [],
2475 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { prevArgs,
2476 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { pointArgs,
2477 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { i,
2478 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { d;
2479  
2480 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { for (i = 1; i < length; i++) {
2481 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { pointArgs = data[i].shapeArgs;
2482 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs = data[i - 1].shapeArgs;
2483  
2484 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { d = [
2485 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { 'M',
2486 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs.x + prevArgs.width,
2487 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs.y + data[i - 1].minPointLengthOffset + normalizer,
2488 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { 'L',
2489 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { pointArgs.x,
2490 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs.y + data[i - 1].minPointLengthOffset + normalizer
2491 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { ];
2492  
2493 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { if (
2494 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { (data[i - 1].y < 0 && !reversedYAxis) ||
2495 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || (data[i - 1].y > 0 && reversedYAxis)
2496 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || ) {
2497 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || d[2] += prevArgs.height;
2498 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || d[5] += prevArgs.height;
2499 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || }
2500  
2501 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || path = path.concat(d);
2502 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || }
2503  
2504 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || return path;
2505 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || },
2506  
2507 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || /**
2508 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || * The graph is initally drawn with an empty definition, then updated with
2509 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || * crisp rendering.
2510 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || */
2511 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || drawGraph: function() {
2512 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || Series.prototype.drawGraph.call(this);
2513 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || this.graph.attr({
2514 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || d: this.getCrispPath()
2515 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || });
2516 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || },
2517  
2518 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || /**
2519 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || * Waterfall has stacking along the x-values too.
2520 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || */
2521 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || setStackedPoints: function() {
2522 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || var series = this,
2523 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || options = series.options,
2524 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || stackedYLength,
2525 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || i;
2526  
2527 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || Series.prototype.setStackedPoints.apply(series, arguments);
2528  
2529 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || stackedYLength = series.stackedYData ? series.stackedYData.length : 0;
2530  
2531 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || // Start from the second point:
2532 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || for (i = 1; i < stackedYLength; i++) {
2533 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (!options.data[i].isSum &&
2534 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { !options.data[i].isIntermediateSum
2535 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ) {
2536 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Sum previous stacked data as waterfall can grow up/down:
2537 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { series.stackedYData[i] += series.stackedYData[i - 1];
2538 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2539 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2540 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2541  
2542 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2543 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Extremes for a non-stacked series are recorded in processData.
2544 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * In case of stacking, use Series.stackedYData to calculate extremes.
2545 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2546 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getExtremes: function() {
2547 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (this.options.stacking) {
2548 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return Series.prototype.getExtremes.apply(this, arguments);
2549 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2550 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2551  
2552  
2553 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Point members
2554 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2555 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getClassName: function() {
2556 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var className = Point.prototype.getClassName.call(this);
2557  
2558 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (this.isSum) {
2559 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { className += ' highcharts-sum';
2560 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else if (this.isIntermediateSum) {
2561 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { className += ' highcharts-intermediate-sum';
2562 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2563 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return className;
2564 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2565 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2566 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Pass the null test in ColumnSeries.translate.
2567 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2568 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isValid: function() {
2569 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return isNumber(this.y, true) || this.isSum || this.isIntermediateSum;
2570 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2571  
2572 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2573  
2574 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /* ****************************************************************************
2575 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * End Waterfall series code *
2576 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *****************************************************************************/
2577  
2578 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }(Highcharts));
2579 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { (function(H) {
2580 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2581 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * (c) 2010-2017 Torstein Honsi
2582 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2583 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * License: www.highcharts.com/license
2584 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2585 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var LegendSymbolMixin = H.LegendSymbolMixin,
2586 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { noop = H.noop,
2587 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Series = H.Series,
2588 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType = H.seriesType,
2589 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes = H.seriesTypes;
2590 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2591 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * The polygon series prototype
2592 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2593  
2594 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2595 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @extends {plotOptions.scatter}
2596 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @optionsparent plotOptions.polygon
2597 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2598 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType('polygon', 'scatter', {
2599 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { marker: {
2600 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { enabled: false,
2601 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { states: {
2602 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { hover: {
2603 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { enabled: false
2604 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2605 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2606 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2607 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { stickyTracking: false,
2608 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { tooltip: {
2609 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { followPointer: true,
2610 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointFormat: ''
2611 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2612 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { trackByArea: true
2613  
2614 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Prototype members
2615 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2616 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { type: 'polygon',
2617 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getGraphPath: function() {
2618  
2619 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var graphPath = Series.prototype.getGraphPath.call(this),
2620 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i = graphPath.length + 1;
2621  
2622 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Close all segments
2623 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { while (i--) {
2624 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if ((i === graphPath.length || graphPath[i] === 'M') && i > 0) {
2625 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { graphPath.splice(i, 0, 'z');
2626 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2627 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2628 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.areaPath = graphPath;
2629 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return graphPath;
2630 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2631 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { drawGraph: function() {
2632  
2633 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes.area.prototype.drawGraph.call(this);
2634 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2635 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { drawLegendSymbol: LegendSymbolMixin.drawRectangle,
2636 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { drawTracker: Series.prototype.drawTracker,
2637 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { setStackedPoints: noop // No stacking points on polygons (#5310)
2638 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2639  
2640 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }(Highcharts));
2641 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { (function(H) {
2642 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2643 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * (c) 2010-2017 Torstein Honsi
2644 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2645 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * License: www.highcharts.com/license
2646 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2647 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var arrayMax = H.arrayMax,
2648 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { arrayMin = H.arrayMin,
2649 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Axis = H.Axis,
2650 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { color = H.color,
2651 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each = H.each,
2652 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isNumber = H.isNumber,
2653 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { noop = H.noop,
2654 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pick = H.pick,
2655 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pInt = H.pInt,
2656 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Point = H.Point,
2657 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Series = H.Series,
2658 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType = H.seriesType,
2659 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes = H.seriesTypes;
2660  
2661 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /* ****************************************************************************
2662 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Start Bubble series code *
2663 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *****************************************************************************/
2664  
2665  
2666 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2667 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @extends plotOptions.scatter
2668 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @optionparent plotOptions.bubble
2669 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2670 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType('bubble', 'scatter', {
2671  
2672 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2673 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2674 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dataLabels: {
2675  
2676 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2677 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2678 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { formatter: function() { // #2945
2679 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return this.point.z;
2680 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2681  
2682 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2683 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2684 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { inside: true,
2685  
2686 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2687 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2688 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { verticalAlign: 'middle'
2689 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2690 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // displayNegative: true,
2691  
2692 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2693 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Options for the point markers of line-like series. Properties like
2694 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * `fillColor`, `lineColor` and `lineWidth` define the visual appearance
2695 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * of the markers. Other series types, like column series, don't have
2696 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * markers, but have visual options on the series level instead.
2697 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2698 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2699 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * style/style-by-css), the markers can be styled with the `.highcharts-
2700 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * point`, `.highcharts-point-hover` and `.highcharts-point-select`
2701 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * class names.
2702 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2703 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @type {Object}
2704 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @extends plotOptions.series.marker
2705 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @excluding radius
2706 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @product highcharts
2707 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2708 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { marker: {
2709  
2710 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Avoid offset in Point.setState
2711  
2712 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2713 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2714 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius: null,
2715  
2716 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2717 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2718 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { states: {
2719  
2720 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2721 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2722 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { hover: {
2723  
2724 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2725 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2726 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radiusPlus: 0
2727 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2728 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2729  
2730 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2731 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * A predefined shape or symbol for the marker. Possible values are
2732 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * "circle", "square", "diamond", "triangle" and "triangle-down".
2733 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2734 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Additionally, the URL to a graphic can be given on the form `url(graphic.
2735 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * png)`. Note that for the image to be applied to exported charts,
2736 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * its URL needs to be accessible by the export server.
2737 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2738 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Custom callbacks for symbol path generation can also be added to
2739 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then
2740 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * used by its method name, as shown in the demo.
2741 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2742 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @validvalue ["circle", "square", "diamond", "triangle", "triangle-down"]
2743 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @type {String}
2744 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @sample {highcharts} highcharts/plotoptions/bubble-symbol/ Bubble chart with various symbols
2745 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @sample {highcharts} highcharts/plotoptions/series-marker-symbol/ General chart with predefined, graphic and custom markers
2746 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @default circle
2747 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @since 5.0.11
2748 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @product highcharts
2749 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2750 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { symbol: 'circle'
2751 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2752  
2753 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2754 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Minimum bubble size. Bubbles will automatically size between the
2755 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * `minSize` and `maxSize` to reflect the `z` value of each bubble.
2756 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Can be either pixels (when no unit is given), or a percentage of
2757 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * the smallest one of the plot width and height.
2758 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2759 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @type {String}
2760 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @sample {highcharts} highcharts/plotoptions/bubble-size/ Bubble size
2761 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @default 8
2762 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @since 3.0
2763 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @product highcharts
2764 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2765 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { minSize: 8,
2766  
2767 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2768 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Maximum bubble size. Bubbles will automatically size between the
2769 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * `minSize` and `maxSize` to reflect the `z` value of each bubble.
2770 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Can be either pixels (when no unit is given), or a percentage of
2771 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * the smallest one of the plot width and height.
2772 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2773 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @type {String}
2774 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @sample {highcharts} highcharts/plotoptions/bubble-size/ Bubble size
2775 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @default 20%
2776 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @since 3.0
2777 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @product highcharts
2778 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2779 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { maxSize: '20%',
2780 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // negativeColor: null,
2781 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // sizeBy: 'area'
2782  
2783 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2784 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * When this is true, the series will not cause the Y axis to cross
2785 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * the zero plane (or [threshold](#plotOptions.series.threshold) option)
2786 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * unless the data actually crosses the plane.
2787 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2788 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * For example, if `softThreshold` is `false`, a series of 0, 1, 2,
2789 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * 3 will make the Y axis show negative values according to the `minPadding`
2790 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * option. If `softThreshold` is `true`, the Y axis starts at 0.
2791 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2792 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @type {Boolean}
2793 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @default false
2794 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @since 4.1.9
2795 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @product highcharts
2796 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2797 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { softThreshold: false,
2798  
2799 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2800 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2801 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { states: {
2802  
2803 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2804 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2805 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { hover: {
2806  
2807 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2808 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2809 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { halo: {
2810  
2811 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2812 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2813 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { size: 5
2814 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2815 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2816 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2817  
2818 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2819 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2820 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { tooltip: {
2821  
2822 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2823 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2824 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointFormat: '({point.x}, {point.y}), Size: {point.z}'
2825 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2826  
2827 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2828 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2829 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { turboThreshold: 0,
2830  
2831 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2832 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * When [displayNegative](#plotOptions.bubble.displayNegative) is `false`,
2833 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * bubbles with lower Z values are skipped. When `displayNegative`
2834 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * is `true` and a [negativeColor](#plotOptions.bubble.negativeColor)
2835 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * is given, points with lower Z is colored.
2836 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2837 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @type {Number}
2838 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @sample {highcharts} highcharts/plotoptions/bubble-negative/ Negative bubbles
2839 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @default 0
2840 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @since 3.0
2841 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @product highcharts
2842 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2843 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zThreshold: 0,
2844  
2845 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2846 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2847 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zoneAxis: 'z'
2848  
2849 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Prototype members
2850 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2851 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointArrayMap: ['y', 'z'],
2852 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { parallelArrays: ['x', 'y', 'z'],
2853 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { trackerGroups: ['group', 'dataLabelsGroup'],
2854 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { specialGroup: 'group', // To allow clipping (#6296)
2855 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { bubblePadding: true,
2856 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zoneAxis: 'z',
2857 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { directTouch: true,
2858  
2859  
2860  
2861 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2862 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Get the radius for each point based on the minSize, maxSize and each point's Z value. This
2863 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * must be done prior to Series.translate because the axis needs to add padding in
2864 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * accordance with the point sizes.
2865 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2866 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getRadii: function(zMin, zMax, minSize, maxSize) {
2867 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var len,
2868 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i,
2869 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pos,
2870 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zData = this.zData,
2871 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radii = [],
2872 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { options = this.options,
2873 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { sizeByArea = options.sizeBy !== 'width',
2874 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zThreshold = options.zThreshold,
2875 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zRange = zMax - zMin,
2876 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { value,
2877 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius;
2878  
2879 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Set the shape type and arguments to be picked up in drawPoints
2880 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { for (i = 0, len = zData.length; i < len; i++) {
2881  
2882 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { value = zData[i];
2883  
2884 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // When sizing by threshold, the absolute value of z determines the size
2885 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // of the bubble.
2886 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (options.sizeByAbsoluteValue && value !== null) {
2887 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { value = Math.abs(value - zThreshold);
2888 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMax = Math.max(zMax - zThreshold, Math.abs(zMin - zThreshold));
2889 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin = 0;
2890 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2891  
2892 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (value === null) {
2893 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = null;
2894 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Issue #4419 - if value is less than zMin, push a radius that's always smaller than the minimum size
2895 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else if (value < zMin) {
2896 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = minSize / 2 - 1;
2897 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else {
2898 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Relative size, a number between 0 and 1
2899 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pos = zRange > 0 ? (value - zMin) / zRange : 0.5;
2900  
2901 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (sizeByArea && pos >= 0) {
2902 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pos = Math.sqrt(pos);
2903 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2904 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = Math.ceil(minSize + pos * (maxSize - minSize)) / 2;
2905 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2906 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radii.push(radius);
2907 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2908 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.radii = radii;
2909 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2910  
2911 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2912 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Perform animation on the bubbles
2913 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2914 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { animate: function(init) {
2915 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var animation = this.options.animation;
2916  
2917 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (!init) { // run the animation
2918 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(this.points, function(point) {
2919 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var graphic = point.graphic,
2920 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { animationTarget;
2921  
2922 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (graphic && graphic.width) { // URL symbols don't have width
2923 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { animationTarget = {
2924 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { x: graphic.x,
2925 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { y: graphic.y,
2926 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: graphic.width,
2927 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: graphic.height
2928 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
2929  
2930 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Start values
2931 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { graphic.attr({
2932 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { x: point.plotX,
2933 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { y: point.plotY,
2934 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: 1,
2935 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: 1
2936 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2937  
2938 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Run animation
2939 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { graphic.animate(animationTarget, animation);
2940 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2941 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2942  
2943 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // delete this function to allow it only once
2944 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.animate = null;
2945 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2946 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2947  
2948 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2949 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Extend the base translate method to handle bubble size
2950 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2951 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { translate: function() {
2952  
2953 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var i,
2954 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { data = this.data,
2955 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point,
2956 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius,
2957 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radii = this.radii;
2958  
2959 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Run the parent method
2960 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes.scatter.prototype.translate.call(this);
2961  
2962 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Set the shape type and arguments to be picked up in drawPoints
2963 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i = data.length;
2964  
2965 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { while (i--) {
2966 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point = data[i];
2967 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = radii ? radii[i] : 0; // #1737
2968  
2969 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (isNumber(radius) && radius >= this.minPxSize / 2) {
2970 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Shape arguments
2971 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point.marker = H.extend(point.marker, {
2972 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius: radius,
2973 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: 2 * radius,
2974 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: 2 * radius
2975 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2976  
2977 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Alignment box for the data label
2978 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point.dlBox = {
2979 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { x: point.plotX - radius,
2980 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { y: point.plotY - radius,
2981 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: 2 * radius,
2982 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: 2 * radius
2983 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
2984 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else { // below zThreshold
2985 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point.shapeArgs = point.plotY = point.dlBox = undefined; // #1691
2986 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2987 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2988 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2989  
2990 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { alignDataLabel: seriesTypes.column.prototype.alignDataLabel,
2991 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { buildKDTree: noop,
2992 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { applyZones: noop
2993  
2994 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Point class
2995 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2996 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { haloPath: function(size) {
2997 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return Point.prototype.haloPath.call(
2998 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this,
2999 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { size === 0 ? 0 : (this.marker ? this.marker.radius || 0 : 0) + size // #6067
3000 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { );
3001 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
3002 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ttBelow: false
3003 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
3004  
3005 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
3006 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Add logic to pad each axis with the amount of pixels
3007 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * necessary to avoid the bubbles to overflow.
3008 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
3009 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Axis.prototype.beforePadding = function() {
3010 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var axis = this,
3011 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { axisLength = this.len,
3012 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { chart = this.chart,
3013 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMin = 0,
3014 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMax = axisLength,
3015 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isXAxis = this.isXAxis,
3016 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dataKey = isXAxis ? 'xData' : 'yData',
3017 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { min = this.min,
3018 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { extremes = {},
3019 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { smallestSize = Math.min(chart.plotWidth, chart.plotHeight),
3020 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin = Number.MAX_VALUE,
3021 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMax = -Number.MAX_VALUE,
3022 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { range = this.max - min,
3023 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { transA = axisLength / range,
3024 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { activeSeries = [];
3025  
3026 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Handle padding on the second pass, or on redraw
3027 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(this.series, function(series) {
3028  
3029 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var seriesOptions = series.options,
3030 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zData;
3031  
3032 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (series.bubblePadding && (series.visible || !chart.options.chart.ignoreHiddenSeries)) {
3033  
3034 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Correction for #1673
3035 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { axis.allowZoomOutside = true;
3036  
3037 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Cache it
3038 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { activeSeries.push(series);
3039  
3040 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (isXAxis) { // because X axis is evaluated first
3041  
3042 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // For each series, translate the size extremes to pixel values
3043 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(['minSize', 'maxSize'], function(prop) {
3044 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var length = seriesOptions[prop],
3045 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isPercent = /%$/.test(length);
3046  
3047 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { length = pInt(length);
3048 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { extremes[prop] = isPercent ?
3049 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { smallestSize * length / 100 :
3050 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { length;
3051  
3052 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
3053 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { series.minPxSize = extremes.minSize;
3054 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Prioritize min size if conflict to make sure bubbles are
3055 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // always visible. #5873
3056 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { series.maxPxSize = Math.max(extremes.maxSize, extremes.minSize);
3057  
3058 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Find the min and max Z
3059 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zData = series.zData;
3060 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (zData.length) { // #1735
3061 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin = pick(seriesOptions.zMin, Math.min(
3062 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin,
3063 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Math.max(
3064 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { arrayMin(zData),
3065 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesOptions.displayNegative === false ? seriesOptions.zThreshold : -Number.MAX_VALUE
3066 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { )
3067 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ));
3068 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMax = pick(seriesOptions.zMax, Math.max(zMax, arrayMax(zData)));
3069 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3070 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3071 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3072 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
3073  
3074 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(activeSeries, function(series) {
3075  
3076 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var data = series[dataKey],
3077 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i = data.length,
3078 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius;
3079  
3080 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (isXAxis) {
3081 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { series.getRadii(zMin, zMax, series.minPxSize, series.maxPxSize);
3082 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3083  
3084 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (range > 0) {
3085 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { while (i--) {
3086 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (isNumber(data[i]) && axis.dataMin <= data[i] && data[i] <= axis.dataMax) {
3087 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = series.radii[i];
3088 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMin = Math.min(((data[i] - min) * transA) - radius, pxMin);
3089 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMax = Math.max(((data[i] - min) * transA) + radius, pxMax);
3090 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3091 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3092 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3093 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
3094  
3095 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (activeSeries.length && range > 0 && !this.isLog) {
3096 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMax -= axisLength;
3097 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { transA *= (axisLength + pxMin - pxMax) / axisLength;
3098 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each([
3099 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ['min', 'userMin', pxMin],
3100 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ['max', 'userMax', pxMax]
3101 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ], function(keys) {
3102 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (pick(axis.options[keys[0]], axis[keys[1]]) === undefined) {
3103 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { axis[keys[0]] += keys[2] / transA;
3104 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3105 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
3106 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
3107 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
3108  
3109 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /* ****************************************************************************
3110 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * End Bubble series code *
3111 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *****************************************************************************/
3112  
3113 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }(Highcharts));
3114 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { (function(H) {
3115 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
3116 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * (c) 2010-2017 Torstein Honsi
3117 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
3118 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * License: www.highcharts.com/license
3119 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
3120  
3121 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
3122 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Extensions for polar charts. Additionally, much of the geometry required for polar charts is
3123 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * gathered in RadialAxes.js.
3124 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
3125 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
3126  
3127 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var each = H.each,
3128 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pick = H.pick,
3129 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Pointer = H.Pointer,
3130 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Series = H.Series,
3131 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes = H.seriesTypes,
3132 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { wrap = H.wrap,
3133  
3134 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesProto = Series.prototype,
3135 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointerProto = Pointer.prototype,
3136 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { colProto;
3137  
3138 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
3139 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Search a k-d tree by the point angle, used for shared tooltips in polar charts
3140 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
3141 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesProto.searchPointByAngle = function(e) {
3142 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var series = this,
3143 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { chart = series.chart,
3144 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { xAxis = series.xAxis,
3145 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { center = xAxis.pane.center,
3146 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotX = e.chartX - center[0] - chart.plotLeft,
3147 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotY = e.chartY - center[1] - chart.plotTop;
3148  
3149 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return this.searchKDTree({
3150 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { clientX: 180 + (Math.atan2(plotX, plotY) * (-180 / Math.PI))
3151 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
3152  
3153 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
3154  
3155 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
3156 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * #6212 Calculate connectors for spline series in polar chart.
3157 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * @param {Boolean} calculateNeighbours - Check if connectors should be calculated for neighbour points as well
3158 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * allows short recurence
3159 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
3160 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesProto.getConnectors = function(segment, index, calculateNeighbours, connectEnds) {
3161  
3162 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var i,
3163 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { prevPointInd,
3164 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextPointInd,
3165 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { previousPoint,
3166 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextPoint,
3167 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { previousX,
3168 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { previousY,
3169 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextX,
3170 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextY,
3171 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotX,
3172 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotY,
3173 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ret,
3174 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { smoothing = 1.5, // 1 means control points midway between points, 2 means 1/3 from the point, 3 is 1/4 etc;
3175 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { denom = smoothing + 1,
3176 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { leftContX,
3177 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { leftContY,
3178 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { rightContX,
3179 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { rightContY,
3180 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dLControlPoint, //distance left control point
3181 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dRControlPoint,
3182 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { leftContAngle,
3183 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { rightContAngle,
3184 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { jointAngle,
3185 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { addedNumber = connectEnds ? 1 : 0;
3186  
3187 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /** calculate final index of points depending on the initial index value.
3188 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Because of calculating neighbours, index may be outisde segment array.
3189 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
3190 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (index >= 0 && index <= segment.length - 1) {
3191 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) { i = index;
3192 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) { } else if (index < 0) {
3193 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { i = segment.length - 1 + index;
3194 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { } else {
3195 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { i = 0;
3196 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { }
3197  
3198 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { prevPointInd = (i - 1 < 0) ? segment.length - (1 + addedNumber) : i - 1;
3199 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; nextPointInd = (i + 1 > segment.length - 1) ? addedNumber : i + 1;
3200 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; previousPoint = segment[prevPointInd];
3201 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; nextPoint = segment[nextPointInd];
3202 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; previousX = previousPoint.plotX;
3203 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; previousY = previousPoint.plotY;
3204 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; nextX = nextPoint.plotX;
3205 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; nextY = nextPoint.plotY;
3206 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; plotX = segment[i].plotX; // actual point
3207 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; plotY = segment[i].plotY;
3208 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContX = (smoothing * plotX + previousX) / denom;
3209 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContY = (smoothing * plotY + previousY) / denom;
3210 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContX = (smoothing * plotX + nextX) / denom;
3211 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContY = (smoothing * plotY + nextY) / denom;
3212 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; dLControlPoint = Math.sqrt(Math.pow(leftContX - plotX, 2) + Math.pow(leftContY - plotY, 2));
3213 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; dRControlPoint = Math.sqrt(Math.pow(rightContX - plotX, 2) + Math.pow(rightContY - plotY, 2));
3214 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContAngle = Math.atan2(leftContY - plotY, leftContX - plotX);
3215 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContAngle = Math.atan2(rightContY - plotY, rightContX - plotX);
3216 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; jointAngle = (Math.PI / 2) + ((leftContAngle + rightContAngle) / 2);
3217 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // Ensure the right direction, jointAngle should be in the same quadrant as leftContAngle
3218 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; if (Math.abs(leftContAngle - jointAngle) > Math.PI / 2) {
3219 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; jointAngle -= Math.PI;
3220 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
3221 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // Find the corrected control points for a spline straight through the point
3222 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContX = plotX + Math.cos(jointAngle) * dLControlPoint;
3223 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContY = plotY + Math.sin(jointAngle) * dLControlPoint;
3224 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContX = plotX + Math.cos(Math.PI + jointAngle) * dRControlPoint;
3225 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContY = plotY + Math.sin(Math.PI + jointAngle) * dRControlPoint;
3226  
3227 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // push current point's connectors into returned object
3228  
3229 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; ret = {
3230 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContX: rightContX,
3231 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; rightContY: rightContY,
3232 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContX: leftContX,
3233 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; leftContY: leftContY,
3234 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; plotX: plotX,
3235 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; plotY: plotY
3236 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; };
3237  
3238 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // calculate connectors for previous and next point and push them inside returned object
3239 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; if (calculateNeighbours) {
3240 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; ret.prevPointCont = this.getConnectors(segment, prevPointInd, false, connectEnds);
3241 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
3242 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; return ret;
3243 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; };
3244  
3245 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; /**
3246 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; * Wrap the buildKDTree function so that it searches by angle (clientX) in case of shared tooltip,
3247 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; * and by two dimensional distance in case of non-shared.
3248 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; */
3249 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; wrap(seriesProto, 'buildKDTree', function(proceed) {
3250 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; if (this.chart.polar) {
3251 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; if (this.kdByAngle) {
3252 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; this.searchPoint = this.searchPointByAngle;
3253 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; } else {
3254 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; this.options.findNearestPointBy = 'xy';
3255 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
3256 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
3257 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; proceed.apply(this);
3258 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; });
3259  
3260 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; /**
3261 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; * Translate a point's plotX and plotY from the internal angle and radius measures to
3262 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; * true plotX, plotY coordinates
3263 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; */
3264 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; seriesProto.toXY = function(point) {
3265 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; var xy,
3266 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; chart = this.chart,
3267 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; plotX = point.plotX,
3268 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; plotY = point.plotY,
3269 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; clientX;
3270  
3271 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // Save rectangular plotX, plotY for later computation
3272 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; point.rectPlotX = plotX;
3273 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; point.rectPlotY = plotY;
3274  
3275 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // Find the polar plotX and plotY
3276 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; xy = this.xAxis.postTranslate(point.plotX, this.yAxis.len - plotY);
3277 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; point.plotX = point.polarPlotX = xy.x - chart.plotLeft;
3278 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; point.plotY = point.polarPlotY = xy.y - chart.plotTop;
3279  
3280 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // If shared tooltip, record the angle in degrees in order to align X points. Otherwise,
3281 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; // use a standard k-d tree to get the nearest point in two dimensions.
3282 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; if (this.kdByAngle) {
3283 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; clientX = ((plotX / Math.PI * 180) + this.xAxis.pane.options.startAngle) % 360;
3284 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; if (clientX < 0) { // #2665
3285 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / clientX += 360;
3286 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3287 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / point.clientX = clientX;
3288 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / } else {
3289 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / point.clientX = point.plotX;
3290 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3291 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / };
3292  
3293 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (seriesTypes.spline) {
3294 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / /**
3295 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / * Overridden method for calculating a spline from one point to the next
3296 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / */
3297 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / wrap(seriesTypes.spline.prototype, 'getPointSpline', function(proceed, segment, point, i) {
3298 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / var ret,
3299 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors;
3300  
3301 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (this.chart.polar) {
3302 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // moveTo or lineTo
3303 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (!i) {
3304 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / ret = ['M', point.plotX, point.plotY];
3305 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / } else { // curve from last point to this
3306 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors = this.getConnectors(segment, i, true, this.connectEnds);
3307 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / ret = [
3308 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / 'C',
3309 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors.prevPointCont.rightContX,
3310 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors.prevPointCont.rightContY,
3311 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors.leftContX,
3312 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors.leftContY,
3313 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors.plotX,
3314 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / connectors.plotY
3315 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / ];
3316 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3317 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / } else {
3318 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / ret = proceed.call(this, segment, point, i);
3319 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3320 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / return ret;
3321 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / });
3322  
3323 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // #6430 Areasplinerange series use unwrapped getPointSpline method, so we need to set this method again.
3324 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (seriesTypes.areasplinerange) {
3325 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / seriesTypes.areasplinerange.prototype.getPointSpline = seriesTypes.spline.prototype.getPointSpline;
3326 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3327 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3328  
3329 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / /**
3330 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / * Extend translate. The plotX and plotY values are computed as if the polar chart were a
3331 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / * cartesian plane, where plotX denotes the angle in radians and (yAxis.len - plotY) is the pixel distance from
3332 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / * center.
3333 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / */
3334 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / wrap(seriesProto, 'translate', function(proceed) {
3335 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / var chart = this.chart,
3336 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / points,
3337 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / i;
3338  
3339 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // Run uber method
3340 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / proceed.call(this);
3341  
3342 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // Postprocess plot coordinates
3343 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (chart.polar) {
3344 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / this.kdByAngle = chart.tooltip && chart.tooltip.shared;
3345  
3346 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (!this.preventPostTranslate) {
3347 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / points = this.points;
3348 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / i = points.length;
3349  
3350 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / while (i--) {
3351 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // Translate plotX, plotY from angle and radius to true plot coordinates
3352 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / this.toXY(points[i]);
3353 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3354 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3355 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
3356 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / });
3357  
3358 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / /**
3359 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / * Extend getSegmentPath to allow connecting ends across 0 to provide a closed circle in
3360 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / * line-like series.
3361 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / */
3362 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / wrap(seriesProto, 'getGraphPath', function(proceed, points) {
3363 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / var series = this,
3364 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / i,
3365 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / firstValid,
3366 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / popLastPoint;
3367  
3368 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // Connect the path
3369 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / if (this.chart.polar) {
3370 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / points = points || this.points;
3371  
3372 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / // Append first valid point in order to connect the ends
3373 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / for (i = 0; i < points.length; i++) {
3374 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (!points[i].isNull) {
3375 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { firstValid = i;
3376 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { break;
3377 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3378 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3379  
3380  
3381 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { /**
3382 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * Polar charts only. Whether to connect the ends of a line series plot
3383 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * across the extremes.
3384 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { *
3385 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * @type {Boolean}
3386 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * @sample {highcharts} highcharts/plotoptions/line-connectends-false/
3387 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * Do not connect
3388 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * @since 2.3.0
3389 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * @product highcharts
3390 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * @apioption plotOptions.series.connectEnds
3391 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { */
3392 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (this.options.connectEnds !== false && firstValid !== undefined) {
3393 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { this.connectEnds = true; // re-used in splines
3394 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { points.splice(points.length, 0, points[firstValid]);
3395 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { popLastPoint = true;
3396 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3397  
3398 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // For area charts, pseudo points are added to the graph, now we need to translate these
3399 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { each(points, function(point) {
3400 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (point.polarPlotY === undefined) {
3401 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { series.toXY(point);
3402 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3403 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { });
3404 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3405  
3406 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Run uber method
3407 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { var ret = proceed.apply(this, [].slice.call(arguments, 1));
3408  
3409 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { /** #6212 points.splice method is adding points to an array. In case of areaspline getGraphPath method is used two times
3410 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * and in both times points are added to an array. That is why points.pop is used, to get unmodified points.
3411 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { */
3412 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (popLastPoint) {
3413 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { points.pop();
3414 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3415 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { return ret;
3416 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { });
3417  
3418  
3419 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { function polarAnimate(proceed, init) {
3420 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { var chart = this.chart,
3421 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { animation = this.options.animation,
3422 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { group = this.group,
3423 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { markerGroup = this.markerGroup,
3424 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { center = this.xAxis.center,
3425 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { plotLeft = chart.plotLeft,
3426 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { plotTop = chart.plotTop,
3427 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { attribs;
3428  
3429 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Specific animation for polar charts
3430 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (chart.polar) {
3431  
3432 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Enable animation on polar charts only in SVG. In VML, the scaling is different, plus animation
3433 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // would be so slow it would't matter.
3434 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (chart.renderer.isSVG) {
3435  
3436 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (animation === true) {
3437 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { animation = {};
3438 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3439  
3440 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Initialize the animation
3441 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (init) {
3442  
3443 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Scale down the group and place it in the center
3444 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { attribs = {
3445 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { translateX: center[0] + plotLeft,
3446 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { translateY: center[1] + plotTop,
3447 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { scaleX: 0.001, // #1499
3448 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { scaleY: 0.001
3449 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { };
3450  
3451 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { group.attr(attribs);
3452 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (markerGroup) {
3453 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { //markerGroup.attrSetters = group.attrSetters;
3454 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { markerGroup.attr(attribs);
3455 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3456  
3457 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Run the animation
3458 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { } else {
3459 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { attribs = {
3460 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { translateX: plotLeft,
3461 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { translateY: plotTop,
3462 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { scaleX: 1,
3463 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { scaleY: 1
3464 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { };
3465 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { group.animate(attribs, animation);
3466 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (markerGroup) {
3467 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { markerGroup.animate(attribs, animation);
3468 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3469  
3470 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Delete this function to allow it only once
3471 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { this.animate = null;
3472 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3473 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3474  
3475 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // For non-polar charts, revert to the basic animation
3476 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { } else {
3477 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { proceed.call(this, init);
3478 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3479 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3480  
3481 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Define the animate method for regular series
3482 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { wrap(seriesProto, 'animate', polarAnimate);
3483  
3484  
3485 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (seriesTypes.column) {
3486  
3487 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { colProto = seriesTypes.column.prototype;
3488  
3489 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { colProto.polarArc = function(low, high, start, end) {
3490 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { var center = this.xAxis.center,
3491 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { len = this.yAxis.len;
3492  
3493 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { return this.chart.renderer.symbols.arc(
3494 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { center[0],
3495 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { center[1],
3496 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { len - high,
3497 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { null, {
3498 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { start: start,
3499 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { end: end,
3500 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { innerR: len - pick(low, len)
3501 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3502 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { );
3503 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { };
3504  
3505 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { /**
3506 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * Define the animate method for columnseries
3507 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { */
3508 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { wrap(colProto, 'animate', polarAnimate);
3509  
3510  
3511 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { /**
3512 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * Extend the column prototype's translate method
3513 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { */
3514 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { wrap(colProto, 'translate', function(proceed) {
3515  
3516 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { var xAxis = this.xAxis,
3517 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { startAngleRad = xAxis.startAngleRad,
3518 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { start,
3519 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { points,
3520 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { point,
3521 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { i;
3522  
3523 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { this.preventPostTranslate = true;
3524  
3525 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Run uber method
3526 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { proceed.call(this);
3527  
3528 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Postprocess plot coordinates
3529 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (xAxis.isRadial) {
3530 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { points = this.points;
3531 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { i = points.length;
3532 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { while (i--) {
3533 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { point = points[i];
3534 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { start = point.barX + startAngleRad;
3535 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { point.shapeType = 'path';
3536 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { point.shapeArgs = {
3537 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { d: this.polarArc(point.yBottom, point.plotY, start, start + point.pointWidth)
3538 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { };
3539 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Provide correct plotX, plotY for tooltip
3540 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { this.toXY(point);
3541 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { point.tooltipPos = [point.plotX, point.plotY];
3542 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { point.ttBelow = point.plotY > xAxis.center[1];
3543 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3544 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { }
3545 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { });
3546  
3547  
3548 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { /**
3549 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { * Align column data labels outside the columns. #1199.
3550 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { */
3551 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { wrap(colProto, 'alignDataLabel', function(proceed, point, dataLabel, options, alignTo, isNew) {
3552  
3553 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (this.chart.polar) {
3554 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { var angle = point.rectPlotX / Math.PI * 180,
3555 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { align,
3556 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { verticalAlign;
3557  
3558 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { // Align nicely outside the perimeter of the columns
3559 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (options.align === null) {
3560 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) { if (angle > 20 && angle < 160) {
3561 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) { align = 'left'; // right hemisphere
3562 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) { } else if (angle > 200 && angle < 340) {
3563 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { align = 'right'; // left hemisphere
3564 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { } else {
3565 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { align = 'center'; // top or bottom
3566 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { }
3567 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { options.align = align;
3568 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { }
3569 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { if (options.verticalAlign === null) {
3570 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) { if (angle < 45 || angle > 315) {
3571 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle > verticalAlign = 'bottom'; // top part
3572 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle > } else if (angle > 135 && angle < 225) {
3573 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { verticalAlign = 'top'; // bottom part
3574 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { } else {
3575 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { verticalAlign = 'middle'; // left or right
3576 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }
3577 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { options.verticalAlign = verticalAlign;
3578 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }
3579  
3580 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { seriesProto.alignDataLabel.call(this, point, dataLabel, options, alignTo, isNew);
3581 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { } else {
3582 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { proceed.call(this, point, dataLabel, options, alignTo, isNew);
3583 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }
3584  
3585 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3586 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }
3587  
3588 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { /**
3589 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { * Extend getCoordinates to prepare for polar axis values
3590 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { */
3591 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { wrap(pointerProto, 'getCoordinates', function(proceed, e) {
3592 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { var chart = this.chart,
3593 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { ret = {
3594 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { xAxis: [],
3595 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { yAxis: []
3596 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { };
3597  
3598 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { if (chart.polar) {
3599  
3600 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { each(chart.axes, function(axis) {
3601 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { var isXAxis = axis.isXAxis,
3602 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { center = axis.center,
3603 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { x = e.chartX - center[0] - chart.plotLeft,
3604 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { y = e.chartY - center[1] - chart.plotTop;
3605  
3606 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { ret[isXAxis ? 'xAxis' : 'yAxis'].push({
3607 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { axis: axis,
3608 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { value: axis.translate(
3609 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { isXAxis ?
3610 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { Math.PI - Math.atan2(x, y) : // angle
3611 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)), // distance from center
3612 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { true
3613 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { )
3614 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3615 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3616  
3617 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { } else {
3618 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { ret = proceed.call(this, e);
3619 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }
3620  
3621 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { return ret;
3622 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3623  
3624 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { wrap(H.Chart.prototype, 'getAxes', function(proceed) {
3625  
3626 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { if (!this.pane) {
3627 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { this.pane = [];
3628 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }
3629 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { each(H.splat(this.options.pane), function(paneOptions) {
3630 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { new H.Pane( // eslint-disable-line no-new
3631 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { paneOptions,
3632 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { this
3633 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { );
3634 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }, this);
3635  
3636 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { proceed.call(this);
3637 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3638  
3639 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { wrap(H.Chart.prototype, 'drawChartBox', function(proceed) {
3640 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { proceed.call(this);
3641  
3642 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { each(this.pane, function(pane) {
3643 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { pane.render();
3644 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3645 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3646  
3647 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { /**
3648 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { * Extend chart.get to also search in panes. Used internally in responsiveness
3649 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { * and chart.update.
3650 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { */
3651 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { wrap(H.Chart.prototype, 'get', function(proceed, id) {
3652 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { return H.find(this.pane, function(pane) {
3653 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { return pane.options.id === id;
3654 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }) || proceed.call(this, id);
3655 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { });
3656  
3657 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) { }(Highcharts));
3658 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { /< points.length; i++) {< 160) {< 340) {< 45 || angle >< 225) {}));