highcharts-rails 5.0.14 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.markdown +60 -0
  3. data/Rakefile +54 -5
  4. data/app/assets/images/highcharts/earth.svg +432 -0
  5. data/app/assets/javascripts/highcharts.js +5103 -3147
  6. data/app/assets/javascripts/highcharts/highcharts-3d.js +930 -277
  7. data/app/assets/javascripts/highcharts/highcharts-more.js +1374 -249
  8. data/app/assets/javascripts/highcharts/lib/canvg.js +3073 -0
  9. data/app/assets/javascripts/highcharts/lib/jspdf.js +16624 -0
  10. data/app/assets/javascripts/highcharts/lib/rgbcolor.js +299 -0
  11. data/app/assets/javascripts/highcharts/lib/svg2pdf.js +3488 -0
  12. data/app/assets/javascripts/highcharts/modules/accessibility.js +654 -212
  13. data/app/assets/javascripts/highcharts/modules/annotations.js +1552 -274
  14. data/app/assets/javascripts/highcharts/modules/boost-canvas.js +773 -0
  15. data/app/assets/javascripts/highcharts/modules/boost.js +636 -210
  16. data/app/assets/javascripts/highcharts/modules/broken-axis.js +2 -2
  17. data/app/assets/javascripts/highcharts/modules/bullet.js +364 -0
  18. data/app/assets/javascripts/highcharts/modules/data.js +766 -38
  19. data/app/assets/javascripts/highcharts/modules/drag-panes.js +588 -0
  20. data/app/assets/javascripts/highcharts/modules/drilldown.js +106 -36
  21. data/app/assets/javascripts/highcharts/modules/export-data.js +597 -0
  22. data/app/assets/javascripts/highcharts/modules/exporting.js +424 -162
  23. data/app/assets/javascripts/highcharts/modules/funnel.js +144 -22
  24. data/app/assets/javascripts/highcharts/modules/gantt.js +1154 -0
  25. data/app/assets/javascripts/highcharts/modules/grid-axis.js +1 -1
  26. data/app/assets/javascripts/highcharts/modules/heatmap.js +406 -80
  27. data/app/assets/javascripts/highcharts/modules/histogram-bellcurve.js +513 -0
  28. data/app/assets/javascripts/highcharts/modules/item-series.js +126 -0
  29. data/app/assets/javascripts/highcharts/modules/no-data-to-display.js +31 -13
  30. data/app/assets/javascripts/highcharts/modules/offline-exporting.js +179 -57
  31. data/app/assets/javascripts/highcharts/modules/oldie.js +1378 -0
  32. data/app/assets/javascripts/highcharts/modules/overlapping-datalabels.js +8 -6
  33. data/app/assets/javascripts/highcharts/modules/parallel-coordinates.js +494 -0
  34. data/app/assets/javascripts/highcharts/modules/pareto.js +275 -0
  35. data/app/assets/javascripts/highcharts/modules/sankey.js +641 -0
  36. data/app/assets/javascripts/highcharts/modules/series-label.js +355 -145
  37. data/app/assets/javascripts/highcharts/modules/solid-gauge.js +122 -1
  38. data/app/assets/javascripts/highcharts/modules/static-scale.js +64 -0
  39. data/app/assets/javascripts/highcharts/modules/stock.js +1944 -676
  40. data/app/assets/javascripts/highcharts/modules/streamgraph.js +139 -0
  41. data/app/assets/javascripts/highcharts/modules/sunburst.js +2403 -0
  42. data/app/assets/javascripts/highcharts/modules/tilemap.js +1199 -0
  43. data/app/assets/javascripts/highcharts/modules/treemap.js +538 -134
  44. data/app/assets/javascripts/highcharts/modules/variable-pie.js +490 -0
  45. data/app/assets/javascripts/highcharts/modules/variwide.js +283 -0
  46. data/app/assets/javascripts/highcharts/modules/vector.js +294 -0
  47. data/app/assets/javascripts/highcharts/modules/windbarb.js +490 -0
  48. data/app/assets/javascripts/highcharts/modules/wordcloud.js +681 -0
  49. data/app/assets/javascripts/highcharts/modules/xrange.js +615 -0
  50. data/app/assets/javascripts/highcharts/themes/avocado.js +54 -0
  51. data/app/assets/javascripts/highcharts/themes/dark-blue.js +6 -6
  52. data/app/assets/javascripts/highcharts/themes/dark-green.js +6 -6
  53. data/app/assets/javascripts/highcharts/themes/dark-unica.js +6 -6
  54. data/app/assets/javascripts/highcharts/themes/gray.js +14 -10
  55. data/app/assets/javascripts/highcharts/themes/grid-light.js +6 -6
  56. data/app/assets/javascripts/highcharts/themes/grid.js +7 -5
  57. data/app/assets/javascripts/highcharts/themes/sand-signika.js +8 -7
  58. data/app/assets/javascripts/highcharts/themes/skies.js +15 -9
  59. data/app/assets/javascripts/highcharts/themes/sunset.js +53 -0
  60. data/app/assets/stylesheets/highcharts/highcharts.css +802 -0
  61. data/app/assets/stylesheets/highcharts/highcharts.scss +665 -0
  62. data/lib/highcharts/version.rb +1 -1
  63. metadata +31 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v5.0.14 (2017-07-28)
2
+ * @license Highcharts JS v6.0.0 (2017-10-04)
3
3
  *
4
4
  * (c) 2009-2016 Torstein Honsi
5
5
  *
@@ -13,6 +13,83 @@
13
13
  factory(Highcharts);
14
14
  }
