corrade-nucleus-nucleons – Blame information for rev 20

Subversion Repositories:
Rev:
Rev Author Line No. Line
20 office 1 /**
2 * @license Highcharts JS v5.0.12 (2017-05-24)
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 'fill': backgroundOptions.backgroundColor,
136 'stroke': backgroundOptions.borderColor,
137 'stroke-width': backgroundOptions.borderWidth,
138  
139 'class': 'highcharts-pane ' + (backgroundOptions.className || '')
140 });
141  
142 },
143  
144 /**
145 * The default options object
146 */
147 defaultOptions: {
148 // background: {conditional},
149 center: ['50%', '50%'],
150 size: '85%',
151 startAngle: 0
152 //endAngle: startAngle + 360
153 },
154  
155 /**
156 * The default background options
157 */
158 defaultBackgroundOptions: {
159 //className: 'highcharts-pane',
160 shape: 'circle',
161  
162 borderWidth: 1,
163 borderColor: '#cccccc',
164 backgroundColor: {
165 linearGradient: {
166 x1: 0,
167 y1: 0,
168 x2: 0,
169 y2: 1
170 },
171 stops: [
172 [0, '#ffffff'],
173 [1, '#e6e6e6']
174 ]
175 },
176  
177 from: -Number.MAX_VALUE, // corrected to axis min
178 innerRadius: 0,
179 to: Number.MAX_VALUE, // corrected to axis max
180 outerRadius: '105%'
181 },
182  
183 /**
184 * Gets the center for the pane and its axis.
185 */
186 updateCenter: function(axis) {
187 this.center = (axis || this.axis || {}).center =
188 CenteredSeriesMixin.getCenter.call(this);
189 },
190  
191 /**
192 * Destroy the pane item
193 * /
194 destroy: function () {
195 H.erase(this.chart.pane, this);
196 each(this.background, function (background) {
197 background.destroy();
198 });
199 this.background.length = 0;
200 this.group = this.group.destroy();
201 },
202 */
203  
204 /**
205 * Update the pane item with new options
206 * @param {Object} options New pane options
207 */
208 update: function(options, redraw) {
209  
210 merge(true, this.options, options);
211 this.setOptions(this.options);
212 this.render();
213 each(this.chart.axes, function(axis) {
214 if (axis.pane === this) {
215 axis.pane = null;
216 axis.update({}, redraw);
217 }
218 }, this);
219 }
220  
221 });
222  
223 H.Pane = Pane;
224  
225 }(Highcharts));
226 (function(H) {
227 /**
228 * (c) 2010-2017 Torstein Honsi
229 *
230 * License: www.highcharts.com/license
231 */
232 var Axis = H.Axis,
233 each = H.each,
234 extend = H.extend,
235 map = H.map,
236 merge = H.merge,
237 noop = H.noop,
238 pick = H.pick,
239 pInt = H.pInt,
240 Tick = H.Tick,
241 wrap = H.wrap,
242  
243  
244 hiddenAxisMixin, // @todo Extract this to a new file
245 radialAxisMixin, // @todo Extract this to a new file
246 axisProto = Axis.prototype,
247 tickProto = Tick.prototype;
248  
249 /**
250 * Augmented methods for the x axis in order to hide it completely, used for the X axis in gauges
251 */
252 hiddenAxisMixin = {
253 getOffset: noop,
254 redraw: function() {
255 this.isDirty = false; // prevent setting Y axis dirty
256 },
257 render: function() {
258 this.isDirty = false; // prevent setting Y axis dirty
259 },
260 setScale: noop,
261 setCategories: noop,
262 setTitle: noop
263 };
264  
265 /**
266 * Augmented methods for the value axis
267 */
268 radialAxisMixin = {
269  
270 /**
271 * The default options extend defaultYAxisOptions
272 */
273 defaultRadialGaugeOptions: {
274 labels: {
275 align: 'center',
276 x: 0,
277 y: null // auto
278 },
279 minorGridLineWidth: 0,
280 minorTickInterval: 'auto',
281 minorTickLength: 10,
282 minorTickPosition: 'inside',
283 minorTickWidth: 1,
284 tickLength: 10,
285 tickPosition: 'inside',
286 tickWidth: 2,
287 title: {
288 rotation: 0
289 },
290 zIndex: 2 // behind dials, points in the series group
291 },
292  
293 // Circular axis around the perimeter of a polar chart
294 defaultRadialXOptions: {
295 gridLineWidth: 1, // spokes
296 labels: {
297 align: null, // auto
298 distance: 15,
299 x: 0,
300 y: null // auto
301 },
302 maxPadding: 0,
303 minPadding: 0,
304 showLastLabel: false,
305 tickLength: 0
306 },
307  
308 // Radial axis, like a spoke in a polar chart
309 defaultRadialYOptions: {
310 gridLineInterpolation: 'circle',
311 labels: {
312 align: 'right',
313 x: -3,
314 y: -2
315 },
316 showLastLabel: false,
317 title: {
318 x: 4,
319 text: null,
320 rotation: 90
321 }
322 },
323  
324 /**
325 * Merge and set options
326 */
327 setOptions: function(userOptions) {
328  
329 var options = this.options = merge(
330 this.defaultOptions,
331 this.defaultRadialOptions,
332 userOptions
333 );
334  
335 // Make sure the plotBands array is instanciated for each Axis (#2649)
336 if (!options.plotBands) {
337 options.plotBands = [];
338 }
339  
340 },
341  
342 /**
343 * Wrap the getOffset method to return zero offset for title or labels in a radial
344 * axis
345 */
346 getOffset: function() {
347 // Call the Axis prototype method (the method we're in now is on the instance)
348 axisProto.getOffset.call(this);
349  
350 // Title or label offsets are not counted
351 this.chart.axisOffset[this.side] = 0;
352  
353 },
354  
355  
356 /**
357 * Get the path for the axis line. This method is also referenced in the getPlotLinePath
358 * method.
359 */
360 getLinePath: function(lineWidth, radius) {
361 var center = this.center,
362 end,
363 chart = this.chart,
364 r = pick(radius, center[2] / 2 - this.offset),
365 path;
366  
367 if (this.isCircular || radius !== undefined) {
368 path = this.chart.renderer.symbols.arc(
369 this.left + center[0],
370 this.top + center[1],
371 r,
372 r, {
373 start: this.startAngleRad,
374 end: this.endAngleRad,
375 open: true,
376 innerR: 0
377 }
378 );
379 } else {
380 end = this.postTranslate(this.angleRad, r);
381 path = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
382 }
383 return path;
384 },
385  
386 /**
387 * Override setAxisTranslation by setting the translation to the difference
388 * in rotation. This allows the translate method to return angle for
389 * any given value.
390 */
391 setAxisTranslation: function() {
392  
393 // Call uber method
394 axisProto.setAxisTranslation.call(this);
395  
396 // Set transA and minPixelPadding
397 if (this.center) { // it's not defined the first time
398 if (this.isCircular) {
399  
400 this.transA = (this.endAngleRad - this.startAngleRad) /
401 ((this.max - this.min) || 1);
402  
403  
404 } else {
405 this.transA = (this.center[2] / 2) / ((this.max - this.min) || 1);
406 }
407  
408 if (this.isXAxis) {
409 this.minPixelPadding = this.transA * this.minPointOffset;
410 } else {
411 // This is a workaround for regression #2593, but categories still don't position correctly.
412 this.minPixelPadding = 0;
413 }
414 }
415 },
416  
417 /**
418 * In case of auto connect, add one closestPointRange to the max value right before
419 * tickPositions are computed, so that ticks will extend passed the real max.
420 */
421 beforeSetTickPositions: function() {
422 // If autoConnect is true, polygonal grid lines are connected, and one closestPointRange
423 // is added to the X axis to prevent the last point from overlapping the first.
424 this.autoConnect = this.isCircular && pick(this.userMax, this.options.max) === undefined &&
425 this.endAngleRad - this.startAngleRad === 2 * Math.PI;
426  
427 if (this.autoConnect) {
428 this.max += (this.categories && 1) || this.pointRange || this.closestPointRange || 0; // #1197, #2260
429 }
430 },
431  
432 /**
433 * Override the setAxisSize method to use the arc's circumference as length. This
434 * allows tickPixelInterval to apply to pixel lengths along the perimeter
435 */
436 setAxisSize: function() {
437  
438 axisProto.setAxisSize.call(this);
439  
440 if (this.isRadial) {
441  
442 // Set the center array
443 this.pane.updateCenter(this);
444  
445 // The sector is used in Axis.translate to compute the translation of reversed axis points (#2570)
446 if (this.isCircular) {
447 this.sector = this.endAngleRad - this.startAngleRad;
448 }
449  
450 // Axis len is used to lay out the ticks
451 this.len = this.width = this.height = this.center[2] * pick(this.sector, 1) / 2;
452  
453  
454 }
455 },
456  
457 /**
458 * Returns the x, y coordinate of a point given by a value and a pixel distance
459 * from center
460 */
461 getPosition: function(value, length) {
462 return this.postTranslate(
463 this.isCircular ? this.translate(value) : this.angleRad, // #2848
464 pick(this.isCircular ? length : this.translate(value), this.center[2] / 2) - this.offset
465 );
466 },
467  
468 /**
469 * Translate from intermediate plotX (angle), plotY (axis.len - radius) to final chart coordinates.
470 */
471 postTranslate: function(angle, radius) {
472  
473 var chart = this.chart,
474 center = this.center;
475  
476 angle = this.startAngleRad + angle;
477  
478 return {
479 x: chart.plotLeft + center[0] + Math.cos(angle) * radius,
480 y: chart.plotTop + center[1] + Math.sin(angle) * radius
481 };
482  
483 },
484  
485 /**
486 * Find the path for plot bands along the radial axis
487 */
488 getPlotBandPath: function(from, to, options) {
489 var center = this.center,
490 startAngleRad = this.startAngleRad,
491 fullRadius = center[2] / 2,
492 radii = [
493 pick(options.outerRadius, '100%'),
494 options.innerRadius,
495 pick(options.thickness, 10)
496 ],
497 offset = Math.min(this.offset, 0),
498 percentRegex = /%$/,
499 start,
500 end,
501 open,
502 isCircular = this.isCircular, // X axis in a polar chart
503 ret;
504  
505 // Polygonal plot bands
506 if (this.options.gridLineInterpolation === 'polygon') {
507 ret = this.getPlotLinePath(from).concat(this.getPlotLinePath(to, true));
508  
509 // Circular grid bands
510 } else {
511  
512 // Keep within bounds
513 from = Math.max(from, this.min);
514 to = Math.min(to, this.max);
515  
516 // Plot bands on Y axis (radial axis) - inner and outer radius depend on to and from
517 if (!isCircular) {
518 radii[0] = this.translate(from);
519 radii[1] = this.translate(to);
520 }
521  
522 // Convert percentages to pixel values
523 radii = map(radii, function(radius) {
524 if (percentRegex.test(radius)) {
525 radius = (pInt(radius, 10) * fullRadius) / 100;
526 }
527 return radius;
528 });
529  
530 // Handle full circle
531 if (options.shape === 'circle' || !isCircular) {
532 start = -Math.PI / 2;
533 end = Math.PI * 1.5;
534 open = true;
535 } else {
536 start = startAngleRad + this.translate(from);
537 end = startAngleRad + this.translate(to);
538 }
539  
540 radii[0] -= offset; // #5283
541 radii[2] -= offset; // #5283
542  
543 ret = this.chart.renderer.symbols.arc(
544 this.left + center[0],
545 this.top + center[1],
546 radii[0],
547 radii[0], {
548 start: Math.min(start, end), // Math is for reversed yAxis (#3606)
549 end: Math.max(start, end),
550 innerR: pick(radii[1], radii[0] - radii[2]),
551 open: open
552 }
553 );
554 }
555  
556 return ret;
557 },
558  
559 /**
560 * Find the path for plot lines perpendicular to the radial axis.
561 */
562 getPlotLinePath: function(value, reverse) {
563 var axis = this,
564 center = axis.center,
565 chart = axis.chart,
566 end = axis.getPosition(value),
567 xAxis,
568 xy,
569 tickPositions,
570 ret;
571  
572 // Spokes
573 if (axis.isCircular) {
574 ret = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
575  
576 // Concentric circles
577 } else if (axis.options.gridLineInterpolation === 'circle') {
578 value = axis.translate(value);
579 if (value) { // a value of 0 is in the center
580 ret = axis.getLinePath(0, value);
581 }
582 // Concentric polygons
583 } else {
584 // Find the X axis in the same pane
585 each(chart.xAxis, function(a) {
586 if (a.pane === axis.pane) {
587 xAxis = a;
588 }
589 });
590 ret = [];
591 value = axis.translate(value);
592 tickPositions = xAxis.tickPositions;
593 if (xAxis.autoConnect) {
594 tickPositions = tickPositions.concat([tickPositions[0]]);
595 }
596 // Reverse the positions for concatenation of polygonal plot bands
597 if (reverse) {
598 tickPositions = [].concat(tickPositions).reverse();
599 }
600  
601 each(tickPositions, function(pos, i) {
602 xy = xAxis.getPosition(pos, value);
603 ret.push(i ? 'L' : 'M', xy.x, xy.y);
604 });
605  
606 }
607 return ret;
608 },
609  
610 /**
611 * Find the position for the axis title, by default inside the gauge
612 */
613 getTitlePosition: function() {
614 var center = this.center,
615 chart = this.chart,
616 titleOptions = this.options.title;
617  
618 return {
619 x: chart.plotLeft + center[0] + (titleOptions.x || 0),
620 y: chart.plotTop + center[1] - ({
621 high: 0.5,
622 middle: 0.25,
623 low: 0
624 }[titleOptions.align] *
625 center[2]) + (titleOptions.y || 0)
626 };
627 }
628  
629 };
630  
631 /**
632 * Override axisProto.init to mix in special axis instance functions and function overrides
633 */
634 wrap(axisProto, 'init', function(proceed, chart, userOptions) {
635 var angular = chart.angular,
636 polar = chart.polar,
637 isX = userOptions.isX,
638 isHidden = angular && isX,
639 isCircular,
640 options,
641 chartOptions = chart.options,
642 paneIndex = userOptions.pane || 0,
643 pane = this.pane = chart.pane[paneIndex],
644 paneOptions = pane.options;
645  
646 // Before prototype.init
647 if (angular) {
648 extend(this, isHidden ? hiddenAxisMixin : radialAxisMixin);
649 isCircular = !isX;
650 if (isCircular) {
651 this.defaultRadialOptions = this.defaultRadialGaugeOptions;
652 }
653  
654 } else if (polar) {
655 extend(this, radialAxisMixin);
656 isCircular = isX;
657 this.defaultRadialOptions = isX ? this.defaultRadialXOptions : merge(this.defaultYAxisOptions, this.defaultRadialYOptions);
658  
659 }
660  
661 // Disable certain features on angular and polar axes
662 if (angular || polar) {
663 this.isRadial = true;
664 chart.inverted = false;
665 chartOptions.chart.zoomType = null;
666 } else {
667 this.isRadial = false;
668 }
669  
670 // A pointer back to this axis to borrow geometry
671 if (isCircular) {
672 pane.axis = this;
673 }
674  
675 // Run prototype.init
676 proceed.call(this, chart, userOptions);
677  
678 if (!isHidden && (angular || polar)) {
679 options = this.options;
680  
681 // Start and end angle options are
682 // given in degrees relative to top, while internal computations are
683 // in radians relative to right (like SVG).
684 this.angleRad = (options.angle || 0) * Math.PI / 180; // Y axis in polar charts
685 this.startAngleRad = (paneOptions.startAngle - 90) * Math.PI / 180; // Gauges
686 this.endAngleRad = (pick(paneOptions.endAngle, paneOptions.startAngle + 360) - 90) * Math.PI / 180; // Gauges
687 this.offset = options.offset || 0;
688  
689 this.isCircular = isCircular;
690  
691 }
692  
693 });
694  
695 /**
696 * Wrap auto label align to avoid setting axis-wide rotation on radial axes (#4920)
697 * @param {Function} proceed
698 * @returns {String} Alignment
699 */
700 wrap(axisProto, 'autoLabelAlign', function(proceed) {
701 if (!this.isRadial) {
702 return proceed.apply(this, [].slice.call(arguments, 1));
703 } // else return undefined
704 });
705  
706 /**
707 * Add special cases within the Tick class' methods for radial axes.
708 */
709 wrap(tickProto, 'getPosition', function(proceed, horiz, pos, tickmarkOffset, old) {
710 var axis = this.axis;
711  
712 return axis.getPosition ?
713 axis.getPosition(pos) :
714 proceed.call(this, horiz, pos, tickmarkOffset, old);
715 });
716  
717 /**
718 * Wrap the getLabelPosition function to find the center position of the label
719 * based on the distance option
720 */
721 wrap(tickProto, 'getLabelPosition', function(proceed, x, y, label, horiz, labelOptions, tickmarkOffset, index, step) {
722 var axis = this.axis,
723 optionsY = labelOptions.y,
724 ret,
725 centerSlot = 20, // 20 degrees to each side at the top and bottom
726 align = labelOptions.align,
727 angle = ((axis.translate(this.pos) + axis.startAngleRad + Math.PI / 2) / Math.PI * 180) % 360;
728  
729 if (axis.isRadial) { // Both X and Y axes in a polar chart
730 ret = axis.getPosition(this.pos, (axis.center[2] / 2) + pick(labelOptions.distance, -25));
731  
732 // Automatically rotated
733 if (labelOptions.rotation === 'auto') {
734 label.attr({
735 rotation: angle
736 });
737  
738 // Vertically centered
739 } else if (optionsY === null) {
740 optionsY = axis.chart.renderer.fontMetrics(label.styles.fontSize).b - label.getBBox().height / 2;
741 }
742  
743 // Automatic alignment
744 if (align === null) {
745 if (axis.isCircular) { // Y axis
746 if (this.label.getBBox().width > axis.len * axis.tickInterval / (axis.max - axis.min)) { // #3506
747 centerSlot = 0;
748 }
749 if (angle > centerSlot && angle < 180 - centerSlot) {
750 < 180 - centerSlot) { align = 'left'; // right hemisphere
751 < 180 - centerSlot) { } else if (angle > 180 + centerSlot && angle < 360 - centerSlot) {
752 < 180 - centerSlot) {< 360 - centerSlot) { align = 'right'; // left hemisphere
753 < 180 - centerSlot) {< 360 - centerSlot) { } else {
754 < 180 - centerSlot) {< 360 - centerSlot) { align = 'center'; // top or bottom
755 < 180 - centerSlot) {< 360 - centerSlot) { }
756 < 180 - centerSlot) {< 360 - centerSlot) { } else {
757 < 180 - centerSlot) {< 360 - centerSlot) { align = 'center';
758 < 180 - centerSlot) {< 360 - centerSlot) { }
759 < 180 - centerSlot) {< 360 - centerSlot) { label.attr({
760 < 180 - centerSlot) {< 360 - centerSlot) { align: align
761 < 180 - centerSlot) {< 360 - centerSlot) { });
762 < 180 - centerSlot) {< 360 - centerSlot) { }
763  
764 < 180 - centerSlot) {< 360 - centerSlot) { ret.x += labelOptions.x;
765 < 180 - centerSlot) {< 360 - centerSlot) { ret.y += optionsY;
766  
767 < 180 - centerSlot) {< 360 - centerSlot) { } else {
768 < 180 - centerSlot) {< 360 - centerSlot) { ret = proceed.call(this, x, y, label, horiz, labelOptions, tickmarkOffset, index, step);
769 < 180 - centerSlot) {< 360 - centerSlot) { }
770 < 180 - centerSlot) {< 360 - centerSlot) { return ret;
771 < 180 - centerSlot) {< 360 - centerSlot) { });
772  
773 < 180 - centerSlot) {< 360 - centerSlot) { /**
774 < 180 - centerSlot) {< 360 - centerSlot) { * Wrap the getMarkPath function to return the path of the radial marker
775 < 180 - centerSlot) {< 360 - centerSlot) { */
776 < 180 - centerSlot) {< 360 - centerSlot) { wrap(tickProto, 'getMarkPath', function(proceed, x, y, tickLength, tickWidth, horiz, renderer) {
777 < 180 - centerSlot) {< 360 - centerSlot) { var axis = this.axis,
778 < 180 - centerSlot) {< 360 - centerSlot) { endPoint,
779 < 180 - centerSlot) {< 360 - centerSlot) { ret;
780  
781 < 180 - centerSlot) {< 360 - centerSlot) { if (axis.isRadial) {
782 < 180 - centerSlot) {< 360 - centerSlot) { endPoint = axis.getPosition(this.pos, axis.center[2] / 2 + tickLength);
783 < 180 - centerSlot) {< 360 - centerSlot) { ret = [
784 < 180 - centerSlot) {< 360 - centerSlot) { 'M',
785 < 180 - centerSlot) {< 360 - centerSlot) { x,
786 < 180 - centerSlot) {< 360 - centerSlot) { y,
787 < 180 - centerSlot) {< 360 - centerSlot) { 'L',
788 < 180 - centerSlot) {< 360 - centerSlot) { endPoint.x,
789 < 180 - centerSlot) {< 360 - centerSlot) { endPoint.y
790 < 180 - centerSlot) {< 360 - centerSlot) { ];
791 < 180 - centerSlot) {< 360 - centerSlot) { } else {
792 < 180 - centerSlot) {< 360 - centerSlot) { ret = proceed.call(this, x, y, tickLength, tickWidth, horiz, renderer);
793 < 180 - centerSlot) {< 360 - centerSlot) { }
794 < 180 - centerSlot) {< 360 - centerSlot) { return ret;
795 < 180 - centerSlot) {< 360 - centerSlot) { });
796  
797 < 180 - centerSlot) {< 360 - centerSlot) { }(Highcharts));
798 < 180 - centerSlot) {< 360 - centerSlot) { (function(H) {
799 < 180 - centerSlot) {< 360 - centerSlot) { /**
800 < 180 - centerSlot) {< 360 - centerSlot) { * (c) 2010-2017 Torstein Honsi
801 < 180 - centerSlot) {< 360 - centerSlot) { *
802 < 180 - centerSlot) {< 360 - centerSlot) { * License: www.highcharts.com/license
803 < 180 - centerSlot) {< 360 - centerSlot) { */
804 < 180 - centerSlot) {< 360 - centerSlot) { var each = H.each,
805 < 180 - centerSlot) {< 360 - centerSlot) { noop = H.noop,
806 < 180 - centerSlot) {< 360 - centerSlot) { pick = H.pick,
807 < 180 - centerSlot) {< 360 - centerSlot) { Series = H.Series,
808 < 180 - centerSlot) {< 360 - centerSlot) { seriesType = H.seriesType,
809 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes = H.seriesTypes;
810 < 180 - centerSlot) {< 360 - centerSlot) { /*
811 < 180 - centerSlot) {< 360 - centerSlot) { * The arearangeseries series type
812 < 180 - centerSlot) {< 360 - centerSlot) { */
813 < 180 - centerSlot) {< 360 - centerSlot) { seriesType('arearange', 'area', {
814  
815 < 180 - centerSlot) {< 360 - centerSlot) { lineWidth: 1,
816  
817 < 180 - centerSlot) {< 360 - centerSlot) { marker: null,
818 < 180 - centerSlot) {< 360 - centerSlot) { threshold: null,
819 < 180 - centerSlot) {< 360 - centerSlot) { tooltip: {
820  
821 < 180 - centerSlot) {< 360 - centerSlot) { pointFormat: '<span style="color:{series.color}">\u25CF</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>' // eslint-disable-line no-dupe-keys
822  
823 < 180 - centerSlot) {< 360 - centerSlot) { },
824 < 180 - centerSlot) {< 360 - centerSlot) { trackByArea: true,
825 < 180 - centerSlot) {< 360 - centerSlot) { dataLabels: {
826 < 180 - centerSlot) {< 360 - centerSlot) { align: null,
827 < 180 - centerSlot) {< 360 - centerSlot) { verticalAlign: null,
828 < 180 - centerSlot) {< 360 - centerSlot) { xLow: 0,
829 < 180 - centerSlot) {< 360 - centerSlot) { xHigh: 0,
830 < 180 - centerSlot) {< 360 - centerSlot) { yLow: 0,
831 < 180 - centerSlot) {< 360 - centerSlot) { yHigh: 0
832 < 180 - centerSlot) {< 360 - centerSlot) { },
833 < 180 - centerSlot) {< 360 - centerSlot) { states: {
834 < 180 - centerSlot) {< 360 - centerSlot) { hover: {
835 < 180 - centerSlot) {< 360 - centerSlot) { halo: false
836 < 180 - centerSlot) {< 360 - centerSlot) { }
837 < 180 - centerSlot) {< 360 - centerSlot) { }
838  
839 < 180 - centerSlot) {< 360 - centerSlot) { // Prototype members
840 < 180 - centerSlot) {< 360 - centerSlot) { }, {
841 < 180 - centerSlot) {< 360 - centerSlot) { pointArrayMap: ['low', 'high'],
842 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelCollections: ['dataLabel', 'dataLabelUpper'],
843 < 180 - centerSlot) {< 360 - centerSlot) { toYData: function(point) {
844 < 180 - centerSlot) {< 360 - centerSlot) { return [point.low, point.high];
845 < 180 - centerSlot) {< 360 - centerSlot) { },
846 < 180 - centerSlot) {< 360 - centerSlot) { pointValKey: 'low',
847 < 180 - centerSlot) {< 360 - centerSlot) { deferTranslatePolar: true,
848  
849 < 180 - centerSlot) {< 360 - centerSlot) { /**
850 < 180 - centerSlot) {< 360 - centerSlot) { * Translate a point's plotHigh from the internal angle and radius measures to
851 < 180 - centerSlot) {< 360 - centerSlot) { * true plotHigh coordinates. This is an addition of the toXY method found in
852 < 180 - centerSlot) {< 360 - centerSlot) { * Polar.js, because it runs too early for arearanges to be considered (#3419).
853 < 180 - centerSlot) {< 360 - centerSlot) { */
854 < 180 - centerSlot) {< 360 - centerSlot) { highToXY: function(point) {
855 < 180 - centerSlot) {< 360 - centerSlot) { // Find the polar plotX and plotY
856 < 180 - centerSlot) {< 360 - centerSlot) { var chart = this.chart,
857 < 180 - centerSlot) {< 360 - centerSlot) { xy = this.xAxis.postTranslate(point.rectPlotX, this.yAxis.len - point.plotHigh);
858 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHighX = xy.x - chart.plotLeft;
859 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHigh = xy.y - chart.plotTop;
860 < 180 - centerSlot) {< 360 - centerSlot) { },
861  
862 < 180 - centerSlot) {< 360 - centerSlot) { /**
863 < 180 - centerSlot) {< 360 - centerSlot) { * Translate data points from raw values x and y to plotX and plotY
864 < 180 - centerSlot) {< 360 - centerSlot) { */
865 < 180 - centerSlot) {< 360 - centerSlot) { translate: function() {
866 < 180 - centerSlot) {< 360 - centerSlot) { var series = this,
867 < 180 - centerSlot) {< 360 - centerSlot) { yAxis = series.yAxis,
868 < 180 - centerSlot) {< 360 - centerSlot) { hasModifyValue = !!series.modifyValue;
869  
870 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes.area.prototype.translate.apply(series);
871  
872 < 180 - centerSlot) {< 360 - centerSlot) { // Set plotLow and plotHigh
873 < 180 - centerSlot) {< 360 - centerSlot) { each(series.points, function(point) {
874  
875 < 180 - centerSlot) {< 360 - centerSlot) { var low = point.low,
876 < 180 - centerSlot) {< 360 - centerSlot) { high = point.high,
877 < 180 - centerSlot) {< 360 - centerSlot) { plotY = point.plotY;
878  
879 < 180 - centerSlot) {< 360 - centerSlot) { if (high === null || low === null) {
880 < 180 - centerSlot) {< 360 - centerSlot) { point.isNull = true;
881 < 180 - centerSlot) {< 360 - centerSlot) { } else {
882 < 180 - centerSlot) {< 360 - centerSlot) { point.plotLow = plotY;
883 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHigh = yAxis.translate(
884 < 180 - centerSlot) {< 360 - centerSlot) { hasModifyValue ? series.modifyValue(high, point) : high,
885 < 180 - centerSlot) {< 360 - centerSlot) { 0,
886 < 180 - centerSlot) {< 360 - centerSlot) { 1,
887 < 180 - centerSlot) {< 360 - centerSlot) { 0,
888 < 180 - centerSlot) {< 360 - centerSlot) { 1
889 < 180 - centerSlot) {< 360 - centerSlot) { );
890 < 180 - centerSlot) {< 360 - centerSlot) { if (hasModifyValue) {
891 < 180 - centerSlot) {< 360 - centerSlot) { point.yBottom = point.plotHigh;
892 < 180 - centerSlot) {< 360 - centerSlot) { }
893 < 180 - centerSlot) {< 360 - centerSlot) { }
894 < 180 - centerSlot) {< 360 - centerSlot) { });
895  
896 < 180 - centerSlot) {< 360 - centerSlot) { // Postprocess plotHigh
897 < 180 - centerSlot) {< 360 - centerSlot) { if (this.chart.polar) {
898 < 180 - centerSlot) {< 360 - centerSlot) { each(this.points, function(point) {
899 < 180 - centerSlot) {< 360 - centerSlot) { series.highToXY(point);
900 < 180 - centerSlot) {< 360 - centerSlot) { });
901 < 180 - centerSlot) {< 360 - centerSlot) { }
902 < 180 - centerSlot) {< 360 - centerSlot) { },
903  
904 < 180 - centerSlot) {< 360 - centerSlot) { /**
905 < 180 - centerSlot) {< 360 - centerSlot) { * Extend the line series' getSegmentPath method by applying the segment
906 < 180 - centerSlot) {< 360 - centerSlot) { * path to both lower and higher values of the range
907 < 180 - centerSlot) {< 360 - centerSlot) { */
908 < 180 - centerSlot) {< 360 - centerSlot) { getGraphPath: function(points) {
909  
910 < 180 - centerSlot) {< 360 - centerSlot) { var highPoints = [],
911 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints = [],
912 < 180 - centerSlot) {< 360 - centerSlot) { i,
913 < 180 - centerSlot) {< 360 - centerSlot) { getGraphPath = seriesTypes.area.prototype.getGraphPath,
914 < 180 - centerSlot) {< 360 - centerSlot) { point,
915 < 180 - centerSlot) {< 360 - centerSlot) { pointShim,
916 < 180 - centerSlot) {< 360 - centerSlot) { linePath,
917 < 180 - centerSlot) {< 360 - centerSlot) { lowerPath,
918 < 180 - centerSlot) {< 360 - centerSlot) { options = this.options,
919 < 180 - centerSlot) {< 360 - centerSlot) { connectEnds = this.chart.polar && options.connectEnds !== false,
920 < 180 - centerSlot) {< 360 - centerSlot) { connectNulls = options.connectNulls,
921 < 180 - centerSlot) {< 360 - centerSlot) { step = options.step,
922 < 180 - centerSlot) {< 360 - centerSlot) { higherPath,
923 < 180 - centerSlot) {< 360 - centerSlot) { higherAreaPath;
924  
925 < 180 - centerSlot) {< 360 - centerSlot) { points = points || this.points;
926 < 180 - centerSlot) {< 360 - centerSlot) { i = points.length;
927  
928 < 180 - centerSlot) {< 360 - centerSlot) { // Create the top line and the top part of the area fill. The area fill compensates for
929 < 180 - centerSlot) {< 360 - centerSlot) { // null points by drawing down to the lower graph, moving across the null gap and
930 < 180 - centerSlot) {< 360 - centerSlot) { // starting again at the lower graph.
931 < 180 - centerSlot) {< 360 - centerSlot) { i = points.length;
932 < 180 - centerSlot) {< 360 - centerSlot) { while (i--) {
933 < 180 - centerSlot) {< 360 - centerSlot) { point = points[i];
934  
935 < 180 - centerSlot) {< 360 - centerSlot) { if (!point.isNull &&
936 < 180 - centerSlot) {< 360 - centerSlot) { !connectEnds &&
937 < 180 - centerSlot) {< 360 - centerSlot) { !connectNulls &&
938 < 180 - centerSlot) {< 360 - centerSlot) { (!points[i + 1] || points[i + 1].isNull)
939 < 180 - centerSlot) {< 360 - centerSlot) { ) {
940 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints.push({
941 < 180 - centerSlot) {< 360 - centerSlot) { plotX: point.plotX,
942 < 180 - centerSlot) {< 360 - centerSlot) { plotY: point.plotY,
943 < 180 - centerSlot) {< 360 - centerSlot) { doCurve: false // #5186, gaps in areasplinerange fill
944 < 180 - centerSlot) {< 360 - centerSlot) { });
945 < 180 - centerSlot) {< 360 - centerSlot) { }
946  
947 < 180 - centerSlot) {< 360 - centerSlot) { pointShim = {
948 < 180 - centerSlot) {< 360 - centerSlot) { polarPlotY: point.polarPlotY,
949 < 180 - centerSlot) {< 360 - centerSlot) { rectPlotX: point.rectPlotX,
950 < 180 - centerSlot) {< 360 - centerSlot) { yBottom: point.yBottom,
951 < 180 - centerSlot) {< 360 - centerSlot) { plotX: pick(point.plotHighX, point.plotX), // plotHighX is for polar charts
952 < 180 - centerSlot) {< 360 - centerSlot) { plotY: point.plotHigh,
953 < 180 - centerSlot) {< 360 - centerSlot) { isNull: point.isNull
954 < 180 - centerSlot) {< 360 - centerSlot) { };
955  
956 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints.push(pointShim);
957  
958 < 180 - centerSlot) {< 360 - centerSlot) { highPoints.push(pointShim);
959  
960 < 180 - centerSlot) {< 360 - centerSlot) { if (!point.isNull &&
961 < 180 - centerSlot) {< 360 - centerSlot) { !connectEnds &&
962 < 180 - centerSlot) {< 360 - centerSlot) { !connectNulls &&
963 < 180 - centerSlot) {< 360 - centerSlot) { (!points[i - 1] || points[i - 1].isNull)
964 < 180 - centerSlot) {< 360 - centerSlot) { ) {
965 < 180 - centerSlot) {< 360 - centerSlot) { highAreaPoints.push({
966 < 180 - centerSlot) {< 360 - centerSlot) { plotX: point.plotX,
967 < 180 - centerSlot) {< 360 - centerSlot) { plotY: point.plotY,
968 < 180 - centerSlot) {< 360 - centerSlot) { doCurve: false // #5186, gaps in areasplinerange fill
969 < 180 - centerSlot) {< 360 - centerSlot) { });
970 < 180 - centerSlot) {< 360 - centerSlot) { }
971 < 180 - centerSlot) {< 360 - centerSlot) { }
972  
973 < 180 - centerSlot) {< 360 - centerSlot) { // Get the paths
974 < 180 - centerSlot) {< 360 - centerSlot) { lowerPath = getGraphPath.call(this, points);
975 < 180 - centerSlot) {< 360 - centerSlot) { if (step) {
976 < 180 - centerSlot) {< 360 - centerSlot) { if (step === true) {
977 < 180 - centerSlot) {< 360 - centerSlot) { step = 'left';
978 < 180 - centerSlot) {< 360 - centerSlot) { }
979 < 180 - centerSlot) {< 360 - centerSlot) { options.step = {
980 < 180 - centerSlot) {< 360 - centerSlot) { left: 'right',
981 < 180 - centerSlot) {< 360 - centerSlot) { center: 'center',
982 < 180 - centerSlot) {< 360 - centerSlot) { right: 'left'
983 < 180 - centerSlot) {< 360 - centerSlot) { }[step]; // swap for reading in getGraphPath
984 < 180 - centerSlot) {< 360 - centerSlot) { }
985 < 180 - centerSlot) {< 360 - centerSlot) { higherPath = getGraphPath.call(this, highPoints);
986 < 180 - centerSlot) {< 360 - centerSlot) { higherAreaPath = getGraphPath.call(this, highAreaPoints);
987 < 180 - centerSlot) {< 360 - centerSlot) { options.step = step;
988  
989 < 180 - centerSlot) {< 360 - centerSlot) { // Create a line on both top and bottom of the range
990 < 180 - centerSlot) {< 360 - centerSlot) { linePath = [].concat(lowerPath, higherPath);
991  
992 < 180 - centerSlot) {< 360 - centerSlot) { // For the area path, we need to change the 'move' statement into 'lineTo' or 'curveTo'
993 < 180 - centerSlot) {< 360 - centerSlot) { if (!this.chart.polar && higherAreaPath[0] === 'M') {
994 < 180 - centerSlot) {< 360 - centerSlot) { higherAreaPath[0] = 'L'; // this probably doesn't work for spline
995 < 180 - centerSlot) {< 360 - centerSlot) { }
996  
997 < 180 - centerSlot) {< 360 - centerSlot) { this.graphPath = linePath;
998 < 180 - centerSlot) {< 360 - centerSlot) { this.areaPath = this.areaPath.concat(lowerPath, higherAreaPath);
999  
1000 < 180 - centerSlot) {< 360 - centerSlot) { // Prepare for sideways animation
1001 < 180 - centerSlot) {< 360 - centerSlot) { linePath.isArea = true;
1002 < 180 - centerSlot) {< 360 - centerSlot) { linePath.xMap = lowerPath.xMap;
1003 < 180 - centerSlot) {< 360 - centerSlot) { this.areaPath.xMap = lowerPath.xMap;
1004  
1005 < 180 - centerSlot) {< 360 - centerSlot) { return linePath;
1006 < 180 - centerSlot) {< 360 - centerSlot) { },
1007  
1008 < 180 - centerSlot) {< 360 - centerSlot) { /**
1009 < 180 - centerSlot) {< 360 - centerSlot) { * Extend the basic drawDataLabels method by running it for both lower and higher
1010 < 180 - centerSlot) {< 360 - centerSlot) { * values.
1011 < 180 - centerSlot) {< 360 - centerSlot) { */
1012 < 180 - centerSlot) {< 360 - centerSlot) { drawDataLabels: function() {
1013  
1014 < 180 - centerSlot) {< 360 - centerSlot) { var data = this.data,
1015 < 180 - centerSlot) {< 360 - centerSlot) { length = data.length,
1016 < 180 - centerSlot) {< 360 - centerSlot) { i,
1017 < 180 - centerSlot) {< 360 - centerSlot) { originalDataLabels = [],
1018 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto = Series.prototype,
1019 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions = this.options.dataLabels,
1020 < 180 - centerSlot) {< 360 - centerSlot) { align = dataLabelOptions.align,
1021 < 180 - centerSlot) {< 360 - centerSlot) { verticalAlign = dataLabelOptions.verticalAlign,
1022 < 180 - centerSlot) {< 360 - centerSlot) { inside = dataLabelOptions.inside,
1023 < 180 - centerSlot) {< 360 - centerSlot) { point,
1024 < 180 - centerSlot) {< 360 - centerSlot) { up,
1025 < 180 - centerSlot) {< 360 - centerSlot) { inverted = this.chart.inverted;
1026  
1027 < 180 - centerSlot) {< 360 - centerSlot) { if (dataLabelOptions.enabled || this._hasPointLabels) {
1028  
1029 < 180 - centerSlot) {< 360 - centerSlot) { // Step 1: set preliminary values for plotY and dataLabel and draw the upper labels
1030 < 180 - centerSlot) {< 360 - centerSlot) { i = length;
1031 < 180 - centerSlot) {< 360 - centerSlot) { while (i--) {
1032 < 180 - centerSlot) {< 360 - centerSlot) { point = data[i];
1033 < 180 - centerSlot) {< 360 - centerSlot) { if (point) {
1034 < 180 - centerSlot) {< 360 - centerSlot) { up = inside ? point.plotHigh < point.plotLow : point.plotHigh > point.plotLow;
1035  
1036 < 180 - centerSlot) {< 360 - centerSlot) { // Set preliminary values
1037 < 180 - centerSlot) {< 360 - centerSlot) { point.y = point.high;
1038 < 180 - centerSlot) {< 360 - centerSlot) { point._plotY = point.plotY;
1039 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = point.plotHigh;
1040  
1041 < 180 - centerSlot) {< 360 - centerSlot) { // Store original data labels and set preliminary label objects to be picked up
1042 < 180 - centerSlot) {< 360 - centerSlot) { // in the uber method
1043 < 180 - centerSlot) {< 360 - centerSlot) { originalDataLabels[i] = point.dataLabel;
1044 < 180 - centerSlot) {< 360 - centerSlot) { point.dataLabel = point.dataLabelUpper;
1045  
1046 < 180 - centerSlot) {< 360 - centerSlot) { // Set the default offset
1047 < 180 - centerSlot) {< 360 - centerSlot) { point.below = up;
1048 < 180 - centerSlot) {< 360 - centerSlot) { if (inverted) {
1049 < 180 - centerSlot) {< 360 - centerSlot) { if (!align) {
1050 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.align = up ? 'right' : 'left';
1051 < 180 - centerSlot) {< 360 - centerSlot) { }
1052 < 180 - centerSlot) {< 360 - centerSlot) { } else {
1053 < 180 - centerSlot) {< 360 - centerSlot) { if (!verticalAlign) {
1054 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.verticalAlign = up ? 'top' : 'bottom';
1055 < 180 - centerSlot) {< 360 - centerSlot) { }
1056 < 180 - centerSlot) {< 360 - centerSlot) { }
1057  
1058 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.x = dataLabelOptions.xHigh;
1059 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.y = dataLabelOptions.yHigh;
1060 < 180 - centerSlot) {< 360 - centerSlot) { }
1061 < 180 - centerSlot) {< 360 - centerSlot) { }
1062  
1063 < 180 - centerSlot) {< 360 - centerSlot) { if (seriesProto.drawDataLabels) {
1064 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto.drawDataLabels.apply(this, arguments); // #1209
1065 < 180 - centerSlot) {< 360 - centerSlot) { }
1066  
1067 < 180 - centerSlot) {< 360 - centerSlot) { // Step 2: reorganize and handle data labels for the lower values
1068 < 180 - centerSlot) {< 360 - centerSlot) { i = length;
1069 < 180 - centerSlot) {< 360 - centerSlot) { while (i--) {
1070 < 180 - centerSlot) {< 360 - centerSlot) { point = data[i];
1071 < 180 - centerSlot) {< 360 - centerSlot) { if (point) {
1072 < 180 - centerSlot) {< 360 - centerSlot) { up = inside ? point.plotHigh < point.plotLow : point.plotHigh > point.plotLow;
1073  
1074 < 180 - centerSlot) {< 360 - centerSlot) { // Move the generated labels from step 1, and reassign the original data labels
1075 < 180 - centerSlot) {< 360 - centerSlot) { point.dataLabelUpper = point.dataLabel;
1076 < 180 - centerSlot) {< 360 - centerSlot) { point.dataLabel = originalDataLabels[i];
1077  
1078 < 180 - centerSlot) {< 360 - centerSlot) { // Reset values
1079 < 180 - centerSlot) {< 360 - centerSlot) { point.y = point.low;
1080 < 180 - centerSlot) {< 360 - centerSlot) { point.plotY = point._plotY;
1081  
1082 < 180 - centerSlot) {< 360 - centerSlot) { // Set the default offset
1083 < 180 - centerSlot) {< 360 - centerSlot) { point.below = !up;
1084 < 180 - centerSlot) {< 360 - centerSlot) { if (inverted) {
1085 < 180 - centerSlot) {< 360 - centerSlot) { if (!align) {
1086 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.align = up ? 'left' : 'right';
1087 < 180 - centerSlot) {< 360 - centerSlot) { }
1088 < 180 - centerSlot) {< 360 - centerSlot) { } else {
1089 < 180 - centerSlot) {< 360 - centerSlot) { if (!verticalAlign) {
1090 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.verticalAlign = up ? 'bottom' : 'top';
1091 < 180 - centerSlot) {< 360 - centerSlot) { }
1092  
1093 < 180 - centerSlot) {< 360 - centerSlot) { }
1094  
1095 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.x = dataLabelOptions.xLow;
1096 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.y = dataLabelOptions.yLow;
1097 < 180 - centerSlot) {< 360 - centerSlot) { }
1098 < 180 - centerSlot) {< 360 - centerSlot) { }
1099 < 180 - centerSlot) {< 360 - centerSlot) { if (seriesProto.drawDataLabels) {
1100 < 180 - centerSlot) {< 360 - centerSlot) { seriesProto.drawDataLabels.apply(this, arguments);
1101 < 180 - centerSlot) {< 360 - centerSlot) { }
1102 < 180 - centerSlot) {< 360 - centerSlot) { }
1103  
1104 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.align = align;
1105 < 180 - centerSlot) {< 360 - centerSlot) { dataLabelOptions.verticalAlign = verticalAlign;
1106 < 180 - centerSlot) {< 360 - centerSlot) { },
1107  
1108 < 180 - centerSlot) {< 360 - centerSlot) { alignDataLabel: function() {
1109 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes.column.prototype.alignDataLabel.apply(this, arguments);
1110 < 180 - centerSlot) {< 360 - centerSlot) { },
1111  
1112 < 180 - centerSlot) {< 360 - centerSlot) { setStackedPoints: noop,
1113  
1114 < 180 - centerSlot) {< 360 - centerSlot) { getSymbol: noop,
1115  
1116 < 180 - centerSlot) {< 360 - centerSlot) { drawPoints: noop
1117 < 180 - centerSlot) {< 360 - centerSlot) { });
1118  
1119 < 180 - centerSlot) {< 360 - centerSlot) { }(Highcharts));
1120 < 180 - centerSlot) {< 360 - centerSlot) { (function(H) {
1121 < 180 - centerSlot) {< 360 - centerSlot) { /**
1122 < 180 - centerSlot) {< 360 - centerSlot) { * (c) 2010-2017 Torstein Honsi
1123 < 180 - centerSlot) {< 360 - centerSlot) { *
1124 < 180 - centerSlot) {< 360 - centerSlot) { * License: www.highcharts.com/license
1125 < 180 - centerSlot) {< 360 - centerSlot) { */
1126  
1127 < 180 - centerSlot) {< 360 - centerSlot) { var seriesType = H.seriesType,
1128 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes = H.seriesTypes;
1129  
1130 < 180 - centerSlot) {< 360 - centerSlot) { /**
1131 < 180 - centerSlot) {< 360 - centerSlot) { * The areasplinerange series type
1132 < 180 - centerSlot) {< 360 - centerSlot) { */
1133 < 180 - centerSlot) {< 360 - centerSlot) { seriesType('areasplinerange', 'arearange', null, {
1134 < 180 - centerSlot) {< 360 - centerSlot) { getPointSpline: seriesTypes.spline.prototype.getPointSpline
1135 < 180 - centerSlot) {< 360 - centerSlot) { });
1136  
1137 < 180 - centerSlot) {< 360 - centerSlot) { }(Highcharts));
1138 < 180 - centerSlot) {< 360 - centerSlot) { (function(H) {
1139 < 180 - centerSlot) {< 360 - centerSlot) { /**
1140 < 180 - centerSlot) {< 360 - centerSlot) { * (c) 2010-2017 Torstein Honsi
1141 < 180 - centerSlot) {< 360 - centerSlot) { *
1142 < 180 - centerSlot) {< 360 - centerSlot) { * License: www.highcharts.com/license
1143 < 180 - centerSlot) {< 360 - centerSlot) { */
1144 < 180 - centerSlot) {< 360 - centerSlot) { var defaultPlotOptions = H.defaultPlotOptions,
1145 < 180 - centerSlot) {< 360 - centerSlot) { each = H.each,
1146 < 180 - centerSlot) {< 360 - centerSlot) { merge = H.merge,
1147 < 180 - centerSlot) {< 360 - centerSlot) { noop = H.noop,
1148 < 180 - centerSlot) {< 360 - centerSlot) { pick = H.pick,
1149 < 180 - centerSlot) {< 360 - centerSlot) { seriesType = H.seriesType,
1150 < 180 - centerSlot) {< 360 - centerSlot) { seriesTypes = H.seriesTypes;
1151  
1152 < 180 - centerSlot) {< 360 - centerSlot) { var colProto = seriesTypes.column.prototype;
1153  
1154 < 180 - centerSlot) {< 360 - centerSlot) { /**
1155 < 180 - centerSlot) {< 360 - centerSlot) { * The ColumnRangeSeries class
1156 < 180 - centerSlot) {< 360 - centerSlot) { */
1157 < 180 - centerSlot) {< 360 - centerSlot) { seriesType('columnrange', 'arearange', merge(defaultPlotOptions.column, defaultPlotOptions.arearange, {
1158 < 180 - centerSlot) {< 360 - centerSlot) { lineWidth: 1,
1159 < 180 - centerSlot) {< 360 - centerSlot) { pointRange: null
1160  
1161 < 180 - centerSlot) {< 360 - centerSlot) { // Prototype members
1162 < 180 - centerSlot) {< 360 - centerSlot) { }), {
1163 < 180 - centerSlot) {< 360 - centerSlot) { /**
1164 < 180 - centerSlot) {< 360 - centerSlot) { * Translate data points from raw values x and y to plotX and plotY
1165 < 180 - centerSlot) {< 360 - centerSlot) { */
1166 < 180 - centerSlot) {< 360 - centerSlot) { translate: function() {
1167 < 180 - centerSlot) {< 360 - centerSlot) { var series = this,
1168 < 180 - centerSlot) {< 360 - centerSlot) { yAxis = series.yAxis,
1169 < 180 - centerSlot) {< 360 - centerSlot) { xAxis = series.xAxis,
1170 < 180 - centerSlot) {< 360 - centerSlot) { startAngleRad = xAxis.startAngleRad,
1171 < 180 - centerSlot) {< 360 - centerSlot) { start,
1172 < 180 - centerSlot) {< 360 - centerSlot) { chart = series.chart,
1173 < 180 - centerSlot) {< 360 - centerSlot) { isRadial = series.xAxis.isRadial,
1174 < 180 - centerSlot) {< 360 - centerSlot) { plotHigh;
1175  
1176 < 180 - centerSlot) {< 360 - centerSlot) { colProto.translate.apply(series);
1177  
1178 < 180 - centerSlot) {< 360 - centerSlot) { // Set plotLow and plotHigh
1179 < 180 - centerSlot) {< 360 - centerSlot) { each(series.points, function(point) {
1180 < 180 - centerSlot) {< 360 - centerSlot) { var shapeArgs = point.shapeArgs,
1181 < 180 - centerSlot) {< 360 - centerSlot) { minPointLength = series.options.minPointLength,
1182 < 180 - centerSlot) {< 360 - centerSlot) { heightDifference,
1183 < 180 - centerSlot) {< 360 - centerSlot) { height,
1184 < 180 - centerSlot) {< 360 - centerSlot) { y;
1185  
1186 < 180 - centerSlot) {< 360 - centerSlot) { point.plotHigh = plotHigh = yAxis.translate(point.high, 0, 1, 0, 1);
1187 < 180 - centerSlot) {< 360 - centerSlot) { point.plotLow = point.plotY;
1188  
1189 < 180 - centerSlot) {< 360 - centerSlot) { // adjust shape
1190 < 180 - centerSlot) {< 360 - centerSlot) { y = plotHigh;
1191 < 180 - centerSlot) {< 360 - centerSlot) { height = pick(point.rectPlotY, point.plotY) - plotHigh;
1192  
1193 < 180 - centerSlot) {< 360 - centerSlot) { // Adjust for minPointLength
1194 < 180 - centerSlot) {< 360 - centerSlot) { if (Math.abs(height) < minPointLength) {
1195 < 180 - centerSlot) {< 360 - centerSlot) { heightDifference = (minPointLength - height);
1196 < 180 - centerSlot) {< 360 - centerSlot) { height += heightDifference;
1197 < 180 - centerSlot) {< 360 - centerSlot) { y -= heightDifference / 2;
1198  
1199 < 180 - centerSlot) {< 360 - centerSlot) { // Adjust for negative ranges or reversed Y axis (#1457)
1200 < 180 - centerSlot) {< 360 - centerSlot) { } else if (height < 0) {
1201 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { height *= -1;
1202 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { y -= height;
1203 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1204  
1205 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (isRadial) {
1206  
1207 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { start = point.barX + startAngleRad;
1208 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeType = 'path';
1209 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeArgs = {
1210 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: series.polarArc(y + height, y, start, start + point.pointWidth)
1211 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { };
1212 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else {
1213 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.height = height;
1214 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.y = y;
1215  
1216 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.tooltipPos = chart.inverted ? [
1217 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis.len + yAxis.pos - chart.plotLeft - y - height / 2,
1218 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { xAxis.len + xAxis.pos - chart.plotTop - shapeArgs.x -
1219 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.width / 2,
1220 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { height
1221 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ] : [
1222 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { xAxis.left - chart.plotLeft + shapeArgs.x +
1223 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.width / 2,
1224 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis.pos - chart.plotTop + y + height / 2,
1225 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { height
1226 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]; // don't inherit from column tooltip position - #3372
1227 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1228 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1229 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1230 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { directTouch: true,
1231 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { trackerGroups: ['group', 'dataLabelsGroup'],
1232 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawGraph: noop,
1233 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCol: colProto.crispCol,
1234 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawPoints: colProto.drawPoints,
1235 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawTracker: colProto.drawTracker,
1236 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { getColumnMetrics: colProto.getColumnMetrics,
1237 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { animate: function() {
1238 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return colProto.animate.apply(this, arguments);
1239 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1240 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { polarArc: function() {
1241 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return colProto.polarArc.apply(this, arguments);
1242 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1243 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointAttribs: colProto.pointAttribs
1244 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1245  
1246 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
1247 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
1248 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1249 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
1250 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1251 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
1252 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1253 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var each = H.each,
1254 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { isNumber = H.isNumber,
1255 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { merge = H.merge,
1256 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noop = H.noop,
1257 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pick = H.pick,
1258 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pInt = H.pInt,
1259 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series = H.Series,
1260 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
1261 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { TrackerMixin = H.TrackerMixin;
1262 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /*
1263 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The GaugeSeries class
1264 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1265 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('gauge', 'line', {
1266 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dataLabels: {
1267 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { enabled: true,
1268 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { defer: false,
1269 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { y: 15,
1270 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { borderRadius: 3,
1271 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crop: false,
1272 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { verticalAlign: 'top',
1273 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { zIndex: 2,
1274  
1275 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Presentational
1276 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { borderWidth: 1,
1277 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { borderColor: '#cccccc'
1278  
1279 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1280 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dial: {
1281 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // radius: '80%',
1282 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // baseWidth: 3,
1283 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // topWidth: 1,
1284 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // baseLength: '70%' // of radius
1285 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // rearLength: '10%'
1286  
1287 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // backgroundColor: '#000000',
1288 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // borderColor: '#cccccc',
1289 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // borderWidth: 0
1290  
1291  
1292 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1293 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivot: {
1294 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //radius: 5,
1295  
1296 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //borderWidth: 0
1297 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //borderColor: '#cccccc',
1298 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //backgroundColor: '#000000'
1299  
1300 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1301 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltip: {
1302 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { headerFormat: ''
1303 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1304 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { showInLegend: false
1305  
1306 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Prototype members
1307 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1308 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // chart.angular will be set to true when a gauge series is present, and this will
1309 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // be used on the axes
1310 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { angular: true,
1311 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { directTouch: true, // #5063
1312 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawGraph: noop,
1313 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { fixedBox: true,
1314 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { forceDL: true,
1315 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noSharedTooltip: true,
1316 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { trackerGroups: ['group', 'dataLabelsGroup'],
1317  
1318 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1319 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Calculate paths etc
1320 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1321 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translate: function() {
1322  
1323 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1324 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis = series.yAxis,
1325 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1326 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { center = yAxis.center;
1327  
1328 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.generatePoints();
1329  
1330 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1331  
1332 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var dialOptions = merge(options.dial, point.dial),
1333 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { radius = (pInt(pick(dialOptions.radius, 80)) * center[2]) / 200,
1334 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseLength = (pInt(pick(dialOptions.baseLength, 70)) * radius) / 100,
1335 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rearLength = (pInt(pick(dialOptions.rearLength, 10)) * radius) / 100,
1336 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseWidth = dialOptions.baseWidth || 3,
1337 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { topWidth = dialOptions.topWidth || 1,
1338 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { overshoot = options.overshoot,
1339 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = yAxis.startAngleRad + yAxis.translate(point.y, null, null, null, true);
1340  
1341 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Handle the wrap and overshoot options
1342 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (isNumber(overshoot)) {
1343 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { overshoot = overshoot / 180 * Math.PI;
1344 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = Math.max(yAxis.startAngleRad - overshoot, Math.min(yAxis.endAngleRad + overshoot, rotation));
1345  
1346 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else if (options.wrap === false) {
1347 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = Math.max(yAxis.startAngleRad, Math.min(yAxis.endAngleRad, rotation));
1348 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1349  
1350 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation = rotation * 180 / Math.PI;
1351  
1352 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeType = 'path';
1353 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.shapeArgs = {
1354 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: dialOptions.path || [
1355 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M', -rearLength, -baseWidth / 2,
1356 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1357 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseLength, -baseWidth / 2,
1358 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { radius, -topWidth / 2,
1359 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { radius, topWidth / 2,
1360 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { baseLength, baseWidth / 2, -rearLength, baseWidth / 2,
1361 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'z'
1362 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ],
1363 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateX: center[0],
1364 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateY: center[1],
1365 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: rotation
1366 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { };
1367  
1368 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Positions for data label
1369 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.plotX = center[0];
1370 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.plotY = center[1];
1371 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1372 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1373  
1374 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1375 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Draw the points where each point is one needle
1376 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1377 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawPoints: function() {
1378  
1379 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1380 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { center = series.yAxis.center,
1381 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivot = series.pivot,
1382 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1383 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivotOptions = options.pivot,
1384 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { renderer = series.chart.renderer;
1385  
1386 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1387  
1388 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var graphic = point.graphic,
1389 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs = point.shapeArgs,
1390 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d = shapeArgs.d,
1391 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dialOptions = merge(options.dial, point.dial); // #1233
1392  
1393 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (graphic) {
1394 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { graphic.animate(shapeArgs);
1395 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs.d = d; // animate alters it
1396 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else {
1397 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.graphic = renderer[point.shapeType](shapeArgs)
1398 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .attr({
1399 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: shapeArgs.rotation, // required by VML when animation is false
1400 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { zIndex: 1
1401 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { })
1402 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-dial')
1403 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(series.group);
1404  
1405  
1406 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Presentational attributes
1407 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.graphic.attr({
1408 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stroke: dialOptions.borderColor || 'none',
1409 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'stroke-width': dialOptions.borderWidth || 0,
1410 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { fill: dialOptions.backgroundColor || '#000000'
1411 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1412  
1413 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1414 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1415  
1416 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Add or move the pivot
1417 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (pivot) {
1418 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pivot.animate({ // #1235
1419 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateX: center[0],
1420 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translateY: center[1]
1421 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1422 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } else {
1423 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.pivot = renderer.circle(0, 0, pick(pivotOptions.radius, 5))
1424 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .attr({
1425 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { zIndex: 2
1426 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { })
1427 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-pivot')
1428 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .translate(center[0], center[1])
1429 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(series.group);
1430  
1431  
1432 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Presentational attributes
1433 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.pivot.attr({
1434 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'stroke-width': pivotOptions.borderWidth || 0,
1435 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stroke: pivotOptions.borderColor || '#cccccc',
1436 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { fill: pivotOptions.backgroundColor || '#000000'
1437 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1438  
1439 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1440 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1441  
1442 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1443 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Animate the arrow up from startAngle
1444 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1445 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { animate: function(init) {
1446 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this;
1447  
1448 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (!init) {
1449 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1450 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var graphic = point.graphic;
1451  
1452 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (graphic) {
1453 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // start value
1454 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { graphic.attr({
1455 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: series.yAxis.startAngleRad * 180 / Math.PI
1456 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1457  
1458 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // animate
1459 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { graphic.animate({
1460 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { rotation: point.shapeArgs.rotation
1461 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, series.options.animation);
1462 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1463 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1464  
1465 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // delete this function to allow it only once
1466 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { series.animate = null;
1467 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1468 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1469  
1470 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { render: function() {
1471 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.group = this.plotGroup(
1472 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'group',
1473 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'series',
1474 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.visible ? 'visible' : 'hidden',
1475 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.options.zIndex,
1476 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.chart.seriesGroup
1477 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { );
1478 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series.prototype.render.call(this);
1479 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.group.clip(this.chart.clipRect);
1480 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1481  
1482 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1483 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Extend the basic setData method by running processData and generatePoints immediately,
1484 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * in order to access the points from the legend.
1485 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1486 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setData: function(data, redraw) {
1487 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series.prototype.setData.call(this, data, false);
1488 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.processData();
1489 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.generatePoints();
1490 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (pick(redraw, true)) {
1491 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.chart.redraw();
1492 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1493 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1494  
1495 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1496 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * If the tracking module is loaded, add the point tracker
1497 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1498 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawTracker: TrackerMixin && TrackerMixin.drawTrackerPoint
1499  
1500 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Point members
1501 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1502 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1503 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Don't do any hover colors or anything
1504 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1505 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setState: function(state) {
1506 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { this.state = state;
1507 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1508 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1509  
1510 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
1511 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
1512 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1513 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
1514 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1515 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
1516 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1517 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var each = H.each,
1518 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noop = H.noop,
1519 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pick = H.pick,
1520 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
1521 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes = H.seriesTypes;
1522  
1523 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1524 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * The boxplot series type.
1525 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1526 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @constructor seriesTypes.boxplot
1527 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * @augments seriesTypes.column
1528 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1529 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('boxplot', 'column', {
1530 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { threshold: null,
1531 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltip: {
1532  
1533 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointFormat: '<span style="color:{point.color}">\u25CF</span> <b> {series.name}</b><br/>' + // eslint-disable-line no-dupe-keys
1534 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Maximum: {point.high}<br/>' +
1535 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Upper quartile: {point.q3}<br/>' +
1536 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Median: {point.median}<br/>' +
1537 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Lower quartile: {point.q1}<br/>' +
1538 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'Minimum: {point.low}<br/>'
1539  
1540 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1541 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerLength: '50%',
1542  
1543 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { fillColor: '#ffffff',
1544 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lineWidth: 1,
1545 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //medianColor: null,
1546 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianWidth: 2,
1547 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { states: {
1548 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { hover: {
1549 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { brightness: -0.3
1550 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1551 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1552 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //stemColor: null,
1553 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //stemDashStyle: 'solid'
1554 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //stemWidth: null,
1555  
1556 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { //whiskerColor: null,
1557 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerWidth: 2
1558  
1559  
1560 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, /** @lends seriesTypes.boxplot */ {
1561 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointArrayMap: ['low', 'q1', 'median', 'q3', 'high'], // array point configs are mapped to this
1562 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { toYData: function(point) { // return a plain array for speedy calculation
1563 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return [point.low, point.q1, point.median, point.q3, point.high];
1564 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1565 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointValKey: 'high', // defines the top of the tracker
1566  
1567  
1568 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1569 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Get presentational attributes
1570 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1571 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointAttribs: function(point) {
1572 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var options = this.options,
1573 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { color = (point && point.color) || this.color;
1574  
1575 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return {
1576 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'fill': point.fillColor || options.fillColor || color,
1577 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'stroke': options.lineColor || color,
1578 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'stroke-width': options.lineWidth || 0
1579 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { };
1580 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1581  
1582  
1583 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1584 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Disable data labels for box plot
1585 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1586 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawDataLabels: noop,
1587  
1588 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1589 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Translate data points from raw values x and y to plotX and plotY
1590 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1591 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translate: function() {
1592 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1593 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis = series.yAxis,
1594 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointArrayMap = series.pointArrayMap;
1595  
1596 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.column.prototype.translate.apply(series);
1597  
1598 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // do the translation on each point dimension
1599 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(series.points, function(point) {
1600 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(pointArrayMap, function(key) {
1601 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (point[key] !== null) {
1602 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point[key + 'Plot'] = yAxis.translate(point[key], 0, 1, 0, 1);
1603 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1604 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1605 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1606 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1607  
1608 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1609 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Draw the data points
1610 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1611 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawPoints: function() {
1612 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this, //state = series.state,
1613 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { points = series.points,
1614 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1615 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { chart = series.chart,
1616 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { renderer = chart.renderer,
1617 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q1Plot,
1618 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q3Plot,
1619 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot,
1620 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot,
1621 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot,
1622 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPath,
1623 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr,
1624 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX = 0,
1625 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { boxPath,
1626 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { width,
1627 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left,
1628 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right,
1629 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { halfWidth,
1630 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { doQuartiles = series.doQuartiles !== false, // error bar inherits this series type but doesn't do quartiles
1631 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointWiskerLength,
1632 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerLength = series.options.whiskerLength;
1633  
1634  
1635 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(points, function(point) {
1636  
1637 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var graphic = point.graphic,
1638 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { verb = graphic ? 'animate' : 'attr',
1639 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs = point.shapeArgs; // the box
1640  
1641  
1642 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var boxAttr,
1643 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stemAttr = {},
1644 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskersAttr = {},
1645 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianAttr = {},
1646 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { color = point.color || series.color;
1647  
1648  
1649 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (point.plotY !== undefined) {
1650  
1651 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // crisp vector coordinates
1652 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { width = shapeArgs.width;
1653 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left = Math.floor(shapeArgs.x);
1654 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right = left + width;
1655 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { halfWidth = Math.round(width / 2);
1656 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q1Plot = Math.floor(doQuartiles ? point.q1Plot : point.lowPlot);
1657 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q3Plot = Math.floor(doQuartiles ? point.q3Plot : point.lowPlot);
1658 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot = Math.floor(point.highPlot);
1659 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot = Math.floor(point.lowPlot);
1660  
1661 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (!graphic) {
1662 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.graphic = graphic = renderer.g('point')
1663 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(series.group);
1664  
1665 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.stem = renderer.path()
1666 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-stem')
1667 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
1668  
1669 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (whiskerLength) {
1670 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.whiskers = renderer.path()
1671 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-whisker')
1672 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
1673 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1674 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (doQuartiles) {
1675 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.box = renderer.path(boxPath)
1676 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-box')
1677 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
1678 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1679 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.medianShape = renderer.path(medianPath)
1680 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .addClass('highcharts-boxplot-median')
1681 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { .add(graphic);
1682 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1683  
1684  
1685  
1686  
1687  
1688  
1689 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Stem attributes
1690 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stemAttr.stroke = point.stemColor || options.stemColor || color;
1691 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stemAttr['stroke-width'] = pick(point.stemWidth, options.stemWidth, options.lineWidth);
1692 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stemAttr.dashstyle = point.stemDashStyle || options.stemDashStyle;
1693 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.stem.attr(stemAttr);
1694  
1695 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Whiskers attributes
1696 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (whiskerLength) {
1697 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskersAttr.stroke = point.whiskerColor || options.whiskerColor || color;
1698 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskersAttr['stroke-width'] = pick(point.whiskerWidth, options.whiskerWidth, options.lineWidth);
1699 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.whiskers.attr(whiskersAttr);
1700 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1701  
1702 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (doQuartiles) {
1703 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { boxAttr = series.pointAttribs(point);
1704 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.box.attr(boxAttr);
1705 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1706  
1707  
1708 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Median attributes
1709 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianAttr.stroke = point.medianColor || options.medianColor || color;
1710 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianAttr['stroke-width'] = pick(point.medianWidth, options.medianWidth, options.lineWidth);
1711 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.medianShape.attr(medianAttr);
1712  
1713  
1714  
1715  
1716  
1717 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The stem
1718 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.stem.strokeWidth() % 2) / 2;
1719 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX = left + halfWidth + crispCorr;
1720 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.stem[verb]({
1721 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
1722 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // stem up
1723 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
1724 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, q3Plot,
1725 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1726 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, highPlot,
1727  
1728 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // stem down
1729 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
1730 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, q1Plot,
1731 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1732 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX, lowPlot
1733 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
1734 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1735  
1736 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The box
1737 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (doQuartiles) {
1738 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.box.strokeWidth() % 2) / 2;
1739 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q1Plot = Math.floor(q1Plot) + crispCorr;
1740 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { q3Plot = Math.floor(q3Plot) + crispCorr;
1741 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left += crispCorr;
1742 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right += crispCorr;
1743 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.box[verb]({
1744 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
1745 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
1746 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left, q3Plot,
1747 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1748 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left, q1Plot,
1749 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1750 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right, q1Plot,
1751 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1752 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right, q3Plot,
1753 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1754 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left, q3Plot,
1755 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'z'
1756 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
1757 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1758 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1759  
1760 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The whiskers
1761 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { if (whiskerLength) {
1762 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.whiskers.strokeWidth() % 2) / 2;
1763 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot = highPlot + crispCorr;
1764 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot = lowPlot + crispCorr;
1765 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointWiskerLength = (/%$/).test(whiskerLength) ? halfWidth * parseFloat(whiskerLength) / 100 : whiskerLength / 2;
1766 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.whiskers[verb]({
1767 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
1768 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // High whisker
1769 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
1770 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX - pointWiskerLength,
1771 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot,
1772 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1773 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX + pointWiskerLength,
1774 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { highPlot,
1775  
1776 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Low whisker
1777 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
1778 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX - pointWiskerLength,
1779 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot,
1780 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1781 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispX + pointWiskerLength,
1782 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lowPlot
1783 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
1784 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1785 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1786  
1787 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // The median
1788 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot = Math.round(point.medianPlot);
1789 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { crispCorr = (point.medianShape.strokeWidth() % 2) / 2;
1790 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot = medianPlot + crispCorr;
1791  
1792 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.medianShape[verb]({
1793 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { d: [
1794 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'M',
1795 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { left,
1796 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot,
1797 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { 'L',
1798 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { right,
1799 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { medianPlot
1800 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { ]
1801 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1802 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1803 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1804  
1805 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1806 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { setStackedPoints: noop // #3890
1807  
1808  
1809 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1810  
1811 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
1812 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * End Box plot series code *
1813 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
1814  
1815 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
1816 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
1817 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1818 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
1819 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1820 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
1821 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1822 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var each = H.each,
1823 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { noop = H.noop,
1824 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
1825 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes = H.seriesTypes;
1826  
1827  
1828 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
1829 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Start error bar series code *
1830 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
1831 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('errorbar', 'boxplot', {
1832  
1833 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { color: '#000000',
1834  
1835 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { grouping: false,
1836 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { linkedTo: ':previous',
1837 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltip: {
1838 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'
1839 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1840 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { whiskerWidth: null
1841  
1842 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Prototype members
1843 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1844 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { type: 'errorbar',
1845 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointArrayMap: ['low', 'high'], // array point configs are mapped to this
1846 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { toYData: function(point) { // return a plain array for speedy calculation
1847 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return [point.low, point.high];
1848 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1849 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointValKey: 'high', // defines the top of the tracker
1850 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { doQuartiles: false,
1851 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { drawDataLabels: seriesTypes.arearange ? function() {
1852 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var valKey = this.pointValKey;
1853 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.arearange.prototype.drawDataLabels.call(this);
1854 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Arearange drawDataLabels does not reset point.y to high, but to low after drawing. #4133
1855 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { each(this.data, function(point) {
1856 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point.y = point[valKey];
1857 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { });
1858 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { } : noop,
1859  
1860 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1861 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Get the width and X offset, either on top of the linked series column
1862 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * or standalone
1863 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1864 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { getColumnMetrics: function() {
1865 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { return (this.linkedParent && this.linkedParent.columnMetrics) ||
1866 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.column.prototype.getColumnMetrics.call(this);
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) { * End error bar series code *
1872 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
1873  
1874 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }(Highcharts));
1875 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { (function(H) {
1876 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1877 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * (c) 2010-2017 Torstein Honsi
1878 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *
1879 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * License: www.highcharts.com/license
1880 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1881 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var correctFloat = H.correctFloat,
1882 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { isNumber = H.isNumber,
1883 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pick = H.pick,
1884 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Point = H.Point,
1885 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { Series = H.Series,
1886 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType = H.seriesType,
1887 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes = H.seriesTypes;
1888  
1889 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /* ****************************************************************************
1890 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Start Waterfall series code *
1891 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { *****************************************************************************/
1892 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesType('waterfall', 'column', {
1893 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dataLabels: {
1894 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { inside: true
1895 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { },
1896  
1897 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lineWidth: 1,
1898 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lineColor: '#333333',
1899 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { dashStyle: 'dot',
1900 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { borderColor: '#333333',
1901 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { states: {
1902 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { hover: {
1903 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { lineWidthPlus: 0 // #3126
1904 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1905 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }
1906  
1907  
1908 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // Prototype members
1909 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { }, {
1910 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { pointValKey: 'y',
1911  
1912 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { /**
1913 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { * Translate data points from raw values
1914 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { */
1915 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { translate: function() {
1916 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { var series = this,
1917 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { options = series.options,
1918 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yAxis = series.yAxis,
1919 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { len,
1920 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { i,
1921 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { points,
1922 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { point,
1923 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { shapeArgs,
1924 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stack,
1925 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { y,
1926 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { yValue,
1927 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { previousY,
1928 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { previousIntermediate,
1929 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { range,
1930 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { minPointLength = pick(options.minPointLength, 5),
1931 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { halfMinPointLength = minPointLength / 2,
1932 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { threshold = options.threshold,
1933 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stacking = options.stacking,
1934 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { stackIndicator,
1935 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { tooltipY;
1936  
1937 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { // run column series translate
1938 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { seriesTypes.column.prototype.translate.apply(series);
1939  
1940 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { previousY = previousIntermediate = threshold;
1941 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { points = series.points;
1942  
1943 < 180 - centerSlot) {< 360 - centerSlot) {< 0) { for (i = 0, len = points.length; i < len; i++) {
1944 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { // cache current point object
1945 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { point = points[i];
1946 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { yValue = series.processedYData[i];
1947 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { shapeArgs = point.shapeArgs;
1948  
1949 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { // get current stack
1950 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) { stack = stacking && yAxis.stacks[(series.negStacks && yValue < threshold ? '-' : '') + series.stackKey];
1951 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; stackIndicator = series.getStackIndicator(
1952 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; stackIndicator,
1953 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; point.x,
1954 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; series.index
1955 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; );
1956 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; range = stack ?
1957 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; stack[point.x].points[stackIndicator.key] : [0, yValue];
1958  
1959 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // override point value for sums
1960 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // #3710 Update point does not propagate to sum
1961 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; if (point.isSum) {
1962 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; point.y = correctFloat(yValue);
1963 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; } else if (point.isIntermediateSum) {
1964 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; point.y = correctFloat(yValue - previousIntermediate); // #3840
1965 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; }
1966 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // up points
1967 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; y = Math.max(previousY, previousY + point.y) + range[0];
1968 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y = yAxis.translate(y, 0, 1, 0, 1);
1969  
1970 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // sum points
1971 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; if (point.isSum) {
1972 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y = yAxis.translate(range[1], 0, 1, 0, 1);
1973 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.height = Math.min(yAxis.translate(range[0], 0, 1, 0, 1), yAxis.len) -
1974 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y; // #4256
1975  
1976 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; } else if (point.isIntermediateSum) {
1977 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y = yAxis.translate(range[1], 0, 1, 0, 1);
1978 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.height = Math.min(yAxis.translate(previousIntermediate, 0, 1, 0, 1), yAxis.len) -
1979 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.y;
1980 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; previousIntermediate = range[1];
1981  
1982 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // If it's not the sum point, update previous stack end position and get
1983 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // shape height (#3886)
1984 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; } else {
1985 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; shapeArgs.height = yValue > 0 ?
1986 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; yAxis.translate(previousY, 0, 1, 0, 1) - shapeArgs.y :
1987 < 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);
1988  
1989 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; previousY += stack && stack[point.x] ? stack[point.x].total : yValue;
1990 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; }
1991  
1992 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; // #3952 Negative sum or intermediate sum not rendered correctly
1993 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey]; if (shapeArgs.height < 0) {
1994 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.y += shapeArgs.height;
1995 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.height *= -1;
1996 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
1997  
1998 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.plotY = shapeArgs.y = Math.round(shapeArgs.y) - (series.borderWidth % 2) / 2;
1999 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.height = Math.max(Math.round(shapeArgs.height), 0.001); // #3151
2000 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.yBottom = shapeArgs.y + shapeArgs.height;
2001  
2002 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (shapeArgs.height <= minPointLength && !point.isNull) {
2003 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.height = minPointLength;
2004 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { shapeArgs.y -= halfMinPointLength;
2005 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.plotY = shapeArgs.y;
2006 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (point.y < 0) {
2007 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.minPointLengthOffset = -halfMinPointLength;
2008 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2009 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.minPointLengthOffset = halfMinPointLength;
2010 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2011 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2012 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.minPointLengthOffset = 0;
2013 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2014  
2015 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // Correct tooltip placement (#3014)
2016 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { tooltipY = point.plotY + (point.negative ? shapeArgs.height : 0);
2017  
2018 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (series.chart.inverted) {
2019 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.tooltipPos[0] = yAxis.len - tooltipY;
2020 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2021 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.tooltipPos[1] = tooltipY;
2022 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2023 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2024 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2025  
2026 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2027 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Call default processData then override yData to reflect waterfall's extremes on yAxis
2028 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2029 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { processData: function(force) {
2030 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { var series = this,
2031 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { options = series.options,
2032 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { yData = series.yData,
2033 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { points = series.options.data, // #3710 Update point does not propagate to sum
2034 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point,
2035 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataLength = yData.length,
2036 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { threshold = options.threshold || 0,
2037 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { subSum,
2038 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { sum,
2039 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMin,
2040 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMax,
2041 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { y,
2042 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { i;
2043  
2044 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { sum = subSum = dataMin = dataMax = threshold;
2045  
2046 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { for (i = 0; i < dataLength; i++) {
2047 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { y = yData[i];
2048 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point = points && points[i] ? points[i] : {};
2049  
2050 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (y === 'sum' || point.isSum) {
2051 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { yData[i] = correctFloat(sum);
2052 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else if (y === 'intermediateSum' || point.isIntermediateSum) {
2053 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { yData[i] = correctFloat(subSum);
2054 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { } else {
2055 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { sum += y;
2056 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { subSum += y;
2057 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2058 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMin = Math.min(sum, dataMin);
2059 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { dataMax = Math.max(sum, dataMax);
2060 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2061  
2062 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { Series.prototype.processData.call(this, force);
2063  
2064 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // Record extremes only if stacking was not set:
2065 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (!series.options.stacking) {
2066 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { series.dataMin = dataMin;
2067 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { series.dataMax = dataMax;
2068 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2069 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2070  
2071 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2072 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Return y value or string if point is sum
2073 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2074 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { toYData: function(pt) {
2075 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (pt.isSum) {
2076 < 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
2077 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2078 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (pt.isIntermediateSum) {
2079 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return (pt.x === 0 ? null : 'intermediateSum'); //#3245
2080 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2081 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return pt.y;
2082 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2083  
2084  
2085 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2086 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Postprocess mapping between options and SVG attributes
2087 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2088 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { pointAttribs: function(point, state) {
2089  
2090 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { var upColor = this.options.upColor,
2091 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { attr;
2092  
2093 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // Set or reset up color (#3710, update to negative)
2094 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { if (upColor && !point.options.color) {
2095 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { point.color = point.y > 0 ? upColor : null;
2096 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { }
2097  
2098 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { attr = seriesTypes.column.prototype.pointAttribs.call(this, point, state);
2099  
2100 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // The dashStyle option in waterfall applies to the graph, not
2101 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { // the points
2102 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { delete attr.dashstyle;
2103  
2104 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return attr;
2105 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2106  
2107  
2108 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2109 < 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
2110 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * to set the final path.
2111 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2112 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { getGraphPath: function() {
2113 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { return ['M', 0, 0];
2114 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { },
2115  
2116 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { /**
2117 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { * Draw columns' connector lines
2118 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { */
2119 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { getCrispPath: function() {
2120  
2121 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { var data = this.data,
2122 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { length = data.length,
2123 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { lineWidth = this.graph.strokeWidth() + this.borderWidth,
2124 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { normalizer = Math.round(lineWidth) % 2 / 2,
2125 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { reversedYAxis = this.yAxis.reversed,
2126 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { path = [],
2127 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { prevArgs,
2128 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { pointArgs,
2129 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { i,
2130 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { d;
2131  
2132 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) { for (i = 1; i < length; i++) {
2133 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { pointArgs = data[i].shapeArgs;
2134 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs = data[i - 1].shapeArgs;
2135  
2136 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { d = [
2137 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { 'M',
2138 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs.x + prevArgs.width,
2139 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs.y + data[i - 1].minPointLengthOffset + normalizer,
2140 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { 'L',
2141 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { pointArgs.x,
2142 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { prevArgs.y + data[i - 1].minPointLengthOffset + normalizer
2143 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { ];
2144  
2145 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { if (
2146 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) { (data[i - 1].y < 0 && !reversedYAxis) ||
2147 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || (data[i - 1].y > 0 && reversedYAxis)
2148 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || ) {
2149 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || d[2] += prevArgs.height;
2150 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || d[5] += prevArgs.height;
2151 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || }
2152  
2153 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || path = path.concat(d);
2154 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || }
2155  
2156 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || return path;
2157 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || },
2158  
2159 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || /**
2160 < 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
2161 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || * crisp rendering.
2162 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || */
2163 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || drawGraph: function() {
2164 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || Series.prototype.drawGraph.call(this);
2165 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || this.graph.attr({
2166 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || d: this.getCrispPath()
2167 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || });
2168 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || },
2169  
2170 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || /**
2171 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || * Waterfall has stacking along the x-values too.
2172 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || */
2173 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || setStackedPoints: function() {
2174 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || var series = this,
2175 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || options = series.options,
2176 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || stackedYLength,
2177 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || i;
2178  
2179 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || Series.prototype.setStackedPoints.apply(series, arguments);
2180  
2181 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || stackedYLength = series.stackedYData ? series.stackedYData.length : 0;
2182  
2183 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || // Start from the second point:
2184 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) || for (i = 1; i < stackedYLength; i++) {
2185 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (!options.data[i].isSum &&
2186 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { !options.data[i].isIntermediateSum
2187 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ) {
2188 < 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:
2189 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { series.stackedYData[i] += series.stackedYData[i - 1];
2190 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2191 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2192 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2193  
2194 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2195 < 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.
2196 < 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.
2197 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2198 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getExtremes: function() {
2199 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (this.options.stacking) {
2200 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return Series.prototype.getExtremes.apply(this, arguments);
2201 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2202 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2203  
2204  
2205 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Point members
2206 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2207 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getClassName: function() {
2208 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var className = Point.prototype.getClassName.call(this);
2209  
2210 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (this.isSum) {
2211 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { className += ' highcharts-sum';
2212 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else if (this.isIntermediateSum) {
2213 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { className += ' highcharts-intermediate-sum';
2214 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2215 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return className;
2216 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2217 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2218 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Pass the null test in ColumnSeries.translate.
2219 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2220 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isValid: function() {
2221 < 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;
2222 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2223  
2224 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2225  
2226 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /* ****************************************************************************
2227 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * End Waterfall series code *
2228 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *****************************************************************************/
2229  
2230 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }(Highcharts));
2231 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { (function(H) {
2232 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2233 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * (c) 2010-2017 Torstein Honsi
2234 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2235 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * License: www.highcharts.com/license
2236 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2237 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var LegendSymbolMixin = H.LegendSymbolMixin,
2238 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { noop = H.noop,
2239 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Series = H.Series,
2240 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType = H.seriesType,
2241 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes = H.seriesTypes;
2242 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2243 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * The polygon series prototype
2244 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2245 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType('polygon', 'scatter', {
2246 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { marker: {
2247 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { enabled: false,
2248 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { states: {
2249 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { hover: {
2250 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { enabled: false
2251 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2252 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2253 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2254 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { stickyTracking: false,
2255 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { tooltip: {
2256 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { followPointer: true,
2257 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointFormat: ''
2258 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2259 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { trackByArea: true
2260  
2261 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Prototype members
2262 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2263 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { type: 'polygon',
2264 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getGraphPath: function() {
2265  
2266 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var graphPath = Series.prototype.getGraphPath.call(this),
2267 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i = graphPath.length + 1;
2268  
2269 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Close all segments
2270 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { while (i--) {
2271 < 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) {
2272 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { graphPath.splice(i, 0, 'z');
2273 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2274 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2275 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.areaPath = graphPath;
2276 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return graphPath;
2277 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2278 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { drawGraph: function() {
2279  
2280 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.options.fillColor = this.color; // Hack into the fill logic in area.drawGraph
2281  
2282 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes.area.prototype.drawGraph.call(this);
2283 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2284 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { drawLegendSymbol: LegendSymbolMixin.drawRectangle,
2285 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { drawTracker: Series.prototype.drawTracker,
2286 < 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)
2287 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2288  
2289 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }(Highcharts));
2290 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { (function(H) {
2291 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2292 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * (c) 2010-2017 Torstein Honsi
2293 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2294 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * License: www.highcharts.com/license
2295 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2296 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var arrayMax = H.arrayMax,
2297 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { arrayMin = H.arrayMin,
2298 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Axis = H.Axis,
2299 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { color = H.color,
2300 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each = H.each,
2301 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isNumber = H.isNumber,
2302 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { noop = H.noop,
2303 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pick = H.pick,
2304 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pInt = H.pInt,
2305 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Point = H.Point,
2306 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Series = H.Series,
2307 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType = H.seriesType,
2308 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes = H.seriesTypes;
2309  
2310 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /* ****************************************************************************
2311 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Start Bubble series code *
2312 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *****************************************************************************/
2313  
2314 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesType('bubble', 'scatter', {
2315 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dataLabels: {
2316 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { formatter: function() { // #2945
2317 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return this.point.z;
2318 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2319 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { inside: true,
2320 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { verticalAlign: 'middle'
2321 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2322 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // displayNegative: true,
2323 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { marker: {
2324  
2325 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // fillOpacity: 0.5,
2326 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { lineColor: null, // inherit from series.color
2327 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { lineWidth: 1,
2328  
2329 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Avoid offset in Point.setState
2330 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius: null,
2331 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { states: {
2332 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { hover: {
2333 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radiusPlus: 0
2334 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2335 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2336 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { symbol: 'circle'
2337 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2338 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { minSize: 8,
2339 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { maxSize: '20%',
2340 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // negativeColor: null,
2341 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // sizeBy: 'area'
2342 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { softThreshold: false,
2343 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { states: {
2344 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { hover: {
2345 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { halo: {
2346 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { size: 5
2347 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2348 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2349 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2350 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { tooltip: {
2351 < 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}'
2352 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2353 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { turboThreshold: 0,
2354 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zThreshold: 0,
2355 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zoneAxis: 'z'
2356  
2357 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Prototype members
2358 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2359 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointArrayMap: ['y', 'z'],
2360 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { parallelArrays: ['x', 'y', 'z'],
2361 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { trackerGroups: ['group', 'dataLabelsGroup'],
2362 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { specialGroup: 'group', // To allow clipping (#6296)
2363 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { bubblePadding: true,
2364 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zoneAxis: 'z',
2365 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { directTouch: true,
2366  
2367  
2368 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointAttribs: function(point, state) {
2369 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var markerOptions = this.options.marker,
2370 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { fillOpacity = pick(markerOptions.fillOpacity, 0.5),
2371 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { attr = Series.prototype.pointAttribs.call(this, point, state);
2372  
2373 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (fillOpacity !== 1) {
2374 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { attr.fill = color(attr.fill).setOpacity(fillOpacity).get('rgba');
2375 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2376  
2377 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return attr;
2378 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2379  
2380  
2381 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2382 < 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
2383 < 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
2384 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * accordance with the point sizes.
2385 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2386 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { getRadii: function(zMin, zMax, minSize, maxSize) {
2387 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var len,
2388 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i,
2389 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pos,
2390 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zData = this.zData,
2391 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radii = [],
2392 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { options = this.options,
2393 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { sizeByArea = options.sizeBy !== 'width',
2394 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zThreshold = options.zThreshold,
2395 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zRange = zMax - zMin,
2396 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { value,
2397 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius;
2398  
2399 < 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
2400 < 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++) {
2401  
2402 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { value = zData[i];
2403  
2404 < 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
2405 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // of the bubble.
2406 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (options.sizeByAbsoluteValue && value !== null) {
2407 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { value = Math.abs(value - zThreshold);
2408 < 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));
2409 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin = 0;
2410 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2411  
2412 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (value === null) {
2413 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = null;
2414 < 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
2415 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else if (value < zMin) {
2416 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = minSize / 2 - 1;
2417 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else {
2418 < 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
2419 < 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;
2420  
2421 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (sizeByArea && pos >= 0) {
2422 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pos = Math.sqrt(pos);
2423 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2424 < 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;
2425 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2426 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radii.push(radius);
2427 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2428 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.radii = radii;
2429 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2430  
2431 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2432 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * Perform animation on the bubbles
2433 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2434 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { animate: function(init) {
2435 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var animation = this.options.animation;
2436  
2437 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (!init) { // run the animation
2438 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(this.points, function(point) {
2439 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var graphic = point.graphic,
2440 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { animationTarget;
2441  
2442 < 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
2443 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { animationTarget = {
2444 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { x: graphic.x,
2445 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { y: graphic.y,
2446 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: graphic.width,
2447 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: graphic.height
2448 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
2449  
2450 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Start values
2451 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { graphic.attr({
2452 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { x: point.plotX,
2453 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { y: point.plotY,
2454 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: 1,
2455 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: 1
2456 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2457  
2458 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Run animation
2459 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { graphic.animate(animationTarget, animation);
2460 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2461 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2462  
2463 < 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
2464 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this.animate = null;
2465 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2466 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2467  
2468 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2469 < 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
2470 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2471 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { translate: function() {
2472  
2473 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var i,
2474 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { data = this.data,
2475 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point,
2476 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius,
2477 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radii = this.radii;
2478  
2479 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Run the parent method
2480 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes.scatter.prototype.translate.call(this);
2481  
2482 < 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
2483 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i = data.length;
2484  
2485 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { while (i--) {
2486 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point = data[i];
2487 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = radii ? radii[i] : 0; // #1737
2488  
2489 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (isNumber(radius) && radius >= this.minPxSize / 2) {
2490 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Shape arguments
2491 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point.marker = H.extend(point.marker, {
2492 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius: radius,
2493 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: 2 * radius,
2494 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: 2 * radius
2495 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2496  
2497 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Alignment box for the data label
2498 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { point.dlBox = {
2499 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { x: point.plotX - radius,
2500 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { y: point.plotY - radius,
2501 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { width: 2 * radius,
2502 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { height: 2 * radius
2503 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
2504 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { } else { // below zThreshold
2505 < 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
2506 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2507 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2508 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2509  
2510 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { alignDataLabel: seriesTypes.column.prototype.alignDataLabel,
2511 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { buildKDTree: noop,
2512 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { applyZones: noop
2513  
2514 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Point class
2515 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }, {
2516 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { haloPath: function(size) {
2517 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return Point.prototype.haloPath.call(
2518 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { this,
2519 < 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
2520 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { );
2521 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { },
2522 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ttBelow: false
2523 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2524  
2525 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2526 < 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
2527 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * necessary to avoid the bubbles to overflow.
2528 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2529 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Axis.prototype.beforePadding = function() {
2530 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var axis = this,
2531 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { axisLength = this.len,
2532 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { chart = this.chart,
2533 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMin = 0,
2534 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMax = axisLength,
2535 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isXAxis = this.isXAxis,
2536 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dataKey = isXAxis ? 'xData' : 'yData',
2537 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { min = this.min,
2538 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { extremes = {},
2539 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { smallestSize = Math.min(chart.plotWidth, chart.plotHeight),
2540 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin = Number.MAX_VALUE,
2541 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMax = -Number.MAX_VALUE,
2542 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { range = this.max - min,
2543 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { transA = axisLength / range,
2544 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { activeSeries = [];
2545  
2546 < 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
2547 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(this.series, function(series) {
2548  
2549 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var seriesOptions = series.options,
2550 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zData;
2551  
2552 < 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)) {
2553  
2554 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Correction for #1673
2555 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { axis.allowZoomOutside = true;
2556  
2557 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Cache it
2558 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { activeSeries.push(series);
2559  
2560 < 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
2561  
2562 < 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
2563 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each(['minSize', 'maxSize'], function(prop) {
2564 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var length = seriesOptions[prop],
2565 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { isPercent = /%$/.test(length);
2566  
2567 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { length = pInt(length);
2568 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { extremes[prop] = isPercent ?
2569 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { smallestSize * length / 100 :
2570 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { length;
2571  
2572 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2573 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { series.minPxSize = extremes.minSize;
2574 < 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
2575 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // always visible. #5873
2576 < 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);
2577  
2578 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { // Find the min and max Z
2579 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zData = series.zData;
2580 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (zData.length) { // #1735
2581 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin = pick(seriesOptions.zMin, Math.min(
2582 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { zMin,
2583 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Math.max(
2584 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { arrayMin(zData),
2585 < 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
2586 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { )
2587 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ));
2588 < 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)));
2589 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
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++) { }
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++) { each(activeSeries, function(series) {
2595  
2596 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var data = series[dataKey],
2597 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { i = data.length,
2598 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius;
2599  
2600 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (isXAxis) {
2601 < 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);
2602 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2603  
2604 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (range > 0) {
2605 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { while (i--) {
2606 < 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) {
2607 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { radius = series.radii[i];
2608 < 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);
2609 < 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);
2610 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
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++) { }
2613 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2614  
2615 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (activeSeries.length && range > 0 && !this.isLog) {
2616 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pxMax -= axisLength;
2617 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { transA *= (axisLength + pxMin - pxMax) / axisLength;
2618 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { each([
2619 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ['min', 'userMin', pxMin],
2620 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ['max', 'userMax', pxMax]
2621 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ], function(keys) {
2622 < 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) {
2623 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { axis[keys[0]] += keys[2] / transA;
2624 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }
2625 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
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  
2629 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /* ****************************************************************************
2630 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * End Bubble series code *
2631 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *****************************************************************************/
2632  
2633 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { }(Highcharts));
2634 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { (function(H) {
2635 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2636 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * (c) 2010-2017 Torstein Honsi
2637 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { *
2638 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * License: www.highcharts.com/license
2639 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2640  
2641 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2642 < 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
2643 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * gathered in RadialAxes.js.
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++) { */
2646  
2647 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var each = H.each,
2648 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pick = H.pick,
2649 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Pointer = H.Pointer,
2650 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { Series = H.Series,
2651 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesTypes = H.seriesTypes,
2652 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { wrap = H.wrap,
2653  
2654 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesProto = Series.prototype,
2655 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { pointerProto = Pointer.prototype,
2656 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { colProto;
2657  
2658 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2659 < 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
2660 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2661 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesProto.searchPointByAngle = function(e) {
2662 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var series = this,
2663 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { chart = series.chart,
2664 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { xAxis = series.xAxis,
2665 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { center = xAxis.pane.center,
2666 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotX = e.chartX - center[0] - chart.plotLeft,
2667 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotY = e.chartY - center[1] - chart.plotTop;
2668  
2669 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { return this.searchKDTree({
2670 < 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))
2671 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { });
2672  
2673 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { };
2674  
2675 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { /**
2676 < 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.
2677 < 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
2678 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { * allows short recurence
2679 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2680 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { seriesProto.getConnectors = function(segment, index, calculateNeighbours, connectEnds) {
2681  
2682 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { var i,
2683 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { prevPointInd,
2684 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextPointInd,
2685 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { previousPoint,
2686 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextPoint,
2687 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { previousX,
2688 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { previousY,
2689 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextX,
2690 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { nextY,
2691 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotX,
2692 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { plotY,
2693 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { ret,
2694 < 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;
2695 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { denom = smoothing + 1,
2696 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { leftContX,
2697 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { leftContY,
2698 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { rightContX,
2699 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { rightContY,
2700 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dLControlPoint, //distance left control point
2701 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { dRControlPoint,
2702 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { leftContAngle,
2703 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { rightContAngle,
2704 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { jointAngle,
2705 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { addedNumber = connectEnds ? 1 : 0;
2706  
2707 < 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.
2708 < 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.
2709 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { */
2710 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) { if (index >= 0 && index <= segment.length - 1) {
2711 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) { i = index;
2712 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) { } else if (index < 0) {
2713 < 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;
2714 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { } else {
2715 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { i = 0;
2716 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) { }
2717  
2718 < 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;
2719 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2720 < 180 - centerSlot) {< 360 - centerSlot) {< 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];
2721 < 180 - centerSlot) {< 360 - centerSlot) {< 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];
2722 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2723 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2724 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2725 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2726 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2727 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2728 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2729 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2730 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2731 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2732 < 180 - centerSlot) {< 360 - centerSlot) {< 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));
2733 < 180 - centerSlot) {< 360 - centerSlot) {< 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));
2734 < 180 - centerSlot) {< 360 - centerSlot) {< 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);
2735 < 180 - centerSlot) {< 360 - centerSlot) {< 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);
2736 < 180 - centerSlot) {< 360 - centerSlot) {< 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);
2737 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2738 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2739 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2740 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
2741 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2742 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2743 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2744 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2745 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2746  
2747 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2748  
2749 < 180 - centerSlot) {< 360 - centerSlot) {< 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 = {
2750 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2751 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2752 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2753 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2754 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2755 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2756 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; };
2757  
2758 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2759 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2760 < 180 - centerSlot) {< 360 - centerSlot) {< 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);
2761 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
2762 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2763 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; };
2764  
2765 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; /**
2766 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2767 < 180 - centerSlot) {< 360 - centerSlot) {< 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.
2768 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; */
2769 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2770 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2771 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2772 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2773 < 180 - centerSlot) {< 360 - centerSlot) {< 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 {
2774 < 180 - centerSlot) {< 360 - centerSlot) {< 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';
2775 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
2776 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; }
2777 < 180 - centerSlot) {< 360 - centerSlot) {< 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);
2778 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; });
2779  
2780 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; /**
2781 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2782 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2783 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1; */
2784 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2785 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2786 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2787 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2788 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2789 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2790  
2791 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2792 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2793 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2794  
2795 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2796 < 180 - centerSlot) {< 360 - centerSlot) {< 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);
2797 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2798 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2799  
2800 < 180 - centerSlot) {< 360 - centerSlot) {< 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,
2801 < 180 - centerSlot) {< 360 - centerSlot) {< 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.
2802 < 180 - centerSlot) {< 360 - centerSlot) {< 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) {
2803 < 180 - centerSlot) {< 360 - centerSlot) {< 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;
2804 < 180 - centerSlot) {< 360 - centerSlot) {< 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
2805 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2806 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2807 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2808 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
2809 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2810 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2811 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / };
2812  
2813 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2814 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / /**
2815 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2816 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / */
2817 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2818 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2819 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2820  
2821 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2822 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2823 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2824 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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];
2825 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2826 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2827 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = [
2828 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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',
2829 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2830 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2831 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2832 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2833 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2834 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2835 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / ];
2836 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2837 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
2838 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2839 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2840 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2841 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / });
2842  
2843 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.
2844 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2845 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2846 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2847 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2848  
2849 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / /**
2850 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2851 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2852 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.
2853 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / */
2854 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2855 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2856 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2857 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2858  
2859 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2860 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2861  
2862 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2863 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2864 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2865  
2866 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2867 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2868 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2869  
2870 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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--) {
2871 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2872 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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]);
2873 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2874 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2875 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / }
2876 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / });
2877  
2878 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / /**
2879 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2880 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.
2881 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< len; i++) {< threshold ? '-' : '') + series.stackKey];< 0) {< length; i++) {< 0 && !reversedYAxis) ||< stackedYLength; i++) {<= segment.length - 1) {< 0) {< 0) ? segment.length - (1 + addedNumber) : i - 1;< 0) { / */
2882 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2883 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2884 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2885 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2886 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2887  
2888 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2889 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2890 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2891  
2892 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2893 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) {
2894 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2895 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2896 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2897 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2898 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2899 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2900 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2901 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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]);
2902 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2903 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2904  
2905 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2906 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2907 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2908 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2909 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2910 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
2911 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2912  
2913 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2914 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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));
2915  
2916 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2917 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.
2918 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { */
2919 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2920 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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();
2921 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2922 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2923 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
2924  
2925  
2926 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2927 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2928 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2929 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2930 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2931 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2932 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2933 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2934 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2935  
2936 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2937 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2938  
2939 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2940 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.
2941 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2942  
2943 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2944 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = {};
2945 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2946  
2947 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2948 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2949  
2950 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2951 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = {
2952 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2953 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2954 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2955 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2956 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { };
2957  
2958 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2959 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2960 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2961 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2962 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2963  
2964 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2965 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
2966 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = {
2967 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2968 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2969 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2970 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2971 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { };
2972 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2973 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2974 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2975 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2976  
2977 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2978 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2979 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2980 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2981  
2982 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2983 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
2984 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2985 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2986 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
2987  
2988 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
2989 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
2990  
2991  
2992 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2993  
2994 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2995  
2996 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
2997 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
2998 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
2999  
3000 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(
3001 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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],
3002 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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],
3003 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3004 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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, {
3005 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3006 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3007 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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)
3008 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3009 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { );
3010 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { };
3011  
3012 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { /**
3013 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3014 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { */
3015 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
3016  
3017  
3018 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { /**
3019 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3020 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { */
3021 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3022  
3023 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3024 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3025 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3026 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3027 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3028 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3029  
3030 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3031  
3032 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3033 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
3034  
3035 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3036 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3037 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3038 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3039 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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--) {
3040 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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];
3041 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3042 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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';
3043 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = {
3044 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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)
3045 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { };
3046 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3047 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
3048 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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];
3049 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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];
3050 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3051 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3052 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3053  
3054  
3055 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { /**
3056 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.
3057 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { */
3058 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3059  
3060 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3061 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3062 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3063 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3064  
3065 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3066 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3067 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3068 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = 'left'; // right hemisphere
3069 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 if (angle > 200 && angle < 340) {
3070 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = 'right'; // left hemisphere
3071 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
3072 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = 'center'; // top or bottom
3073 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3074 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { options.align = align;
3075 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3076 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.verticalAlign === null) {
3077 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 < 45 || angle > 315) {
3078 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = 'bottom'; // top part
3079 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 if (angle > 135 && angle < 225) {
3080 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = 'top'; // bottom part
3081 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
3082 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = 'middle'; // left or right
3083 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3084 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { options.verticalAlign = verticalAlign;
3085 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3086  
3087 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { seriesProto.alignDataLabel.call(this, point, dataLabel, options, alignTo, isNew);
3088 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
3089 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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, point, dataLabel, options, alignTo, isNew);
3090 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3091  
3092 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3093 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3094  
3095 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { /**
3096 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 getCoordinates to prepare for polar axis values
3097 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { */
3098 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(pointerProto, 'getCoordinates', function(proceed, e) {
3099 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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,
3100 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { ret = {
3101 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { xAxis: [],
3102 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { yAxis: []
3103 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { };
3104  
3105 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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) {
3106  
3107 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(chart.axes, function(axis) {
3108 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 isXAxis = axis.isXAxis,
3109 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 = axis.center,
3110 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { x = e.chartX - center[0] - chart.plotLeft,
3111 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { y = e.chartY - center[1] - chart.plotTop;
3112  
3113 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { ret[isXAxis ? 'xAxis' : 'yAxis'].push({
3114 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { axis: axis,
3115 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { value: axis.translate(
3116 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { isXAxis ?
3117 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { Math.PI - Math.atan2(x, y) : // angle
3118 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)), // distance from center
3119 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { true
3120 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { )
3121 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3122 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3123  
3124 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 {
3125 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { ret = proceed.call(this, e);
3126 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3127  
3128 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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;
3129 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3130  
3131 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(H.Chart.prototype, 'getAxes', function(proceed) {
3132  
3133 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.pane) {
3134 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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.pane = [];
3135 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }
3136 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(H.splat(this.options.pane), function(paneOptions) {
3137 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { new H.Pane( // eslint-disable-line no-new
3138 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { paneOptions,
3139 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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
3140 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { );
3141 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
3142  
3143 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
3144 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3145  
3146 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(H.Chart.prototype, 'drawChartBox', function(proceed) {
3147 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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);
3148  
3149 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(this.pane, function(pane) {
3150 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { pane.render();
3151 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3152 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3153  
3154 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { /**
3155 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 chart.get to also search in panes. Used internally in responsiveness
3156 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 chart.update.
3157 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { */
3158 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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(H.Chart.prototype, 'get', function(proceed, id) {
3159 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 H.find(this.pane, function(pane) {
3160 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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 pane.options.id === id;
3161 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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, id);
3162 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { });
3163  
3164 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) { }(Highcharts));
3165 < 180 - centerSlot) {< 360 - centerSlot) {< 0) {< 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++) {}));