15
15
  }(function(Highcharts) {
16
+ (function(H) {
17
+ /**
18
+ * (c) 2010-2017 Torstein Honsi
19
+ *
20
+ * License: www.highcharts.com/license
21
+ */
22
+ var deg2rad = H.deg2rad,
23
+ isNumber = H.isNumber,
24
+ pick = H.pick,
25
+ relativeLength = H.relativeLength;
26
+ H.CenteredSeriesMixin = {
27
+ /**
28
+ * Get the center of the pie based on the size and center options relative to the
29
+ * plot area. Borrowed by the polar and gauge series types.
30
+ */
31
+ getCenter: function() {
32
+
33
+ var options = this.options,
34
+ chart = this.chart,
35
+ slicingRoom = 2 * (options.slicedOffset || 0),
36
+ handleSlicingRoom,
37
+ plotWidth = chart.plotWidth - 2 * slicingRoom,
38
+ plotHeight = chart.plotHeight - 2 * slicingRoom,
39
+ centerOption = options.center,
40
+ positions = [pick(centerOption[0], '50%'), pick(centerOption[1], '50%'), options.size || '100%', options.innerSize || 0],
41
+ smallestSize = Math.min(plotWidth, plotHeight),
42
+ i,
43
+ value;
44
+
45
+ for (i = 0; i < 4; ++i) {
46
+ value = positions[i];
47
+ handleSlicingRoom = i < 2 || (i === 2 && /%$/.test(value));
48
+
49
+ // i == 0: centerX, relative to width
50
+ // i == 1: centerY, relative to height
51
+ // i == 2: size, relative to smallestSize
52
+ // i == 3: innerSize, relative to size
53
+ positions[i] = relativeLength(value, [plotWidth, plotHeight, smallestSize, positions[2]][i]) +
54
+ (handleSlicingRoom ? slicingRoom : 0);
55
+
56
+ }
57
+ // innerSize cannot be larger than size (#3632)
58
+ if (positions[3] > positions[2]) {
59
+ positions[3] = positions[2];
60
+ }
61
+ return positions;
62
+ },
63
+ /**
64
+ * getStartAndEndRadians - Calculates start and end angles in radians.
65
+ * Used in series types such as pie and sunburst.
66
+ *
67
+ * @param {Number} start Start angle in degrees.
68
+ * @param {Number} end Start angle in degrees.
69
+ * @return {object} Returns an object containing start and end angles as
70
+ * radians.
71
+ */
72
+ getStartAndEndRadians: function getStartAndEndRadians(start, end) {
73
+ var startAngle = isNumber(start) ? start : 0, // must be a number
74
+ endAngle = (
75
+ (
76
+ isNumber(end) && // must be a number
77
+ end > startAngle && // must be larger than the start angle
78
+ // difference must be less than 360 degrees
79
+ (end - startAngle) < 360
80
+ ) ?
81
+ end :
82
+ startAngle + 360
83
+ ),
84
+ correction = -90;
85
+ return {
86
+ start: deg2rad * (startAngle + correction),
87
+ end: deg2rad * (endAngle + correction)
88
+ };
89
+ }
90
+ };
91
+
92
+ }(Highcharts));
16
93
  (function(H) {
17
94
  /**
18
95
  * (c) 2010-2017 Torstein Honsi
@@ -142,19 +219,20 @@
142
219
  },
143
220
 
144
221
  /**
145
- * The default options object
222
+ * The pane serves as a container for axes and backgrounds for circular
223
+ * gauges and polar charts.
224
+ * @since 2.3.0
146
225
  * @optionparent pane
147
226
  */
148
227
  defaultOptions: {
149
- // background: {conditional},
150
-
151
228
  /**
152
229
  * The center of a polar chart or angular gauge, given as an array
153
230
  * of [x, y] positions. Positions can be given as integers that transform
154
231
  * to pixels, or as percentages of the plot area size.
155
232
  *
156
233
  * @type {Array<String|Number>}
157
- * @sample {highcharts} highcharts/demo/gauge-vu-meter/ Two gauges with different center
234
+ * @sample {highcharts} highcharts/demo/gauge-vu-meter/
235
+ * Two gauges with different center
158
236
  * @default ["50%", "50%"]
159
237
  * @since 2.3.0
160
238
  * @product highcharts
@@ -177,20 +255,45 @@
177
255
  * where 0 is north. Defaults to 0.
178
256
  *
179
257
  * @type {Number}
180
- * @sample {highcharts} highcharts/demo/gauge-vu-meter/ VU-meter with custom start and end angle
258
+ * @sample {highcharts} highcharts/demo/gauge-vu-meter/
259
+ * VU-meter with custom start and end angle
181
260
  * @since 2.3.0
182
261
  * @product highcharts
183
262
  */
184
263
  startAngle: 0
185
- //endAngle: startAngle + 360
264
+
265
+ /**
266
+ * The end angle of the polar X axis or gauge value axis, given in degrees
267
+ * where 0 is north. Defaults to [startAngle](#pane.startAngle) + 360.
268
+ *
269
+ * @type {Number}
270
+ * @sample {highcharts} highcharts/demo/gauge-vu-meter/
271
+ * VU-meter with custom start and end angle
272
+ * @since 2.3.0
273
+ * @product highcharts
274
+ * @apioption pane.endAngle
275
+ */
186
276
  },
187
277
 
188
278
  /**
189
- * The default background options
279
+ * An array of background items for the pane.
280
+ * @type Array.<Object>
281
+ * @sample {highcharts} highcharts/demo/gauge-speedometer/
282
+ * Speedometer gauge with multiple backgrounds
190
283
  * @optionparent pane.background
191
284
  */
192
285
  defaultBackgroundOptions: {
193
- //className: 'highcharts-pane',
286
+ /**
287
+ * The class name for this background.
288
+ *
289
+ * @type {String}
290
+ * @sample {highcharts} highcharts/css/pane/ Panes styled by CSS
291
+ * @sample {highstock} highcharts/css/pane/ Panes styled by CSS
292
+ * @sample {highmaps} highcharts/css/pane/ Panes styled by CSS
293
+ * @default highcharts-pane
294
+ * @since 5.0.0
295
+ * @apioption pane.background.className
296
+ */
194
297
 
195
298
  /**
196
299
  * Tha shape of the pane background. When `solid`, the background
@@ -234,30 +337,12 @@
234
337
  * @product highcharts
235
338
  */
236
339
  backgroundColor: {
237
-
238
- /**
239
- */
240
-
241
- /**
242
- */
243
-
244
- /**
245
- */
246
-
247
- /**
248
- */
249
-
250
- /**
251
- */
252
340
  linearGradient: {
253
341
  x1: 0,
254
342
  y1: 0,
255
343
  x2: 0,
256
344
  y2: 1
257
345
  },
258
-
259
- /**
260
- */
261
346
  stops: [
262
347
  [0, '#ffffff'],
263
348
  [1, '#e6e6e6']
@@ -265,8 +350,7 @@
265
350
  },
266
351
 
267
352
 
268
- /**
269
- */
353
+ /** @ignore */
270
354
  from: -Number.MAX_VALUE, // corrected to axis min
271
355
 
272
356
  /**
@@ -280,8 +364,7 @@
280
364
  */
281
365
  innerRadius: 0,
282
366
 
283
- /**
284
- */
367
+ /** @ignore */
285
368
  to: Number.MAX_VALUE, // corrected to axis max
286
369
 
287
370
  /**
@@ -492,6 +575,12 @@
492
575
  innerR: 0
493
576
  }
494
577
  );
578
+
579
+ // Bounds used to position the plotLine label next to the line
580
+ // (#7117)
581
+ path.xBounds = [this.left + center[0]];
582
+ path.yBounds = [this.top + center[1] - r];
583
+
495
584
  } else {
496
585
  end = this.postTranslate(this.angleRad, r);
497
586
  path = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
@@ -927,11 +1016,15 @@
927
1016
  seriesProto = Series.prototype,
928
1017
  pointProto = H.Point.prototype;
929
1018
 
930
- // The arearangeseries series type
931
-
932
-
933
1019
  /**
1020
+ * The area range series is a carteseian series with higher and lower values
1021
+ * for each point along an X axis, where the area between the values is shaded.
1022
+ * Requires `highcharts-more.js`.
1023
+ *
934
1024
  * @extends plotOptions.area
1025
+ * @product highcharts highstock
1026
+ * @sample {highcharts} highcharts/demo/arearange/ Area range chart
1027
+ * @sample {highstock} stock/demo/arearange/ Area range chart
935
1028
  * @optionparent plotOptions.arearange
936
1029
  */
937
1030
  seriesType('arearange', 'area', {
@@ -949,16 +1042,13 @@
949
1042
 
950
1043
 
951
1044
  /**
1045
+ * @default null
952
1046
  */
953
1047
  threshold: null,
954
1048
 
955
- /**
956
- */
957
1049
  tooltip: {
958
1050
 
959
1051
 
960
- /**
961
- */
962
1052
  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
963
1053
 
964
1054
  },
@@ -988,12 +1078,7 @@
988
1078
  */
989
1079
  dataLabels: {
990
1080
 
991
- /**
992
- */
993
1081
  align: null,
994
-
995
- /**
996
- */
997
1082
  verticalAlign: null,
998
1083
 
999
1084
  /**
@@ -1045,6 +1130,16 @@
1045
1130
  yHigh: 0
1046
1131
  }
1047
1132
 
1133
+ /**
1134
+ * Whether to apply a drop shadow to the graph line. Since 2.3 the shadow
1135
+ * can be an object configuration containing `color`, `offsetX`, `offsetY`,
1136
+ * `opacity` and `width`.
1137
+ *
1138
+ * @type {Boolean|Object}
1139
+ * @product highcharts
1140
+ * @apioption plotOptions.arearange.shadow
1141
+ */
1142
+
1048
1143
  // Prototype members
1049
1144
  }, {
1050
1145
  pointArrayMap: ['low', 'high'],
@@ -1409,6 +1504,9 @@
1409
1504
  if (series.stateMarkerGraphic) {
1410
1505
  series.upperStateMarkerGraphic = series.stateMarkerGraphic;
1411
1506
  series.stateMarkerGraphic = series.lowerStateMarkerGraphic;
1507
+ // Lower marker is stored at stateMarkerGraphic
1508
+ // to avoid reference duplication (#7021)
1509
+ series.lowerStateMarkerGraphic = undefined;
1412
1510
  }
1413
1511
  },
1414
1512
  haloPath: function() {
@@ -1442,6 +1540,93 @@
1442
1540
  }
1443
1541
  });
1444
1542
 
1543
+
1544
+ /**
1545
+ * A `arearange` series. If the [type](#series.arearange.type) option
1546
+ * is not specified, it is inherited from [chart.type](#chart.type).
1547
+ *
1548
+ *
1549
+ * For options that apply to multiple series, it is recommended to add
1550
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
1551
+ * To apply to all series of this specific type, apply it to [plotOptions.
1552
+ * arearange](#plotOptions.arearange).
1553
+ *
1554
+ * @type {Object}
1555
+ * @extends series,plotOptions.arearange
1556
+ * @excluding dataParser,dataURL,stack
1557
+ * @product highcharts highstock
1558
+ * @apioption series.arearange
1559
+ */
1560
+
1561
+ /**
1562
+ * An array of data points for the series. For the `arearange` series
1563
+ * type, points can be given in the following ways:
1564
+ *
1565
+ * 1. An array of arrays with 3 or 2 values. In this case, the values
1566
+ * correspond to `x,low,high`. If the first value is a string, it is
1567
+ * applied as the name of the point, and the `x` value is inferred.
1568
+ * The `x` value can also be omitted, in which case the inner arrays
1569
+ * should be of length 2\. Then the `x` value is automatically calculated,
1570
+ * either starting at 0 and incremented by 1, or from `pointStart`
1571
+ * and `pointInterval` given in the series options.
1572
+ *
1573
+ * ```js
1574
+ * data: [
1575
+ * [0, 8, 3],
1576
+ * [1, 1, 1],
1577
+ * [2, 6, 8]
1578
+ * ]
1579
+ * ```
1580
+ *
1581
+ * 2. An array of objects with named values. The objects are point
1582
+ * configuration objects as seen below. If the total number of data
1583
+ * points exceeds the series' [turboThreshold](#series.arearange.turboThreshold),
1584
+ * this option is not available.
1585
+ *
1586
+ * ```js
1587
+ * data: [{
1588
+ * x: 1,
1589
+ * low: 9,
1590
+ * high: 0,
1591
+ * name: "Point2",
1592
+ * color: "#00FF00"
1593
+ * }, {
1594
+ * x: 1,
1595
+ * low: 3,
1596
+ * high: 4,
1597
+ * name: "Point1",
1598
+ * color: "#FF00FF"
1599
+ * }]
1600
+ * ```
1601
+ *
1602
+ * @type {Array<Object|Array>}
1603
+ * @extends series.line.data
1604
+ * @excluding marker,y
1605
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
1606
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
1607
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
1608
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
1609
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
1610
+ * @product highcharts highstock
1611
+ * @apioption series.arearange.data
1612
+ */
1613
+
1614
+ /**
1615
+ * The high or maximum value for each data point.
1616
+ *
1617
+ * @type {Number}
1618
+ * @product highcharts highstock
1619
+ * @apioption series.arearange.data.high
1620
+ */
1621
+
1622
+ /**
1623
+ * The low or minimum value for each data point.
1624
+ *
1625
+ * @type {Number}
1626
+ * @product highcharts highstock
1627
+ * @apioption series.arearange.data.low
1628
+ */
1629
+
1445
1630
  }(Highcharts));
1446
1631
  (function(H) {
1447
1632
  /**
@@ -1454,12 +1639,92 @@
1454
1639
  seriesTypes = H.seriesTypes;
1455
1640
 
1456
1641
  /**
1457
- * The areasplinerange series type
1642
+ * The area spline range is a cartesian series type with higher and
1643
+ * lower Y values along an X axis. The area inside the range is colored, and
1644
+ * the graph outlining the area is a smoothed spline. Requires
1645
+ * `highcharts-more.js`.
1646
+ *
1647
+ * @extends plotOptions.arearange
1648
+ * @excluding step
1649
+ * @since 2.3.0
1650
+ * @sample {highstock} stock/demo/areasplinerange/ Area spline range
1651
+ * @sample {highstock} stock/demo/areasplinerange/ Area spline range
1652
+ * @product highcharts highstock
1653
+ * @apioption plotOptions.areasplinerange
1458
1654
  */
1459
1655
  seriesType('areasplinerange', 'arearange', null, {
1460
1656
  getPointSpline: seriesTypes.spline.prototype.getPointSpline
1461
1657
  });
1462
1658
 
1659
+ /**
1660
+ * A `areasplinerange` series. If the [type](#series.areasplinerange.
1661
+ * type) option is not specified, it is inherited from [chart.type](#chart.
1662
+ * type).
1663
+ *
1664
+ * For options that apply to multiple series, it is recommended to add
1665
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
1666
+ * To apply to all series of this specific type, apply it to [plotOptions.
1667
+ * areasplinerange](#plotOptions.areasplinerange).
1668
+ *
1669
+ * @type {Object}
1670
+ * @extends series,plotOptions.areasplinerange
1671
+ * @excluding dataParser,dataURL,stack
1672
+ * @product highcharts highstock
1673
+ * @apioption series.areasplinerange
1674
+ */
1675
+
1676
+ /**
1677
+ * An array of data points for the series. For the `areasplinerange`
1678
+ * series type, points can be given in the following ways:
1679
+ *
1680
+ * 1. An array of arrays with 3 or 2 values. In this case, the values
1681
+ * correspond to `x,low,high`. If the first value is a string, it is
1682
+ * applied as the name of the point, and the `x` value is inferred.
1683
+ * The `x` value can also be omitted, in which case the inner arrays
1684
+ * should be of length 2\. Then the `x` value is automatically calculated,
1685
+ * either starting at 0 and incremented by 1, or from `pointStart`
1686
+ * and `pointInterval` given in the series options.
1687
+ *
1688
+ * ```js
1689
+ * data: [
1690
+ * [0, 0, 5],
1691
+ * [1, 9, 1],
1692
+ * [2, 5, 2]
1693
+ * ]
1694
+ * ```
1695
+ *
1696
+ * 2. An array of objects with named values. The objects are point
1697
+ * configuration objects as seen below. If the total number of data
1698
+ * points exceeds the series' [turboThreshold](#series.areasplinerange.
1699
+ * turboThreshold), this option is not available.
1700
+ *
1701
+ * ```js
1702
+ * data: [{
1703
+ * x: 1,
1704
+ * low: 5,
1705
+ * high: 0,
1706
+ * name: "Point2",
1707
+ * color: "#00FF00"
1708
+ * }, {
1709
+ * x: 1,
1710
+ * low: 4,
1711
+ * high: 1,
1712
+ * name: "Point1",
1713
+ * color: "#FF00FF"
1714
+ * }]
1715
+ * ```
1716
+ *
1717
+ * @type {Array<Object|Array>}
1718
+ * @extends series.arearange.data
1719
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
1720
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
1721
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
1722
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
1723
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
1724
+ * @product highcharts highstock
1725
+ * @apioption series.areasplinerange.data
1726
+ */
1727
+
1463
1728
  }(Highcharts));
1464
1729
  (function(H) {
1465
1730
  /**
@@ -1477,36 +1742,43 @@
1477
1742
 
1478
1743
  var colProto = seriesTypes.column.prototype;
1479
1744
  /**
1480
- * @extends {plotOptions.arearange}
1481
- * @optionparent plotOptions.columrange
1745
+ * The column range is a cartesian series type with higher and lower
1746
+ * Y values along an X axis. Requires `highcharts-more.js`. To display
1747
+ * horizontal bars, set [chart.inverted](#chart.inverted) to `true`.
1748
+ *
1749
+ * @type {Object}
1750
+ * @extends plotOptions.column
1751
+ * @excluding negativeColor,stacking,softThreshold,threshold
1752
+ * @sample {highcharts} highcharts/demo/columnrange/
1753
+ * Inverted column range
1754
+ * @sample {highstock} highcharts/demo/columnrange/
1755
+ * Inverted column range
1756
+ * @since 2.3.0
1757
+ * @product highcharts highstock
1758
+ * @optionparent plotOptions.columnrange
1482
1759
  */
1483
1760
  var columnRangeOptions = {
1484
1761
 
1485
- /**
1486
- */
1487
- lineWidth: 1,
1488
-
1489
- /**
1490
- */
1491
1762
  pointRange: null,
1492
-
1493
- /**
1494
- */
1495
1763
  marker: null,
1496
-
1497
- /**
1498
- */
1499
1764
  states: {
1500
-
1501
- /**
1502
- */
1503
1765
  hover: {
1504
-
1505
- /**
1506
- */
1507
1766
  halo: false
1508
1767
  }
1509
1768
  }
1769
+
1770
+ /**
1771
+ * Extended data labels for range series types. Range series data labels
1772
+ * have no `x` and `y` options. Instead, they have `xLow`, `xHigh`,
1773
+ * `yLow` and `yHigh` options to allow the higher and lower data label
1774
+ * sets individually.
1775
+ *
1776
+ * @type {Object}
1777
+ * @extends plotOptions.arearange.dataLabels
1778
+ * @since 2.3.0
1779
+ * @product highcharts highstock
1780
+ * @apioption plotOptions.columnrange.dataLabels
1781
+ */
1510
1782
  };
1511
1783
  /**
1512
1784
  * The ColumnRangeSeries class
@@ -1604,17 +1876,97 @@
1604
1876
  drawPoints: colProto.drawPoints,
1605
1877
  drawTracker: colProto.drawTracker,
1606
1878
  getColumnMetrics: colProto.getColumnMetrics,
1879
+ pointAttribs: colProto.pointAttribs,
1880
+
1881
+ // Overrides from modules that may be loaded after this module
1607
1882
  animate: function() {
1608
1883
  return colProto.animate.apply(this, arguments);
1609
1884
  },
1610
1885
  polarArc: function() {
1611
1886
  return colProto.polarArc.apply(this, arguments);
1612
1887
  },
1613
- pointAttribs: colProto.pointAttribs
1888
+ translate3dPoints: function() {
1889
+ return colProto.translate3dPoints.apply(this, arguments);
1890
+ },
1891
+ translate3dShapes: function() {
1892
+ return colProto.translate3dShapes.apply(this, arguments);
1893
+ }
1614
1894
  }, {
1615
1895
  setState: colProto.pointClass.prototype.setState
1616
1896
  });
1617
1897
 
1898
+
1899
+ /**
1900
+ * A `columnrange` series. If the [type](#series.columnrange.type)
1901
+ * option is not specified, it is inherited from [chart.type](#chart.
1902
+ * type).
1903
+ *
1904
+ * For options that apply to multiple series, it is recommended to add
1905
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
1906
+ * To apply to all series of this specific type, apply it to [plotOptions.
1907
+ * columnrange](#plotOptions.columnrange).
1908
+ *
1909
+ * @type {Object}
1910
+ * @extends series,plotOptions.columnrange
1911
+ * @excluding dataParser,dataURL,stack
1912
+ * @product highcharts highstock
1913
+ * @apioption series.columnrange
1914
+ */
1915
+
1916
+ /**
1917
+ * An array of data points for the series. For the `columnrange` series
1918
+ * type, points can be given in the following ways:
1919
+ *
1920
+ * 1. An array of arrays with 3 or 2 values. In this case, the values
1921
+ * correspond to `x,low,high`. If the first value is a string, it is
1922
+ * applied as the name of the point, and the `x` value is inferred.
1923
+ * The `x` value can also be omitted, in which case the inner arrays
1924
+ * should be of length 2\. Then the `x` value is automatically calculated,
1925
+ * either starting at 0 and incremented by 1, or from `pointStart`
1926
+ * and `pointInterval` given in the series options.
1927
+ *
1928
+ * ```js
1929
+ * data: [
1930
+ * [0, 4, 2],
1931
+ * [1, 2, 1],
1932
+ * [2, 9, 10]
1933
+ * ]
1934
+ * ```
1935
+ *
1936
+ * 2. An array of objects with named values. The objects are point
1937
+ * configuration objects as seen below. If the total number of data
1938
+ * points exceeds the series' [turboThreshold](#series.columnrange.
1939
+ * turboThreshold), this option is not available.
1940
+ *
1941
+ * ```js
1942
+ * data: [{
1943
+ * x: 1,
1944
+ * low: 0,
1945
+ * high: 4,
1946
+ * name: "Point2",
1947
+ * color: "#00FF00"
1948
+ * }, {
1949
+ * x: 1,
1950
+ * low: 5,
1951
+ * high: 3,
1952
+ * name: "Point1",
1953
+ * color: "#FF00FF"
1954
+ * }]
1955
+ * ```
1956
+ *
1957
+ * @type {Array<Object|Array>}
1958
+ * @extends series.arearange.data
1959
+ * @excluding marker
1960
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
1961
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
1962
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
1963
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
1964
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
1965
+ * @product highcharts highstock
1966
+ * @apioption series.columnrange.data
1967
+ */
1968
+
1969
+
1618
1970
  }(Highcharts));
1619
1971
  (function(H) {
1620
1972
  /**
@@ -1634,8 +1986,13 @@
1634
1986
 
1635
1987
 
1636
1988
  /**
1637
- * The GaugeSeries class
1989
+ * Gauges are circular plots displaying one or more values with a dial pointing
1990
+ * to values along the perimeter.
1991
+ *
1992
+ * @sample highcharts/demo/gauge-speedometer/ Gauge chart
1638
1993
  * @extends {plotOptions.line}
1994
+ * @excluding animationLimit,boostThreshold,connectEnds,connectNulls,cropThreshold,dashStyle,findNearestPointBy,getExtremesFromAll,marker,pointPlacement,softThreshold,stacking,step,threshold,turboThreshold,zoneAxis,zones
1995
+ * @product highcharts
1639
1996
  * @optionparent plotOptions.gauge
1640
1997
  */
1641
1998
  seriesType('gauge', 'line', {
@@ -1660,8 +2017,6 @@
1660
2017
  */
1661
2018
  enabled: true,
1662
2019
 
1663
- /**
1664
- */
1665
2020
  defer: false,
1666
2021
 
1667
2022
  /**
@@ -1685,8 +2040,6 @@
1685
2040
  */
1686
2041
  borderRadius: 3,
1687
2042
 
1688
- /**
1689
- */
1690
2043
  crop: false,
1691
2044
 
1692
2045
  /**
@@ -1736,8 +2089,7 @@
1736
2089
  /**
1737
2090
  * Options for the dial or arrow pointer of the gauge.
1738
2091
  *
1739
- * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
1740
- * style/style-by-css), the dial is styled with the `.highcharts-gauge-
2092
+ * In styled mode, the dial is styled with the `.highcharts-gauge-
1741
2093
  * series .highcharts-dial` rule.
1742
2094
  *
1743
2095
  * @type {Object}
@@ -1745,25 +2097,131 @@
1745
2097
  * @since 2.3.0
1746
2098
  * @product highcharts
1747
2099
  */
2100
+
2101
+
1748
2102
  dial: {
1749
- // radius: '80%',
1750
- // baseWidth: 3,
1751
- // topWidth: 1,
1752
- // baseLength: '70%' // of radius
1753
- // rearLength: '10%'
1754
2103
 
1755
- // backgroundColor: '#000000',
1756
- // borderColor: '#cccccc',
1757
- // borderWidth: 0
2104
+ /**
2105
+ * The length of the dial's base part, relative to the total radius
2106
+ * or length of the dial.
2107
+ *
2108
+ * @type {String}
2109
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/
2110
+ * Dial options demonstrated
2111
+ * @default 70%
2112
+ * @since 2.3.0
2113
+ * @product highcharts
2114
+ * @apioption plotOptions.gauge.dial.baseLength
2115
+ */
2116
+
2117
+ /**
2118
+ * The pixel width of the base of the gauge dial. The base is the part
2119
+ * closest to the pivot, defined by baseLength.
2120
+ *
2121
+ * @type {Number}
2122
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/
2123
+ * Dial options demonstrated
2124
+ * @default 3
2125
+ * @since 2.3.0
2126
+ * @product highcharts
2127
+ * @apioption plotOptions.gauge.dial.baseWidth
2128
+ */
2129
+
2130
+ /**
2131
+ * The radius or length of the dial, in percentages relative to the
2132
+ * radius of the gauge itself.
2133
+ *
2134
+ * @type {String}
2135
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/
2136
+ * Dial options demonstrated
2137
+ * @default 80%
2138
+ * @since 2.3.0
2139
+ * @product highcharts
2140
+ * @apioption plotOptions.gauge.dial.radius
2141
+ */
2142
+
2143
+ /**
2144
+ * The length of the dial's rear end, the part that extends out on the
2145
+ * other side of the pivot. Relative to the dial's length.
2146
+ *
2147
+ * @type {String}
2148
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/ Dial options demonstrated
2149
+ * @default 10%
2150
+ * @since 2.3.0
2151
+ * @product highcharts
2152
+ * @apioption plotOptions.gauge.dial.rearLength
2153
+ */
2154
+
2155
+ /**
2156
+ * The width of the top of the dial, closest to the perimeter. The pivot
2157
+ * narrows in from the base to the top.
2158
+ *
2159
+ * @type {Number}
2160
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/ Dial options demonstrated
2161
+ * @default 1
2162
+ * @since 2.3.0
2163
+ * @product highcharts
2164
+ * @apioption plotOptions.gauge.dial.topWidth
2165
+ */
2166
+
2167
+
2168
+
2169
+ /**
2170
+ * The background or fill color of the gauge's dial.
2171
+ *
2172
+ * @type {Color}
2173
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/ Dial options demonstrated
2174
+ * @default #000000
2175
+ * @since 2.3.0
2176
+ * @product highcharts
2177
+ * @apioption plotOptions.gauge.dial.backgroundColor
2178
+ */
2179
+
2180
+ /**
2181
+ * The border color or stroke of the gauge's dial. By default, the borderWidth
2182
+ * is 0, so this must be set in addition to a custom border color.
2183
+ *
2184
+ * @type {Color}
2185
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/ Dial options demonstrated
2186
+ * @default #cccccc
2187
+ * @since 2.3.0
2188
+ * @product highcharts
2189
+ * @apioption plotOptions.gauge.dial.borderColor
2190
+ */
2191
+
2192
+ /**
2193
+ * The width of the gauge dial border in pixels.
2194
+ *
2195
+ * @type {Number}
2196
+ * @sample {highcharts} highcharts/plotoptions/gauge-dial/ Dial options demonstrated
2197
+ * @default 0
2198
+ * @since 2.3.0
2199
+ * @product highcharts
2200
+ * @apioption plotOptions.gauge.dial.borderWidth
2201
+ */
1758
2202
 
1759
2203
 
1760
2204
  },
1761
2205
 
2206
+ /**
2207
+ * Allow the dial to overshoot the end of the perimeter axis by this
2208
+ * many degrees. Say if the gauge axis goes from 0 to 60, a value of
2209
+ * 100, or 1000, will show 5 degrees beyond the end of the axis.
2210
+ *
2211
+ * @type {Number}
2212
+ * @see [wrap](#plotOptions.gauge.wrap)
2213
+ * @sample {highcharts} highcharts/plotoptions/gauge-overshoot/
2214
+ * Allow 5 degrees overshoot
2215
+ * @default 0
2216
+ * @since 3.0.10
2217
+ * @product highcharts
2218
+ * @apioption plotOptions.gauge.overshoot
2219
+ */
2220
+
1762
2221
  /**
1763
2222
  * Options for the pivot or the center point of the gauge.
1764
2223
  *
1765
- * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
1766
- * style/style-by-css), the pivot is styled with the `.highcharts-gauge-
2224
+ * In styled mode, the pivot is styled with the `.highcharts-gauge-
1767
2225
  * series .highcharts-pivot` rule.
1768
2226
  *
1769
2227
  * @type {Object}
@@ -1772,20 +2230,58 @@
1772
2230
  * @product highcharts
1773
2231
  */
1774
2232
  pivot: {
1775
- //radius: 5,
1776
2233
 
1777
- //borderWidth: 0
1778
- //borderColor: '#cccccc',
1779
- //backgroundColor: '#000000'
2234
+ /**
2235
+ * The pixel radius of the pivot.
2236
+ *
2237
+ * @type {Number}
2238
+ * @sample {highcharts} highcharts/plotoptions/gauge-pivot/ Pivot options demonstrated
2239
+ * @default 5
2240
+ * @since 2.3.0
2241
+ * @product highcharts
2242
+ * @apioption plotOptions.gauge.pivot.radius
2243
+ */
1780
2244
 
1781
- },
1782
2245
 
1783
- /**
1784
- */
1785
- tooltip: {
1786
2246
 
1787
2247
  /**
2248
+ * The border or stroke width of the pivot.
2249
+ *
2250
+ * @type {Number}
2251
+ * @sample {highcharts} highcharts/plotoptions/gauge-pivot/ Pivot options demonstrated
2252
+ * @default 0
2253
+ * @since 2.3.0
2254
+ * @product highcharts
2255
+ * @apioption plotOptions.gauge.pivot.borderWidth
2256
+ */
2257
+
2258
+ /**
2259
+ * The border or stroke color of the pivot. In able to change this,
2260
+ * the borderWidth must also be set to something other than the default
2261
+ * 0.
2262
+ *
2263
+ * @type {Color}
2264
+ * @sample {highcharts} highcharts/plotoptions/gauge-pivot/ Pivot options demonstrated
2265
+ * @default #cccccc
2266
+ * @since 2.3.0
2267
+ * @product highcharts
2268
+ * @apioption plotOptions.gauge.pivot.borderColor
1788
2269
  */
2270
+
2271
+ /**
2272
+ * The background color or fill of the pivot.
2273
+ *
2274
+ * @type {Color}
2275
+ * @sample {highcharts} highcharts/plotoptions/gauge-pivot/ Pivot options demonstrated
2276
+ * @default #000000
2277
+ * @since 2.3.0
2278
+ * @product highcharts
2279
+ * @apioption plotOptions.gauge.pivot.backgroundColor
2280
+ */
2281
+
2282
+ },
2283
+
2284
+ tooltip: {
1789
2285
  headerFormat: ''
1790
2286
  },
1791
2287
 
@@ -1799,6 +2295,21 @@
1799
2295
  */
1800
2296
  showInLegend: false
1801
2297
 
2298
+ /**
2299
+ * When this option is `true`, the dial will wrap around the axes. For
2300
+ * instance, in a full-range gauge going from 0 to 360, a value of 400
2301
+ * will point to 40\. When `wrap` is `false`, the dial stops at 360.
2302
+ *
2303
+ * @type {Boolean}
2304
+ * @see [overshoot](#plotOptions.gauge.overshoot)
2305
+ * @default true
2306
+ * @since 3.0
2307
+ * @product highcharts
2308
+ * @apioption plotOptions.gauge.wrap
2309
+ */
2310
+
2311
+
2312
+
1802
2313
  // Prototype members
1803
2314
  }, {
1804
2315
  // chart.angular will be set to true when a gauge series is present, and this will
@@ -2003,6 +2514,63 @@
2003
2514
  }
2004
2515
  });
2005
2516
 
2517
+ /**
2518
+ * A `gauge` series. If the [type](#series.gauge.type) option is not
2519
+ * specified, it is inherited from [chart.type](#chart.type).
2520
+ *
2521
+ * For options that apply to multiple series, it is recommended to add
2522
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
2523
+ * To apply to all series of this specific type, apply it to [plotOptions.
2524
+ * gauge](#plotOptions.gauge).
2525
+ *
2526
+ * @type {Object}
2527
+ * @extends series,plotOptions.gauge
2528
+ * @excluding dataParser,dataURL,stack
2529
+ * @product highcharts
2530
+ * @apioption series.gauge
2531
+ */
2532
+
2533
+ /**
2534
+ * An array of data points for the series. For the `gauge` series type,
2535
+ * points can be given in the following ways:
2536
+ *
2537
+ * 1. An array of numerical values. In this case, the numerical values
2538
+ * will be interpreted as `y` options. Example:
2539
+ *
2540
+ * ```js
2541
+ * data: [0, 5, 3, 5]
2542
+ * ```
2543
+ *
2544
+ * 2. An array of objects with named values. The objects are point
2545
+ * configuration objects as seen below. If the total number of data
2546
+ * points exceeds the series' [turboThreshold](#series.gauge.turboThreshold),
2547
+ * this option is not available.
2548
+ *
2549
+ * ```js
2550
+ * data: [{
2551
+ * y: 6,
2552
+ * name: "Point2",
2553
+ * color: "#00FF00"
2554
+ * }, {
2555
+ * y: 8,
2556
+ * name: "Point1",
2557
+ * color: "#FF00FF"
2558
+ * }]</pre>
2559
+ *
2560
+ * The typical gauge only contains a single data value.
2561
+ *
2562
+ * @type {Array<Object|Number>}
2563
+ * @extends series.line.data
2564
+ * @excluding drilldown,marker,x
2565
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
2566
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
2567
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
2568
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
2569
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
2570
+ * @product highcharts
2571
+ * @apioption series.gauge.data
2572
+ */
2573
+
2006
2574
  }(Highcharts));
2007
2575
  (function(H) {
2008
2576
  /**
@@ -2024,22 +2592,23 @@
2024
2592
  */
2025
2593
 
2026
2594
  /**
2595
+ * A box plot is a convenient way of depicting groups of data through their
2596
+ * five-number summaries: the smallest observation (sample minimum), lower
2597
+ * quartile (Q1), median (Q2), upper quartile (Q3), and largest observation
2598
+ * (sample maximum).
2599
+ *
2600
+ * @sample highcharts/demo/box-plot/ Box plot
2027
2601
  * @extends {plotOptions.column}
2602
+ * @product highcharts
2028
2603
  * @optionparent plotOptions.boxplot
2029
2604
  */
2030
2605
  seriesType('boxplot', 'column', {
2031
2606
 
2032
- /**
2033
- */
2034
2607
  threshold: null,
2035
2608
 
2036
- /**
2037
- */
2038
2609
  tooltip: {
2039
2610
 
2040
2611
 
2041
- /**
2042
- */
2043
2612
  pointFormat: '<span style="color:{point.color}">\u25CF</span> <b> {series.name}</b><br/>' + // eslint-disable-line no-dupe-keys
2044
2613
  'Maximum: {point.high}<br/>' +
2045
2614
  'Upper quartile: {point.q3}<br/>' +
@@ -2055,7 +2624,8 @@
2055
2624
  * value of the box width. Set `0` to disable whiskers.
2056
2625
  *
2057
2626
  * @type {Number|String}
2058
- * @sample {highcharts} highcharts/plotoptions/box-plot-styling/ True by default
2627
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2628
+ * True by default
2059
2629
  * @default 50%
2060
2630
  * @since 3.0
2061
2631
  * @product highcharts
@@ -2067,10 +2637,10 @@
2067
2637
  * The fill color of the box.
2068
2638
  *
2069
2639
  * @type {Color}
2070
- * @see In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2071
- * style/style-by-css), the fill color can be set with the `.highcharts-
2072
- * boxplot-box` class.
2073
- * @sample {highcharts} highcharts/plotoptions/box-plot-styling/ Box plot styling
2640
+ * @see In styled mode, the fill color can be set with the
2641
+ * `.highcharts-boxplot-box` class.
2642
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2643
+ * Box plot styling
2074
2644
  * @default #ffffff
2075
2645
  * @since 3.0
2076
2646
  * @product highcharts
@@ -2084,49 +2654,131 @@
2084
2654
  * the lineWidth also applies to these lines.
2085
2655
  *
2086
2656
  * @type {Number}
2087
- * @sample {highcharts} highcharts/plotoptions/box-plot-styling/ Box plot styling
2088
- * @sample {highcharts} highcharts/plotoptions/error-bar-styling/ Error bar styling
2657
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2658
+ * Box plot styling
2659
+ * @sample {highcharts} highcharts/plotoptions/error-bar-styling/
2660
+ * Error bar styling
2089
2661
  * @default 1
2090
2662
  * @since 3.0
2091
2663
  * @product highcharts
2092
2664
  */
2093
2665
  lineWidth: 1,
2094
- //medianColor: null,
2666
+
2667
+ /**
2668
+ * The color of the median line. If `null`, the general series color
2669
+ * applies.
2670
+ *
2671
+ * @type {Color}
2672
+ * @see In styled mode, the median stroke width can be set with the
2673
+ * `.highcharts-boxplot-median` class.
2674
+ *
2675
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2676
+ * Box plot styling
2677
+ * @sample {highcharts} highcharts/css/boxplot/
2678
+ * Box plot in styled mode
2679
+ * @sample {highcharts} highcharts/plotoptions/error-bar-styling/
2680
+ * Error bar styling
2681
+ * @default null
2682
+ * @since 3.0
2683
+ * @product highcharts
2684
+ * @apioption plotOptions.boxplot.medianColor
2685
+ */
2095
2686
 
2096
2687
  /**
2097
2688
  * The pixel width of the median line. If `null`, the [lineWidth](#plotOptions.
2098
2689
  * boxplot.lineWidth) is used.
2099
2690
  *
2100
2691
  * @type {Number}
2101
- * @see In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2102
- * style/style-by-css), the median stroke width can be set with the
2103
- * `.highcharts-boxplot-median` class ([view live demo](http://jsfiddle.
2104
- * net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/css/boxplot/)).
2105
- * @sample {highcharts} highcharts/plotoptions/box-plot-styling/ Box plot styling
2692
+ * @see In styled mode, the median stroke width can be set with the
2693
+ * `.highcharts-boxplot-median` class.
2694
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2695
+ * Box plot styling
2696
+ * @sample {highcharts} highcharts/css/boxplot/
2697
+ * Box plot in styled mode
2106
2698
  * @default 2
2107
2699
  * @since 3.0
2108
2700
  * @product highcharts
2109
2701
  */
2110
2702
  medianWidth: 2,
2111
2703
 
2112
- /**
2113
- */
2114
2704
  states: {
2115
-
2116
- /**
2117
- */
2118
2705
  hover: {
2119
-
2120
- /**
2121
- */
2122
2706
  brightness: -0.3
2123
2707
  }
2124
2708
  },
2125
- //stemColor: null,
2126
- //stemDashStyle: 'solid'
2127
- //stemWidth: null,
2709
+ /**
2710
+ * The color of the stem, the vertical line extending from the box to
2711
+ * the whiskers. If `null`, the series color is used.
2712
+ *
2713
+ * @type {Color}
2714
+ * @see In styled mode, the stem stroke can be set with the `.highcharts-boxplot-stem` class.
2715
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2716
+ * Box plot styling
2717
+ * @sample {highcharts} highcharts/css/boxplot/
2718
+ * Box plot in styled mode
2719
+ * @sample {highcharts} highcharts/plotoptions/error-bar-styling/
2720
+ * Error bar styling
2721
+ * @default null
2722
+ * @since 3.0
2723
+ * @product highcharts
2724
+ * @apioption plotOptions.boxplot.stemColor
2725
+ */
2726
+
2727
+ /**
2728
+ * The dash style of the stem, the vertical line extending from the
2729
+ * box to the whiskers.
2730
+ *
2731
+ * @validvalue ["Solid", "ShortDash", "ShortDot", "ShortDashDot",
2732
+ * "ShortDashDotDot", "Dot", "Dash" ,"LongDash", "DashDot",
2733
+ * "LongDashDot", "LongDashDotDot"]
2734
+ * @type {String}
2735
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2736
+ * Box plot styling
2737
+ * @sample {highcharts} highcharts/css/boxplot/
2738
+ * Box plot in styled mode
2739
+ * @sample {highcharts} highcharts/plotoptions/error-bar-styling/
2740
+ * Error bar styling
2741
+ * @default Solid
2742
+ * @since 3.0
2743
+ * @product highcharts
2744
+ * @apioption plotOptions.boxplot.stemDashStyle
2745
+ */
2128
2746
 
2129
- //whiskerColor: null,
2747
+ /**
2748
+ * The width of the stem, the vertical line extending from the box to
2749
+ * the whiskers. If `null`, the width is inherited from the [lineWidth](#plotOptions.
2750
+ * boxplot.lineWidth) option.
2751
+ *
2752
+ * @type {Number}
2753
+ * @see In styled mode, the stem stroke width can be set with the `.
2754
+ * highcharts-boxplot-stem` class.
2755
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2756
+ * Box plot styling
2757
+ * @sample {highcharts} highcharts/css/boxplot/
2758
+ * Box plot in styled mode
2759
+ * @sample {highcharts} highcharts/plotoptions/error-bar-styling/
2760
+ * Error bar styling
2761
+ * @default null
2762
+ * @since 3.0
2763
+ * @product highcharts
2764
+ * @apioption plotOptions.boxplot.stemWidth
2765
+ */
2766
+
2767
+ /**
2768
+ * The color of the whiskers, the horizontal lines marking low and high
2769
+ * values. When `null`, the general series color is used.
2770
+ *
2771
+ * @type {Color}
2772
+ * @see In styled mode, the whisker stroke can be set with the `.highcharts-boxplot-whisker` class .
2773
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2774
+ * Box plot styling
2775
+ * @sample {highcharts} highcharts/css/boxplot/
2776
+ * Box plot in styled mode
2777
+ * @default null
2778
+ * @since 3.0
2779
+ * @product highcharts
2780
+ * @apioption plotOptions.boxplot.whiskerColor
2781
+ */
2130
2782
 
2131
2783
  /**
2132
2784
  * The line width of the whiskers, the horizontal lines marking low
@@ -2134,12 +2786,13 @@
2134
2786
  * boxplot.lineWidth) applies.
2135
2787
  *
2136
2788
  * @type {Number}
2137
- * @see In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2138
- * style/style-by-css), the whisker stroke width can be set with the
2139
- * `.highcharts-boxplot-whisker` class ([view live demo](http://jsfiddle.
2140
- * net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/css/boxplot/)).
2141
- * @sample {highcharts} highcharts/plotoptions/box-plot-styling/ Box plot styling
2142
- * @default 2
2789
+ * @see In styled mode, the whisker stroke width can be set with the
2790
+ * `.highcharts-boxplot-whisker` class.
2791
+ *
2792
+ * @sample {highcharts} highcharts/plotoptions/box-plot-styling/
2793
+ * Box plot styling
2794
+ * @sample {highcharts} highcharts/css/boxplot/
2795
+ * Box plot in styled mode
2143
2796
  * @since 3.0
2144
2797
  * @product highcharts
2145
2798
  */
@@ -2198,7 +2851,7 @@
2198
2851
  * Draw the data points
2199
2852
  */
2200
2853
  drawPoints: function() {
2201
- var series = this, //state = series.state,
2854
+ var series = this,
2202
2855
  points = series.points,
2203
2856
  options = series.options,
2204
2857
  chart = series.chart,
@@ -2397,9 +3050,125 @@
2397
3050
 
2398
3051
  });
2399
3052
 
2400
- /* ****************************************************************************
2401
- * End Box plot series code *
2402
- *****************************************************************************/
3053
+ /**
3054
+ * A `boxplot` series. If the [type](#series.boxplot.type) option is
3055
+ * not specified, it is inherited from [chart.type](#chart.type).
3056
+ *
3057
+ * For options that apply to multiple series, it is recommended to add
3058
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
3059
+ * To apply to all series of this specific type, apply it to [plotOptions.
3060
+ * boxplot](#plotOptions.boxplot).
3061
+ *
3062
+ * @type {Object}
3063
+ * @extends series,plotOptions.boxplot
3064
+ * @excluding dataParser,dataURL,stack
3065
+ * @product highcharts
3066
+ * @apioption series.boxplot
3067
+ */
3068
+
3069
+ /**
3070
+ * An array of data points for the series. For the `boxplot` series
3071
+ * type, points can be given in the following ways:
3072
+ *
3073
+ * 1. An array of arrays with 6 or 5 values. In this case, the values
3074
+ * correspond to `x,low,q1,median,q3,high`. If the first value is a
3075
+ * string, it is applied as the name of the point, and the `x` value
3076
+ * is inferred. The `x` value can also be omitted, in which case the
3077
+ * inner arrays should be of length 5\. Then the `x` value is automatically
3078
+ * calculated, either starting at 0 and incremented by 1, or from `pointStart`
3079
+ * and `pointInterval` given in the series options.
3080
+ *
3081
+ * ```js
3082
+ * data: [
3083
+ * [0, 3, 0, 10, 3, 5],
3084
+ * [1, 7, 8, 7, 2, 9],
3085
+ * [2, 6, 9, 5, 1, 3]
3086
+ * ]
3087
+ * ```
3088
+ *
3089
+ * 2. An array of objects with named values. The objects are point
3090
+ * configuration objects as seen below. If the total number of data
3091
+ * points exceeds the series' [turboThreshold](#series.boxplot.turboThreshold),
3092
+ * this option is not available.
3093
+ *
3094
+ * ```js
3095
+ * data: [{
3096
+ * x: 1,
3097
+ * low: 4,
3098
+ * q1: 9,
3099
+ * median: 9,
3100
+ * q3: 1,
3101
+ * high: 10,
3102
+ * name: "Point2",
3103
+ * color: "#00FF00"
3104
+ * }, {
3105
+ * x: 1,
3106
+ * low: 5,
3107
+ * q1: 7,
3108
+ * median: 3,
3109
+ * q3: 6,
3110
+ * high: 2,
3111
+ * name: "Point1",
3112
+ * color: "#FF00FF"
3113
+ * }]
3114
+ * ```
3115
+ *
3116
+ * @type {Array<Object|Array>}
3117
+ * @extends series.line.data
3118
+ * @excluding marker
3119
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
3120
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
3121
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
3122
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
3123
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
3124
+ * @product highcharts
3125
+ * @apioption series.boxplot.data
3126
+ */
3127
+
3128
+ /**
3129
+ * The `high` value for each data point, signifying the highest value
3130
+ * in the sample set. The top whisker is drawn here.
3131
+ *
3132
+ * @type {Number}
3133
+ * @product highcharts
3134
+ * @apioption series.boxplot.data.high
3135
+ */
3136
+
3137
+ /**
3138
+ * The `low` value for each data point, signifying the lowest value
3139
+ * in the sample set. The bottom whisker is drawn here.
3140
+ *
3141
+ * @type {Number}
3142
+ * @product highcharts
3143
+ * @apioption series.boxplot.data.low
3144
+ */
3145
+
3146
+ /**
3147
+ * The median for each data point. This is drawn as a line through the
3148
+ * middle area of the box.
3149
+ *
3150
+ * @type {Number}
3151
+ * @product highcharts
3152
+ * @apioption series.boxplot.data.median
3153
+ */
3154
+
3155
+ /**
3156
+ * The lower quartile for each data point. This is the bottom of the
3157
+ * box.
3158
+ *
3159
+ * @type {Number}
3160
+ * @product highcharts
3161
+ * @apioption series.boxplot.data.q1
3162
+ */
3163
+
3164
+ /**
3165
+ * The higher quartile for each data point. This is the top of the box.
3166
+ *
3167
+ * @type {Number}
3168
+ * @product highcharts
3169
+ * @apioption series.boxplot.data.q3
3170
+ */
3171
+
2403
3172
 
2404
3173
  }(Highcharts));
2405
3174
  (function(H) {
@@ -2413,13 +3182,14 @@
2413
3182
  seriesType = H.seriesType,
2414
3183
  seriesTypes = H.seriesTypes;
2415
3184
 
2416
-
2417
- /* ****************************************************************************
2418
- * Start error bar series code *
2419
- *****************************************************************************/
2420
-
2421
3185
  /**
3186
+ * Error bars are a graphical representation of the variability of data and are
3187
+ * used on graphs to indicate the error, or uncertainty in a reported
3188
+ * measurement.
3189
+ *
3190
+ * @sample highcharts/demo/error-bar/ Error bars
2422
3191
  * @extends {plotOptions.boxplot}
3192
+ * @product highcharts highstock
2423
3193
  * @optionparent plotOptions.errorbar
2424
3194
  */
2425
3195
  seriesType('errorbar', 'boxplot', {
@@ -2439,8 +3209,6 @@
2439
3209
  color: '#000000',
2440
3210
 
2441
3211
 
2442
- /**
2443
- */
2444
3212
  grouping: false,
2445
3213
 
2446
3214
  /**
@@ -2454,12 +3222,7 @@
2454
3222
  */
2455
3223
  linkedTo: ':previous',
2456
3224
 
2457
- /**
2458
- */
2459
3225
  tooltip: {
2460
-
2461
- /**
2462
- */
2463
3226
  pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'
2464
3227
  },
2465
3228
 
@@ -2504,9 +3267,75 @@
2504
3267
  }
2505
3268
  });
2506
3269
 
2507
- /* ****************************************************************************
2508
- * End error bar series code *
2509
- *****************************************************************************/
3270
+ /**
3271
+ * A `errorbar` series. If the [type](#series.errorbar.type) option
3272
+ * is not specified, it is inherited from [chart.type](#chart.type).
3273
+ *
3274
+ *
3275
+ * For options that apply to multiple series, it is recommended to add
3276
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
3277
+ * To apply to all series of this specific type, apply it to [plotOptions.
3278
+ * errorbar](#plotOptions.errorbar).
3279
+ *
3280
+ * @type {Object}
3281
+ * @extends series,plotOptions.errorbar
3282
+ * @excluding dataParser,dataURL,stack
3283
+ * @product highcharts
3284
+ * @apioption series.errorbar
3285
+ */
3286
+
3287
+ /**
3288
+ * An array of data points for the series. For the `errorbar` series
3289
+ * type, points can be given in the following ways:
3290
+ *
3291
+ * 1. An array of arrays with 3 or 2 values. In this case, the values
3292
+ * correspond to `x,low,high`. If the first value is a string, it is
3293
+ * applied as the name of the point, and the `x` value is inferred.
3294
+ * The `x` value can also be omitted, in which case the inner arrays
3295
+ * should be of length 2\. Then the `x` value is automatically calculated,
3296
+ * either starting at 0 and incremented by 1, or from `pointStart`
3297
+ * and `pointInterval` given in the series options.
3298
+ *
3299
+ * ```js
3300
+ * data: [
3301
+ * [0, 10, 2],
3302
+ * [1, 1, 8],
3303
+ * [2, 4, 5]
3304
+ * ]
3305
+ * ```
3306
+ *
3307
+ * 2. An array of objects with named values. The objects are point
3308
+ * configuration objects as seen below. If the total number of data
3309
+ * points exceeds the series' [turboThreshold](#series.errorbar.turboThreshold),
3310
+ * this option is not available.
3311
+ *
3312
+ * ```js
3313
+ * data: [{
3314
+ * x: 1,
3315
+ * low: 0,
3316
+ * high: 0,
3317
+ * name: "Point2",
3318
+ * color: "#00FF00"
3319
+ * }, {
3320
+ * x: 1,
3321
+ * low: 5,
3322
+ * high: 5,
3323
+ * name: "Point1",
3324
+ * color: "#FF00FF"
3325
+ * }]
3326
+ * ```
3327
+ *
3328
+ * @type {Array<Object|Array>}
3329
+ * @extends series.arearange.data
3330
+ * @excluding dataLabels,drilldown,marker
3331
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
3332
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
3333
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
3334
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
3335
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
3336
+ * @product highcharts
3337
+ * @apioption series.errorbar.data
3338
+ */
2510
3339
 
2511
3340
  }(Highcharts));
2512
3341
  (function(H) {
@@ -2523,21 +3352,18 @@
2523
3352
  seriesType = H.seriesType,
2524
3353
  seriesTypes = H.seriesTypes;
2525
3354
 
2526
- /* ****************************************************************************
2527
- * Start Waterfall series code *
2528
- *****************************************************************************/
2529
3355
  /**
3356
+ * A waterfall chart displays sequentially introduced positive or negative
3357
+ * values in cumulative columns.
3358
+ *
3359
+ * @sample highcharts/demo/waterfall/ Waterfall chart
2530
3360
  * @extends {plotOptions.column}
3361
+ * @product highcharts
2531
3362
  * @optionparent plotOptions.waterfall
2532
3363
  */
2533
3364
  seriesType('waterfall', 'column', {
2534
3365
 
2535
- /**
2536
- */
2537
3366
  dataLabels: {
2538
-
2539
- /**
2540
- */
2541
3367
  inside: true
2542
3368
  },
2543
3369
 
@@ -2555,9 +3381,7 @@
2555
3381
  * The color of the line that connects columns in a waterfall series.
2556
3382
  *
2557
3383
  *
2558
- * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2559
- * style/style-by-css), the stroke can be set with the `.highcharts-
2560
- * graph` class.
3384
+ * In styled mode, the stroke can be set with the `.highcharts-graph` class.
2561
3385
  *
2562
3386
  * @type {Color}
2563
3387
  * @default #333333
@@ -2582,8 +3406,7 @@
2582
3406
  * * LongDashDot
2583
3407
  * * LongDashDotDot
2584
3408
  *
2585
- * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2586
- * style/style-by-css), the stroke dash-array can be set with the `.
3409
+ * In styled mode, the stroke dash-array can be set with the `.
2587
3410
  * highcharts-graph` class.
2588
3411
  *
2589
3412
  * @type {String}
@@ -2596,9 +3419,7 @@
2596
3419
  /**
2597
3420
  * The color of the border of each waterfall column.
2598
3421
  *
2599
- * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
2600
- * style/style-by-css), the border stroke can be set with the `.highcharts-
2601
- * point` class.
3422
+ * In styled mode, the border stroke can be set with the `.highcharts-point` class.
2602
3423
  *
2603
3424
  * @type {Color}
2604
3425
  * @default #333333
@@ -2607,21 +3428,27 @@
2607
3428
  */
2608
3429
  borderColor: '#333333',
2609
3430
 
2610
- /**
2611
- */
2612
3431
  states: {
2613
-
2614
- /**
2615
- */
2616
3432
  hover: {
2617
-
2618
- /**
2619
- */
2620
3433
  lineWidthPlus: 0 // #3126
2621
3434
  }
2622
3435
  }
2623
3436
 
2624
3437
 
3438
+ /**
3439
+ * The color used specifically for positive point columns. When not
3440
+ * specified, the general series color is used.
3441
+ *
3442
+ * In styled mode, the waterfall colors can be set with the
3443
+ * `.highcharts-point-negative`, `.highcharts-sum` and
3444
+ * `.highcharts-intermediate-sum` classes.
3445
+ *
3446
+ * @type {Color}
3447
+ * @sample {highcharts} highcharts/demo/waterfall/ Waterfall
3448
+ * @product highcharts
3449
+ * @apioption plotOptions.waterfall.upColor
3450
+ */
3451
+
2625
3452
  // Prototype members
2626
3453
  }, {
2627
3454
  pointValKey: 'y',
@@ -2790,10 +3617,10 @@
2790
3617
  */
2791
3618
  toYData: function(pt) {
2792
3619
  if (pt.isSum) {
2793
- return (pt.x === 0 ? null : 'sum'); //#3245 Error when first element is Sum or Intermediate Sum
3620
+ return (pt.x === 0 ? null : 'sum'); // #3245 Error when first element is Sum or Intermediate Sum
2794
3621
  }
2795
3622
  if (pt.isIntermediateSum) {
2796
- return (pt.x === 0 ? null : 'intermediateSum'); //#3245
3623
+ return (pt.x === 0 ? null : 'intermediateSum'); // #3245
2797
3624
  }
2798
3625
  return pt.y;
2799
3626
  },
@@ -2940,9 +3767,103 @@
2940
3767
 
2941
3768
  });
2942
3769
 
2943
- /* ****************************************************************************
2944
- * End Waterfall series code *
2945
- *****************************************************************************/
3770
+ /**
3771
+ * A `waterfall` series. If the [type](#series.waterfall.type) option
3772
+ * is not specified, it is inherited from [chart.type](#chart.type).
3773
+ *
3774
+ *
3775
+ * For options that apply to multiple series, it is recommended to add
3776
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
3777
+ * To apply to all series of this specific type, apply it to [plotOptions.
3778
+ * waterfall](#plotOptions.waterfall).
3779
+ *
3780
+ * @type {Object}
3781
+ * @extends series,plotOptions.waterfall
3782
+ * @excluding dataParser,dataURL
3783
+ * @product highcharts
3784
+ * @apioption series.waterfall
3785
+ */
3786
+
3787
+ /**
3788
+ * An array of data points for the series. For the `waterfall` series
3789
+ * type, points can be given in the following ways:
3790
+ *
3791
+ * 1. An array of numerical values. In this case, the numerical values
3792
+ * will be interpreted as `y` options. The `x` values will be automatically
3793
+ * calculated, either starting at 0 and incremented by 1, or from `pointStart`
3794
+ * and `pointInterval` given in the series options. If the axis has
3795
+ * categories, these will be used. Example:
3796
+ *
3797
+ * ```js
3798
+ * data: [0, 5, 3, 5]
3799
+ * ```
3800
+ *
3801
+ * 2. An array of arrays with 2 values. In this case, the values correspond
3802
+ * to `x,y`. If the first value is a string, it is applied as the name
3803
+ * of the point, and the `x` value is inferred.
3804
+ *
3805
+ * ```js
3806
+ * data: [
3807
+ * [0, 7],
3808
+ * [1, 8],
3809
+ * [2, 3]
3810
+ * ]
3811
+ * ```
3812
+ *
3813
+ * 3. An array of objects with named values. The objects are point
3814
+ * configuration objects as seen below. If the total number of data
3815
+ * points exceeds the series' [turboThreshold](#series.waterfall.turboThreshold),
3816
+ * this option is not available.
3817
+ *
3818
+ * ```js
3819
+ * data: [{
3820
+ * x: 1,
3821
+ * y: 8,
3822
+ * name: "Point2",
3823
+ * color: "#00FF00"
3824
+ * }, {
3825
+ * x: 1,
3826
+ * y: 8,
3827
+ * name: "Point1",
3828
+ * color: "#FF00FF"
3829
+ * }]
3830
+ * ```
3831
+ *
3832
+ * @type {Array<Object|Array|Number>}
3833
+ * @extends series.line.data
3834
+ * @excluding marker
3835
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
3836
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
3837
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
3838
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
3839
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
3840
+ * @product highcharts
3841
+ * @apioption series.waterfall.data
3842
+ */
3843
+
3844
+
3845
+ /**
3846
+ * When this property is true, the points acts as a summary column for
3847
+ * the values added or substracted since the last intermediate sum,
3848
+ * or since the start of the series. The `y` value is ignored.
3849
+ *
3850
+ * @type {Boolean}
3851
+ * @sample {highcharts} highcharts/demo/waterfall/ Waterfall
3852
+ * @default false
3853
+ * @product highcharts
3854
+ * @apioption series.waterfall.data.isIntermediateSum
3855
+ */
3856
+
3857
+ /**
3858
+ * When this property is true, the point display the total sum across
3859
+ * the entire series. The `y` value is ignored.
3860
+ *
3861
+ * @type {Boolean}
3862
+ * @sample {highcharts} highcharts/demo/waterfall/ Waterfall
3863
+ * @default false
3864
+ * @product highcharts
3865
+ * @apioption series.waterfall.data.isSum
3866
+ */
2946
3867
 
2947
3868
  }(Highcharts));
2948
3869
  (function(H) {
@@ -2956,13 +3877,21 @@
2956
3877
  Series = H.Series,
2957
3878
  seriesType = H.seriesType,
2958
3879
  seriesTypes = H.seriesTypes;
2959
- /**
2960
- * The polygon series prototype
2961
- */
2962
3880
 
2963
3881
  /**
2964
- * @extends {plotOptions.scatter}
2965
- * @optionsparent plotOptions.polygon
3882
+ * A polygon series can be used to draw any freeform shape in the cartesian
3883
+ * coordinate system. A fill is applied with the `color` option, and
3884
+ * stroke is applied through `lineWidth` and `lineColor` options. Requires
3885
+ * the `highcharts-more.js` file.
3886
+ *
3887
+ * @type {Object}
3888
+ * @extends plotOptions.scatter
3889
+ * @excluding softThreshold,threshold
3890
+ * @sample {highcharts} highcharts/demo/polygon/ Polygon
3891
+ * @sample {highstock} highcharts/demo/polygon/ Polygon
3892
+ * @since 4.1.0
3893
+ * @product highcharts highstock
3894
+ * @optionparent plotOptions.polygon
2966
3895
  */
2967
3896
  seriesType('polygon', 'scatter', {
2968
3897
  marker: {
@@ -3008,6 +3937,80 @@
3008
3937
  setStackedPoints: noop // No stacking points on polygons (#5310)
3009
3938
  });
3010
3939
 
3940
+
3941
+
3942
+ /**
3943
+ * A `polygon` series. If the [type](#series.polygon.type) option is
3944
+ * not specified, it is inherited from [chart.type](#chart.type).
3945
+ *
3946
+ * For options that apply to multiple series, it is recommended to add
3947
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
3948
+ * To apply to all series of this specific type, apply it to [plotOptions.
3949
+ * polygon](#plotOptions.polygon).
3950
+ *
3951
+ * @type {Object}
3952
+ * @extends series,plotOptions.polygon
3953
+ * @excluding dataParser,dataURL,stack
3954
+ * @product highcharts highstock
3955
+ * @apioption series.polygon
3956
+ */
3957
+
3958
+ /**
3959
+ * An array of data points for the series. For the `polygon` series
3960
+ * type, points can be given in the following ways:
3961
+ *
3962
+ * 1. An array of numerical values. In this case, the numerical values
3963
+ * will be interpreted as `y` options. The `x` values will be automatically
3964
+ * calculated, either starting at 0 and incremented by 1, or from `pointStart`
3965
+ * and `pointInterval` given in the series options. If the axis has
3966
+ * categories, these will be used. Example:
3967
+ *
3968
+ * ```js
3969
+ * data: [0, 5, 3, 5]
3970
+ * ```
3971
+ *
3972
+ * 2. An array of arrays with 2 values. In this case, the values correspond
3973
+ * to `x,y`. If the first value is a string, it is applied as the name
3974
+ * of the point, and the `x` value is inferred.
3975
+ *
3976
+ * ```js
3977
+ * data: [
3978
+ * [0, 10],
3979
+ * [1, 3],
3980
+ * [2, 1]
3981
+ * ]
3982
+ * ```
3983
+ *
3984
+ * 3. An array of objects with named values. The objects are point
3985
+ * configuration objects as seen below. If the total number of data
3986
+ * points exceeds the series' [turboThreshold](#series.polygon.turboThreshold),
3987
+ * this option is not available.
3988
+ *
3989
+ * ```js
3990
+ * data: [{
3991
+ * x: 1,
3992
+ * y: 1,
3993
+ * name: "Point2",
3994
+ * color: "#00FF00"
3995
+ * }, {
3996
+ * x: 1,
3997
+ * y: 8,
3998
+ * name: "Point1",
3999
+ * color: "#FF00FF"
4000
+ * }]
4001
+ * ```
4002
+ *
4003
+ * @type {Array<Object|Array>}
4004
+ * @extends series.line.data
4005
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
4006
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
4007
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
4008
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
4009
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
4010
+ * @product highcharts highstock
4011
+ * @apioption series.polygon.data
4012
+ */
4013
+
3011
4014
  }(Highcharts));
3012
4015
  (function(H) {
3013
4016
  /**
@@ -3029,36 +4032,42 @@
3029
4032
  seriesType = H.seriesType,
3030
4033
  seriesTypes = H.seriesTypes;
3031
4034
 
3032
- /* ****************************************************************************
3033
- * Start Bubble series code *
3034
- *****************************************************************************/
3035
-
3036
4035
 
3037
4036
  /**
4037
+ * A bubble series is a three dimensional series type where each point renders
4038
+ * an X, Y and Z value. Each points is drawn as a bubble where the position
4039
+ * along the X and Y axes mark the X and Y values, and the size of the bubble
4040
+ * relates to the Z value. Requires `highcharts-more.js`.
4041
+ *
4042
+ * @sample {highcharts} highcharts/demo/bubble/ Bubble chart
3038
4043
  * @extends plotOptions.scatter
4044
+ * @product highcharts highstock
3039
4045
  * @optionparent plotOptions.bubble
3040
4046
  */
3041
4047
  seriesType('bubble', 'scatter', {
3042
4048
 
3043
- /**
3044
- */
3045
4049
  dataLabels: {
3046
-
3047
- /**
3048
- */
3049
4050
  formatter: function() { // #2945
3050
4051
  return this.point.z;
3051
4052
  },
3052
-
3053
- /**
3054
- */
3055
4053
  inside: true,
3056
-
3057
- /**
3058
- */
3059
4054
  verticalAlign: 'middle'
3060
4055
  },
3061
- // displayNegative: true,
4056
+
4057
+ /**
4058
+ * Whether to display negative sized bubbles. The threshold is given
4059
+ * by the [zThreshold](#plotOptions.bubble.zThreshold) option, and negative
4060
+ * bubbles can be visualized by setting [negativeColor](#plotOptions.
4061
+ * bubble.negativeColor).
4062
+ *
4063
+ * @type {Boolean}
4064
+ * @sample {highcharts} highcharts/plotoptions/bubble-negative/
4065
+ * Negative bubbles
4066
+ * @default true
4067
+ * @since 3.0
4068
+ * @product highcharts
4069
+ * @apioption plotOptions.bubble.displayNegative
4070
+ */
3062
4071
 
3063
4072
  /**
3064
4073
  * Options for the point markers of line-like series. Properties like
@@ -3066,44 +4075,32 @@
3066
4075
  * of the markers. Other series types, like column series, don't have
3067
4076
  * markers, but have visual options on the series level instead.
3068
4077
  *
3069
- * In [styled mode](http://www.highcharts.com/docs/chart-design-and-
3070
- * style/style-by-css), the markers can be styled with the `.highcharts-
3071
- * point`, `.highcharts-point-hover` and `.highcharts-point-select`
4078
+ * In styled mode, the markers can be styled with the `.highcharts-point`, `.highcharts-point-hover` and `.highcharts-point-select`
3072
4079
  * class names.
3073
4080
  *
3074
4081
  * @type {Object}
3075
4082
  * @extends plotOptions.series.marker
3076
- * @excluding radius
4083
+ * @excluding enabled,height,radius,width
3077
4084
  * @product highcharts
3078
4085
  */
3079
4086
  marker: {
3080
4087
 
3081
- // fillOpacity: 0.5,
3082
-
3083
- /**
3084
- */
3085
4088
  lineColor: null, // inherit from series.color
3086
-
3087
- /**
3088
- */
3089
4089
  lineWidth: 1,
3090
-
3091
- // Avoid offset in Point.setState
3092
-
3093
4090
  /**
4091
+ * The fill opacity of the bubble markers.
4092
+ * @type {Number}
4093
+ * @default 0.5
4094
+ * @product highcharts
3094
4095
  */
3095
- radius: null,
3096
4096
 
3097
4097
  /**
4098
+ * In bubble charts, the radius is overridden and determined based on
4099
+ * the point's data value.
3098
4100
  */
4101
+ radius: null,
3099
4102
  states: {
3100
-
3101
- /**
3102
- */
3103
4103
  hover: {
3104
-
3105
- /**
3106
- */
3107
4104
  radiusPlus: 0
3108
4105
  }
3109
4106
  },
@@ -3112,9 +4109,9 @@
3112
4109
  * A predefined shape or symbol for the marker. Possible values are
3113
4110
  * "circle", "square", "diamond", "triangle" and "triangle-down".
3114
4111
  *
3115
- * Additionally, the URL to a graphic can be given on the form `url(graphic.
3116
- * png)`. Note that for the image to be applied to exported charts,
3117
- * its URL needs to be accessible by the export server.
4112
+ * Additionally, the URL to a graphic can be given on the form
4113
+ * `url(graphic.png)`. Note that for the image to be applied to exported
4114
+ * charts, its URL needs to be accessible by the export server.
3118
4115
  *
3119
4116
  * Custom callbacks for symbol path generation can also be added to
3120
4117
  * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then
@@ -3122,8 +4119,10 @@
3122
4119
  *
3123
4120
  * @validvalue ["circle", "square", "diamond", "triangle", "triangle-down"]
3124
4121
  * @type {String}
3125
- * @sample {highcharts} highcharts/plotoptions/bubble-symbol/ Bubble chart with various symbols
3126
- * @sample {highcharts} highcharts/plotoptions/series-marker-symbol/ General chart with predefined, graphic and custom markers
4122
+ * @sample {highcharts} highcharts/plotoptions/bubble-symbol/
4123
+ * Bubble chart with various symbols
4124
+ * @sample {highcharts} highcharts/plotoptions/series-marker-symbol/
4125
+ * General chart with predefined, graphic and custom markers
3127
4126
  * @default circle
3128
4127
  * @since 5.0.11
3129
4128
  * @product highcharts
@@ -3158,8 +4157,50 @@
3158
4157
  * @product highcharts
3159
4158
  */
3160
4159
  maxSize: '20%',
3161
- // negativeColor: null,
3162
- // sizeBy: 'area'
4160
+
4161
+ /**
4162
+ * When a point's Z value is below the [zThreshold](#plotOptions.bubble.
4163
+ * zThreshold) setting, this color is used.
4164
+ *
4165
+ * @type {Color}
4166
+ * @sample {highcharts} highcharts/plotoptions/bubble-negative/
4167
+ * Negative bubbles
4168
+ * @default null
4169
+ * @since 3.0
4170
+ * @product highcharts
4171
+ * @apioption plotOptions.bubble.negativeColor
4172
+ */
4173
+
4174
+ /**
4175
+ * Whether the bubble's value should be represented by the area or the
4176
+ * width of the bubble. The default, `area`, corresponds best to the
4177
+ * human perception of the size of each bubble.
4178
+ *
4179
+ * @validvalue ["area", "width"]
4180
+ * @type {String}
4181
+ * @sample {highcharts} highcharts/plotoptions/bubble-sizeby/
4182
+ * Comparison of area and size
4183
+ * @default area
4184
+ * @since 3.0.7
4185
+ * @product highcharts
4186
+ * @apioption plotOptions.bubble.sizeBy
4187
+ */
4188
+
4189
+ /**
4190
+ * When this is true, the absolute value of z determines the size of
4191
+ * the bubble. This means that with the default `zThreshold` of 0, a
4192
+ * bubble of value -1 will have the same size as a bubble of value 1,
4193
+ * while a bubble of value 0 will have a smaller size according to
4194
+ * `minSize`.
4195
+ *
4196
+ * @type {Boolean}
4197
+ * @sample {highcharts} highcharts/plotoptions/bubble-sizebyabsolutevalue/
4198
+ * Size by absolute value, various thresholds
4199
+ * @default false
4200
+ * @since 4.1.9
4201
+ * @product highcharts
4202
+ * @apioption plotOptions.bubble.sizeByAbsoluteValue
4203
+ */
3163
4204
 
3164
4205
  /**
3165
4206
  * When this is true, the series will not cause the Y axis to cross
@@ -3177,36 +4218,18 @@
3177
4218
  */
3178
4219
  softThreshold: false,
3179
4220
 
3180
- /**
3181
- */
3182
4221
  states: {
3183
-
3184
- /**
3185
- */
3186
4222
  hover: {
3187
-
3188
- /**
3189
- */
3190
4223
  halo: {
3191
-
3192
- /**
3193
- */
3194
4224
  size: 5
3195
4225
  }
3196
4226
  }
3197
4227
  },
3198
4228
 
3199
- /**
3200
- */
3201
4229
  tooltip: {
3202
-
3203
- /**
3204
- */
3205
4230
  pointFormat: '({point.x}, {point.y}), Size: {point.z}'
3206
4231
  },
3207
4232
 
3208
- /**
3209
- */
3210
4233
  turboThreshold: 0,
3211
4234
 
3212
4235
  /**
@@ -3216,16 +4239,43 @@
3216
4239
  * is given, points with lower Z is colored.
3217
4240
  *
3218
4241
  * @type {Number}
3219
- * @sample {highcharts} highcharts/plotoptions/bubble-negative/ Negative bubbles
4242
+ * @sample {highcharts} highcharts/plotoptions/bubble-negative/
4243
+ * Negative bubbles
3220
4244
  * @default 0
3221
4245
  * @since 3.0
3222
4246
  * @product highcharts
3223
4247
  */
3224
4248
  zThreshold: 0,
3225
4249
 
4250
+ zoneAxis: 'z'
4251
+
3226
4252
  /**
4253
+ * The minimum for the Z value range. Defaults to the highest Z value
4254
+ * in the data.
4255
+ *
4256
+ * @type {Number}
4257
+ * @see [zMax](#plotOptions.bubble.zMin)
4258
+ * @sample {highcharts} highcharts/plotoptions/bubble-zmin-zmax/
4259
+ * Z has a possible range of 0-100
4260
+ * @default null
4261
+ * @since 4.0.3
4262
+ * @product highcharts
4263
+ * @apioption plotOptions.bubble.zMax
4264
+ */
4265
+
4266
+ /**
4267
+ * The minimum for the Z value range. Defaults to the lowest Z value
4268
+ * in the data.
4269
+ *
4270
+ * @type {Number}
4271
+ * @see [zMax](#plotOptions.bubble.zMax)
4272
+ * @sample {highcharts} highcharts/plotoptions/bubble-zmin-zmax/
4273
+ * Z has a possible range of 0-100
4274
+ * @default null
4275
+ * @since 4.0.3
4276
+ * @product highcharts
4277
+ * @apioption plotOptions.bubble.zMin
3227
4278
  */
3228
- zoneAxis: 'z'
3229
4279
 
3230
4280
  // Prototype members
3231
4281
  }, {
@@ -3499,9 +4549,85 @@
3499
4549
  }
3500
4550
  };
3501
4551
 
3502
- /* ****************************************************************************
3503
- * End Bubble series code *
3504
- *****************************************************************************/
4552
+
4553
+ /**
4554
+ * A `bubble` series. If the [type](#series.bubble.type) option is
4555
+ * not specified, it is inherited from [chart.type](#chart.type).
4556
+ *
4557
+ * For options that apply to multiple series, it is recommended to add
4558
+ * them to the [plotOptions.series](#plotOptions.series) options structure.
4559
+ * To apply to all series of this specific type, apply it to [plotOptions.
4560
+ * bubble](#plotOptions.bubble).
4561
+ *
4562
+ * @type {Object}
4563
+ * @extends series,plotOptions.bubble
4564
+ * @excluding dataParser,dataURL,stack
4565
+ * @product highcharts
4566
+ * @apioption series.bubble
4567
+ */
4568
+
4569
+ /**
4570
+ * An array of data points for the series. For the `bubble` series type,
4571
+ * points can be given in the following ways:
4572
+ *
4573
+ * 1. An array of arrays with 3 or 2 values. In this case, the values
4574
+ * correspond to `x,y,z`. If the first value is a string, it is applied
4575
+ * as the name of the point, and the `x` value is inferred. The `x`
4576
+ * value can also be omitted, in which case the inner arrays should
4577
+ * be of length 2\. Then the `x` value is automatically calculated,
4578
+ * either starting at 0 and incremented by 1, or from `pointStart` and
4579
+ * `pointInterval` given in the series options.
4580
+ *
4581
+ * ```js
4582
+ * data: [
4583
+ * [0, 1, 2],
4584
+ * [1, 5, 5],
4585
+ * [2, 0, 2]
4586
+ * ]
4587
+ * ```
4588
+ *
4589
+ * 2. An array of objects with named values. The objects are point
4590
+ * configuration objects as seen below. If the total number of data
4591
+ * points exceeds the series' [turboThreshold](#series.bubble.turboThreshold),
4592
+ * this option is not available.
4593
+ *
4594
+ * ```js
4595
+ * data: [{
4596
+ * x: 1,
4597
+ * y: 1,
4598
+ * z: 1,
4599
+ * name: "Point2",
4600
+ * color: "#00FF00"
4601
+ * }, {
4602
+ * x: 1,
4603
+ * y: 5,
4604
+ * z: 4,
4605
+ * name: "Point1",
4606
+ * color: "#FF00FF"
4607
+ * }]
4608
+ * ```
4609
+ *
4610
+ * @type {Array<Object|Array>}
4611
+ * @extends series.line.data
4612
+ * @excluding marker
4613
+ * @sample {highcharts} highcharts/chart/reflow-true/ Numerical values
4614
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/ Arrays of numeric x and y
4615
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/ Arrays of datetime x and y
4616
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/ Arrays of point.name and y
4617
+ * @sample {highcharts} highcharts/series/data-array-of-objects/ Config objects
4618
+ * @product highcharts
4619
+ * @apioption series.bubble.data
4620
+ */
4621
+
4622
+ /**
4623
+ * The size value for each bubble. The bubbles' diameters are computed
4624
+ * based on the `z`, and controlled by series options like `minSize`,
4625
+ * `maxSize`, `sizeBy`, `zMin` and `zMax`.
4626
+ *
4627
+ * @type {Number}
4628
+ * @product highcharts
4629
+ * @apioption series.bubble.data.z
4630
+ */
3505
4631
 
3506
4632
  }(Highcharts));
3507
4633
  (function(H) {
@@ -3570,7 +4696,7 @@
3570
4696
  leftContY,
3571
4697
  rightContX,
3572
4698
  rightContY,
3573
- dLControlPoint, //distance left control point
4699
+ dLControlPoint, // distance left control point
3574
4700
  dRControlPoint,
3575
4701
  leftContAngle,
3576
4702
  rightContAngle,
@@ -3843,7 +4969,6 @@
3843
4969
 
3844
4970
  group.attr(attribs);
3845
4971
  if (markerGroup) {
3846
- //markerGroup.attrSetters = group.attrSetters;
3847
4972
  markerGroup.attr(attribs);
3848
4973
  }
3849
4974