highcharts 7.1.1 → 7.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/bower.json +1 -1
  2. package/css/annotations/popup.css +3 -3
  3. package/css/annotations/popup.scss +1 -1
  4. package/css/stocktools/gui.css +5 -5
  5. package/css/stocktools/gui.scss +1 -1
  6. package/es-modules/annotations/ControlPoint.js +1 -1
  7. package/es-modules/annotations/MockPoint.js +45 -12
  8. package/es-modules/annotations/annotations.src.js +203 -166
  9. package/es-modules/annotations/controllable/ControllableCircle.js +2 -10
  10. package/es-modules/annotations/controllable/ControllableImage.js +2 -10
  11. package/es-modules/annotations/controllable/ControllableLabel.js +54 -9
  12. package/es-modules/annotations/controllable/ControllableRect.js +2 -10
  13. package/es-modules/annotations/controllable/controllableMixin.js +32 -4
  14. package/es-modules/annotations/controllable/markerMixin.js +1 -0
  15. package/es-modules/annotations/eventEmitterMixin.js +1 -0
  16. package/es-modules/annotations/navigationBindings.js +15 -11
  17. package/es-modules/annotations/popup.js +59 -81
  18. package/es-modules/annotations/types/CrookedLine.js +19 -7
  19. package/es-modules/annotations/types/ElliottWave.js +7 -6
  20. package/es-modules/annotations/types/Fibonacci.js +14 -14
  21. package/es-modules/annotations/types/InfinityLine.js +4 -4
  22. package/es-modules/annotations/types/Measure.js +41 -41
  23. package/es-modules/annotations/types/Pitchfork.js +5 -4
  24. package/es-modules/annotations/types/VerticalLine.js +6 -5
  25. package/es-modules/error-messages.js +6 -1
  26. package/es-modules/indicators/indicators.src.js +5 -3
  27. package/es-modules/mixins/nodes.js +16 -8
  28. package/es-modules/modules/accessibility/AccessibilityComponent.js +4 -4
  29. package/es-modules/modules/accessibility/KeyboardNavigation.js +17 -4
  30. package/es-modules/modules/accessibility/components/RangeSelectorComponent.js +3 -2
  31. package/es-modules/modules/accessibility/components/SeriesComponent.js +110 -2
  32. package/es-modules/modules/accessibility/components/ZoomComponent.js +1 -1
  33. package/es-modules/modules/accessibility/options.js +2 -1
  34. package/es-modules/modules/bellcurve.src.js +27 -29
  35. package/es-modules/modules/boost/boost-init.js +14 -0
  36. package/es-modules/modules/boost/boost-overrides.js +13 -3
  37. package/es-modules/modules/boost/wgl-renderer.js +30 -15
  38. package/es-modules/modules/boost/wgl-shader.js +33 -16
  39. package/es-modules/modules/boost/wgl-vbuffer.js +8 -4
  40. package/es-modules/modules/broken-axis.src.js +1 -1
  41. package/es-modules/modules/bullet.src.js +68 -68
  42. package/es-modules/modules/cylinder.src.js +3 -1
  43. package/es-modules/modules/data.src.js +9 -5
  44. package/es-modules/modules/draggable-points.src.js +1 -1
  45. package/es-modules/modules/drilldown.src.js +1 -1
  46. package/es-modules/modules/export-data.src.js +7 -8
  47. package/es-modules/modules/exporting.src.js +9 -1
  48. package/es-modules/modules/full-screen.src.js +1 -1
  49. package/es-modules/modules/funnel3d.src.js +10 -3
  50. package/es-modules/modules/histogram.src.js +162 -164
  51. package/es-modules/modules/item-series.src.js +10 -10
  52. package/es-modules/modules/networkgraph/layouts.js +16 -12
  53. package/es-modules/modules/networkgraph/networkgraph.src.js +147 -51
  54. package/es-modules/modules/offline-exporting.src.js +15 -2
  55. package/es-modules/modules/oldie-polyfills.src.js +1 -1
  56. package/es-modules/modules/organization.src.js +65 -20
  57. package/es-modules/modules/pareto.src.js +52 -51
  58. package/es-modules/modules/pattern-fill.src.js +1 -1
  59. package/es-modules/modules/price-indicator.src.js +1 -1
  60. package/es-modules/modules/pyramid3d.src.js +1 -1
  61. package/es-modules/modules/sankey.src.js +22 -10
  62. package/es-modules/modules/series-label.src.js +16 -8
  63. package/es-modules/modules/solid-gauge.src.js +128 -79
  64. package/es-modules/modules/static-scale.src.js +8 -1
  65. package/es-modules/modules/stock-tools-gui.js +1 -1
  66. package/es-modules/modules/streamgraph.src.js +11 -11
  67. package/es-modules/modules/sunburst.src.js +23 -2
  68. package/es-modules/modules/tilemap.src.js +58 -57
  69. package/es-modules/modules/timeline.src.js +17 -12
  70. package/es-modules/modules/treemap.src.js +6 -6
  71. package/es-modules/modules/variwide.src.js +39 -39
  72. package/es-modules/modules/vector.src.js +108 -107
  73. package/es-modules/modules/venn.src.js +4 -2
  74. package/es-modules/modules/windbarb.src.js +43 -43
  75. package/es-modules/modules/wordcloud.src.js +1 -0
  76. package/es-modules/modules/xrange.src.js +112 -104
  77. package/es-modules/parts/AreaSeries.js +4 -1
  78. package/es-modules/parts/Axis.js +809 -1870
  79. package/es-modules/parts/Chart.js +254 -743
  80. package/es-modules/parts/Color.js +160 -113
  81. package/es-modules/parts/ColumnSeries.js +9 -3
  82. package/es-modules/parts/DataLabels.js +31 -2
  83. package/es-modules/parts/Dynamics.js +73 -26
  84. package/es-modules/parts/FlagsSeries.js +6 -4
  85. package/es-modules/parts/Globals.js +20 -36
  86. package/es-modules/parts/Html.js +116 -235
  87. package/es-modules/parts/Interaction.js +17 -7
  88. package/es-modules/parts/Legend.js +277 -632
  89. package/es-modules/parts/MSPointer.js +62 -106
  90. package/es-modules/parts/Options.js +128 -367
  91. package/es-modules/parts/OrdinalAxis.js +12 -0
  92. package/es-modules/parts/PieSeries.js +61 -44
  93. package/es-modules/parts/PlotLineOrBand.js +38 -3
  94. package/es-modules/parts/Point.js +117 -227
  95. package/es-modules/parts/Pointer.js +273 -558
  96. package/es-modules/parts/RangeSelector.js +5 -3
  97. package/es-modules/parts/Responsive.js +8 -4
  98. package/es-modules/parts/ScrollablePlotArea.js +215 -81
  99. package/es-modules/parts/Scrollbar.js +38 -23
  100. package/es-modules/parts/Series.js +151 -47
  101. package/es-modules/parts/Stacking.js +8 -3
  102. package/es-modules/parts/StockChart.js +42 -29
  103. package/es-modules/parts/SvgRenderer.js +1080 -2100
  104. package/es-modules/parts/Tick.js +11 -4
  105. package/es-modules/parts/Time.js +179 -363
  106. package/es-modules/parts/Tooltip.js +23 -12
  107. package/es-modules/parts/TouchPointer.js +69 -187
  108. package/es-modules/parts/Utilities.js +593 -846
  109. package/es-modules/parts-3d/Axis.js +2 -2
  110. package/es-modules/parts-3d/Column.js +18 -8
  111. package/es-modules/parts-gantt/GanttSeries.js +17 -21
  112. package/es-modules/parts-gantt/GridAxis.js +183 -101
  113. package/es-modules/parts-gantt/PathfinderAlgorithms.js +2 -2
  114. package/es-modules/parts-gantt/TreeGrid.js +53 -36
  115. package/es-modules/parts-map/ColorAxis.js +35 -14
  116. package/es-modules/parts-map/MapBubbleSeries.js +2 -1
  117. package/es-modules/parts-map/MapSeries.js +29 -18
  118. package/es-modules/parts-more/AreaRangeSeries.js +13 -12
  119. package/es-modules/parts-more/ColumnRangeSeries.js +8 -2
  120. package/es-modules/parts-more/GaugeSeries.js +9 -9
  121. package/es-modules/parts-more/PackedBubbleSeries.js +152 -115
  122. package/es-modules/parts-more/RadialAxis.js +102 -8
  123. package/es-modules/parts-more/WaterfallSeries.js +148 -35
  124. package/highcharts-3d.js +68 -67
  125. package/highcharts-3d.js.map +1 -1
  126. package/highcharts-3d.src.js +21 -11
  127. package/highcharts-gantt.d.ts +5 -3
  128. package/highcharts-gantt.js +618 -610
  129. package/highcharts-gantt.js.map +1 -1
  130. package/highcharts-gantt.src.d.ts +5 -3
  131. package/highcharts-gantt.src.js +5185 -8892
  132. package/highcharts-more.js +144 -140
  133. package/highcharts-more.js.map +1 -1
  134. package/highcharts-more.src.js +449 -194
  135. package/highcharts.d.ts +3943 -5236
  136. package/highcharts.js +454 -449
  137. package/highcharts.js.map +1 -1
  138. package/highcharts.src.d.ts +3943 -5236
  139. package/highcharts.src.js +4767 -8601
  140. package/highmaps.d.ts +5 -3
  141. package/highmaps.js +498 -494
  142. package/highmaps.js.map +1 -1
  143. package/highmaps.src.d.ts +5 -3
  144. package/highmaps.src.js +4547 -8507
  145. package/highstock.d.ts +5 -3
  146. package/highstock.js +597 -590
  147. package/highstock.js.map +1 -1
  148. package/highstock.src.d.ts +5 -3
  149. package/highstock.src.js +4871 -8661
  150. package/indicators/acceleration-bands.js +1 -1
  151. package/indicators/acceleration-bands.src.js +1 -1
  152. package/indicators/accumulation-distribution.js +1 -1
  153. package/indicators/accumulation-distribution.src.js +1 -1
  154. package/indicators/ao.js +1 -1
  155. package/indicators/ao.src.js +1 -1
  156. package/indicators/apo.js +1 -1
  157. package/indicators/apo.src.js +1 -1
  158. package/indicators/aroon-oscillator.js +1 -1
  159. package/indicators/aroon-oscillator.src.js +1 -1
  160. package/indicators/aroon.js +1 -1
  161. package/indicators/aroon.src.js +1 -1
  162. package/indicators/atr.js +1 -1
  163. package/indicators/atr.src.js +1 -1
  164. package/indicators/bollinger-bands.js +1 -1
  165. package/indicators/bollinger-bands.src.js +1 -1
  166. package/indicators/cci.js +1 -1
  167. package/indicators/cci.src.js +1 -1
  168. package/indicators/chaikin.js +1 -1
  169. package/indicators/chaikin.src.js +1 -1
  170. package/indicators/cmf.js +1 -1
  171. package/indicators/cmf.src.js +1 -1
  172. package/indicators/dema.js +1 -1
  173. package/indicators/dema.src.js +1 -1
  174. package/indicators/dpo.js +1 -1
  175. package/indicators/dpo.src.js +1 -1
  176. package/indicators/ema.js +1 -1
  177. package/indicators/ema.src.js +1 -1
  178. package/indicators/ichimoku-kinko-hyo.js +1 -1
  179. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  180. package/indicators/indicators-all.js +105 -105
  181. package/indicators/indicators-all.js.map +1 -1
  182. package/indicators/indicators-all.src.js +6 -4
  183. package/indicators/indicators.js +9 -9
  184. package/indicators/indicators.js.map +1 -1
  185. package/indicators/indicators.src.js +6 -4
  186. package/indicators/keltner-channels.js +1 -1
  187. package/indicators/keltner-channels.src.js +1 -1
  188. package/indicators/macd.js +1 -1
  189. package/indicators/macd.src.js +1 -1
  190. package/indicators/mfi.js +1 -1
  191. package/indicators/mfi.src.js +1 -1
  192. package/indicators/momentum.js +1 -1
  193. package/indicators/momentum.src.js +1 -1
  194. package/indicators/natr.js +1 -1
  195. package/indicators/natr.src.js +1 -1
  196. package/indicators/pivot-points.js +1 -1
  197. package/indicators/pivot-points.src.js +1 -1
  198. package/indicators/ppo.js +1 -1
  199. package/indicators/ppo.src.js +1 -1
  200. package/indicators/price-channel.js +1 -1
  201. package/indicators/price-channel.src.js +1 -1
  202. package/indicators/price-envelopes.js +1 -1
  203. package/indicators/price-envelopes.src.js +1 -1
  204. package/indicators/psar.js +1 -1
  205. package/indicators/psar.src.js +1 -1
  206. package/indicators/regressions.js +1 -1
  207. package/indicators/regressions.src.js +1 -1
  208. package/indicators/roc.js +1 -1
  209. package/indicators/roc.src.js +1 -1
  210. package/indicators/rsi.js +1 -1
  211. package/indicators/rsi.src.js +1 -1
  212. package/indicators/stochastic.js +1 -1
  213. package/indicators/stochastic.src.js +1 -1
  214. package/indicators/supertrend.js +1 -1
  215. package/indicators/supertrend.src.js +1 -1
  216. package/indicators/tema.js +1 -1
  217. package/indicators/tema.src.js +1 -1
  218. package/indicators/trix.js +1 -1
  219. package/indicators/trix.src.js +1 -1
  220. package/indicators/volume-by-price.js +1 -1
  221. package/indicators/volume-by-price.src.js +1 -1
  222. package/indicators/vwap.js +1 -1
  223. package/indicators/vwap.src.js +1 -1
  224. package/indicators/williams-r.js +1 -1
  225. package/indicators/williams-r.src.js +1 -1
  226. package/indicators/wma.js +1 -1
  227. package/indicators/wma.src.js +1 -1
  228. package/indicators/zigzag.js +1 -1
  229. package/indicators/zigzag.src.js +1 -1
  230. package/modules/accessibility.js +92 -89
  231. package/modules/accessibility.js.map +1 -1
  232. package/modules/accessibility.src.js +138 -15
  233. package/modules/annotations-advanced.js +128 -127
  234. package/modules/annotations-advanced.js.map +1 -1
  235. package/modules/annotations-advanced.src.js +514 -396
  236. package/modules/annotations.d.ts +36 -0
  237. package/modules/annotations.js +81 -81
  238. package/modules/annotations.js.map +1 -1
  239. package/modules/annotations.src.d.ts +36 -0
  240. package/modules/annotations.src.js +418 -315
  241. package/modules/arrow-symbols.js +1 -1
  242. package/modules/arrow-symbols.src.js +1 -1
  243. package/modules/boost-canvas.js +1 -1
  244. package/modules/boost-canvas.src.js +1 -1
  245. package/modules/boost.js +63 -63
  246. package/modules/boost.js.map +1 -1
  247. package/modules/boost.src.js +99 -39
  248. package/modules/broken-axis.js +1 -1
  249. package/modules/broken-axis.src.js +2 -2
  250. package/modules/bullet.js +1 -1
  251. package/modules/bullet.src.js +69 -69
  252. package/modules/current-date-indicator.js +1 -1
  253. package/modules/current-date-indicator.src.js +1 -1
  254. package/modules/cylinder.js +1 -1
  255. package/modules/cylinder.js.map +1 -1
  256. package/modules/cylinder.src.js +4 -2
  257. package/modules/data.js +4 -4
  258. package/modules/data.js.map +1 -1
  259. package/modules/data.src.js +10 -6
  260. package/modules/datagrouping.js +1 -1
  261. package/modules/datagrouping.src.js +1 -1
  262. package/modules/debugger.js +4 -4
  263. package/modules/debugger.js.map +1 -1
  264. package/modules/debugger.src.js +7 -2
  265. package/modules/dependency-wheel.js +1 -1
  266. package/modules/dependency-wheel.src.js +1 -1
  267. package/modules/dotplot.js +1 -1
  268. package/modules/dotplot.src.js +1 -1
  269. package/modules/drag-panes.js +1 -1
  270. package/modules/drag-panes.src.js +1 -1
  271. package/modules/draggable-points.js +1 -1
  272. package/modules/draggable-points.src.js +2 -2
  273. package/modules/drilldown.js +1 -1
  274. package/modules/drilldown.src.js +2 -2
  275. package/modules/export-data.js +2 -2
  276. package/modules/export-data.js.map +1 -1
  277. package/modules/export-data.src.js +8 -9
  278. package/modules/exporting.js +25 -25
  279. package/modules/exporting.js.map +1 -1
  280. package/modules/exporting.src.js +11 -3
  281. package/modules/full-screen.js +1 -1
  282. package/modules/full-screen.src.js +2 -2
  283. package/modules/funnel.js +1 -1
  284. package/modules/funnel.src.js +1 -1
  285. package/modules/funnel3d.js +2 -2
  286. package/modules/funnel3d.js.map +1 -1
  287. package/modules/funnel3d.src.js +11 -4
  288. package/modules/gantt.js +166 -164
  289. package/modules/gantt.js.map +1 -1
  290. package/modules/gantt.src.js +422 -295
  291. package/modules/grid-axis.js +18 -16
  292. package/modules/grid-axis.js.map +1 -1
  293. package/modules/grid-axis.src.js +184 -102
  294. package/modules/heatmap.js +22 -22
  295. package/modules/heatmap.js.map +1 -1
  296. package/modules/heatmap.src.js +36 -15
  297. package/modules/histogram-bellcurve.js +1 -1
  298. package/modules/histogram-bellcurve.js.map +1 -1
  299. package/modules/histogram-bellcurve.src.js +186 -183
  300. package/modules/item-series.js +1 -1
  301. package/modules/item-series.src.js +11 -11
  302. package/modules/map-parser.js +1 -1
  303. package/modules/map-parser.src.js +1 -1
  304. package/modules/map.js +83 -83
  305. package/modules/map.js.map +1 -1
  306. package/modules/map.src.js +67 -34
  307. package/modules/networkgraph.js +10 -9
  308. package/modules/networkgraph.js.map +1 -1
  309. package/modules/networkgraph.src.js +180 -72
  310. package/modules/no-data-to-display.js +1 -1
  311. package/modules/no-data-to-display.src.js +1 -1
  312. package/modules/offline-exporting.js +15 -15
  313. package/modules/offline-exporting.js.map +1 -1
  314. package/modules/offline-exporting.src.js +17 -4
  315. package/modules/oldie-polyfills.js +1 -1
  316. package/modules/oldie-polyfills.src.js +2 -2
  317. package/modules/oldie.js +2 -2
  318. package/modules/oldie.src.js +2 -2
  319. package/modules/organization.js +1 -1
  320. package/modules/organization.js.map +1 -1
  321. package/modules/organization.src.js +66 -21
  322. package/modules/overlapping-datalabels.js +1 -1
  323. package/modules/overlapping-datalabels.src.js +1 -1
  324. package/modules/parallel-coordinates.js +1 -1
  325. package/modules/parallel-coordinates.src.js +1 -1
  326. package/modules/pareto.js +1 -1
  327. package/modules/pareto.js.map +1 -1
  328. package/modules/pareto.src.js +53 -52
  329. package/modules/pathfinder.js +3 -3
  330. package/modules/pathfinder.js.map +1 -1
  331. package/modules/pathfinder.src.js +3 -3
  332. package/modules/pattern-fill.js +1 -1
  333. package/modules/pattern-fill.src.js +2 -2
  334. package/modules/price-indicator.js +1 -1
  335. package/modules/price-indicator.src.js +2 -2
  336. package/modules/pyramid3d.js +1 -1
  337. package/modules/pyramid3d.src.js +2 -2
  338. package/modules/sankey.js +14 -14
  339. package/modules/sankey.js.map +1 -1
  340. package/modules/sankey.src.js +39 -19
  341. package/modules/series-label.js +16 -16
  342. package/modules/series-label.js.map +1 -1
  343. package/modules/series-label.src.js +17 -9
  344. package/modules/solid-gauge.js +5 -5
  345. package/modules/solid-gauge.js.map +1 -1
  346. package/modules/solid-gauge.src.js +129 -80
  347. package/modules/sonification.js +1 -1
  348. package/modules/sonification.src.js +1 -1
  349. package/modules/static-scale.js +4 -4
  350. package/modules/static-scale.js.map +1 -1
  351. package/modules/static-scale.src.js +9 -2
  352. package/modules/stock-tools.js +2 -2
  353. package/modules/stock-tools.src.js +3 -3
  354. package/modules/stock.js +146 -145
  355. package/modules/stock.js.map +1 -1
  356. package/modules/stock.src.js +105 -61
  357. package/modules/streamgraph.js +1 -1
  358. package/modules/streamgraph.src.js +12 -12
  359. package/modules/sunburst.js +40 -40
  360. package/modules/sunburst.js.map +1 -1
  361. package/modules/sunburst.src.js +30 -9
  362. package/modules/tilemap.js +1 -1
  363. package/modules/tilemap.js.map +1 -1
  364. package/modules/tilemap.src.js +59 -58
  365. package/modules/timeline.js +12 -11
  366. package/modules/timeline.js.map +1 -1
  367. package/modules/timeline.src.js +18 -13
  368. package/modules/treegrid.js +45 -43
  369. package/modules/treegrid.js.map +1 -1
  370. package/modules/treegrid.src.js +238 -139
  371. package/modules/treemap.js +1 -1
  372. package/modules/treemap.src.js +7 -7
  373. package/modules/variable-pie.js +1 -1
  374. package/modules/variable-pie.src.js +1 -1
  375. package/modules/variwide.js +1 -1
  376. package/modules/variwide.src.js +40 -40
  377. package/modules/vector.js +1 -1
  378. package/modules/vector.js.map +1 -1
  379. package/modules/vector.src.js +109 -108
  380. package/modules/venn.js +23 -23
  381. package/modules/venn.js.map +1 -1
  382. package/modules/venn.src.js +5 -3
  383. package/modules/windbarb.js +1 -1
  384. package/modules/windbarb.src.js +44 -44
  385. package/modules/wordcloud.js +10 -10
  386. package/modules/wordcloud.js.map +1 -1
  387. package/modules/wordcloud.src.js +2 -1
  388. package/modules/xrange.js +12 -12
  389. package/modules/xrange.js.map +1 -1
  390. package/modules/xrange.src.js +113 -105
  391. package/package.json +1 -1
  392. package/themes/avocado.js +21 -37
  393. package/themes/avocado.src.js +1 -1
  394. package/themes/dark-blue.js +1 -1
  395. package/themes/dark-blue.src.js +1 -1
  396. package/themes/dark-green.js +1 -1
  397. package/themes/dark-green.src.js +1 -1
  398. package/themes/dark-unica.js +1 -1
  399. package/themes/dark-unica.src.js +1 -1
  400. package/themes/gray.js +1 -1
  401. package/themes/gray.src.js +1 -1
  402. package/themes/grid-light.js +1 -1
  403. package/themes/grid-light.src.js +1 -1
  404. package/themes/grid.js +1 -1
  405. package/themes/grid.src.js +1 -1
  406. package/themes/sand-signika.js +1 -1
  407. package/themes/sand-signika.src.js +1 -1
  408. package/themes/skies.js +1 -1
  409. package/themes/skies.src.js +1 -1
  410. package/themes/sunset.js +21 -37
  411. package/themes/sunset.src.js +1 -1
  412. package/.DS_Store +0 -0
  413. package/es-modules/.DS_Store +0 -0
  414. package/es-modules/modules/annotations-legacy.src.js +0 -1977
  415. package/js/.DS_Store +0 -0
@@ -1,4 +1,4 @@
1
- /**
1
+ /* *
2
2
  * Exporting module
3
3
  *
4
4
  * (c) 2010-2019 Torstein Honsi
@@ -1135,6 +1135,12 @@ extend(Chart.prototype, /** @lends Highcharts.Chart.prototype */ {
1135
1135
  // Copy the options and add extra options
1136
1136
  options = merge(chart.options, chartOptions);
1137
1137
 
1138
+ // Use userOptions to make the options chain in series right (#3881)
1139
+ options.plotOptions = merge(
1140
+ chart.userOptions.plotOptions,
1141
+ chartOptions && chartOptions.plotOptions
1142
+ );
1143
+
1138
1144
  // create a sandbox where a new chart will be generated
1139
1145
  sandbox = createElement('div', null, {
1140
1146
  position: 'absolute',
@@ -1518,6 +1524,7 @@ extend(Chart.prototype, /** @lends Highcharts.Chart.prototype */ {
1518
1524
  button.setState(0);
1519
1525
  }
1520
1526
  chart.openMenu = false;
1527
+ css(chart.renderTo, { overflow: 'hidden' }); // #10361
1521
1528
  H.clearTimeout(menu.hideTimer);
1522
1529
  fireEvent(chart, 'exportMenuHidden');
1523
1530
  };
@@ -1622,6 +1629,7 @@ extend(Chart.prototype, /** @lends Highcharts.Chart.prototype */ {
1622
1629
  }
1623
1630
 
1624
1631
  css(menu, menuStyle);
1632
+ css(chart.renderTo, { overflow: '' }); // #10361
1625
1633
  chart.openMenu = true;
1626
1634
  },
1627
1635
 
@@ -1,4 +1,4 @@
1
- /**
1
+ /* *
2
2
  * (c) 2009-2019 Sebastian Bochann
3
3
  *
4
4
  * Full screen for Highcharts
@@ -121,11 +121,18 @@ seriesType('funnel3d', 'column',
121
121
  edgeWidth: 0,
122
122
  colorByPoint: true,
123
123
  showInLegend: false,
124
+ /**
125
+ * @default {"align": "right", "crop": false, "inside": false, "overflow": "allow"}
126
+ */
124
127
  dataLabels: {
125
- overflow: 'allow',
128
+ /** @ignore-option */
129
+ align: 'right',
130
+ /** @ignore-option */
126
131
  crop: false,
132
+ /** @ignore-option */
127
133
  inside: false,
128
- align: 'right'
134
+ /** @ignore-option */
135
+ overflow: 'allow'
129
136
  }
130
137
  }, {
131
138
  // Override default axis options with series required options for axes
@@ -435,7 +442,7 @@ seriesType('funnel3d', 'column',
435
442
  * Config objects
436
443
  *
437
444
  * @type {Array<number|Array<number>|*>}
438
- * @extends series.funnel3d.data
445
+ * @extends series.column.data
439
446
  * @product highcharts
440
447
  * @apioption series.funnel3d.data
441
448
  */
@@ -1,11 +1,11 @@
1
- /**
2
- * @license @product.name@ JS v@product.version@ (@product.date@)
1
+ /* *
3
2
  *
4
- * (c) 2010-2017 Highsoft AS
5
- * Author: Sebastian Domas
3
+ * Copyright (c) 2010-2017 Highsoft AS
4
+ * Author: Sebastian Domas
6
5
  *
7
- * License: www.highcharts.com/license
8
- */
6
+ * License: www.highcharts.com/license
7
+ *
8
+ * */
9
9
 
10
10
  'use strict';
11
11
  import H from '../parts/Globals.js';
@@ -19,11 +19,9 @@ var objectEach = H.objectEach,
19
19
  arrayMin = H.arrayMin,
20
20
  merge = H.merge;
21
21
 
22
- /* ***************************************************************************
23
- *
24
- * HISTOGRAM
25
- *
26
- **************************************************************************** */
22
+ /* ************************************************************************** *
23
+ * HISTOGRAM
24
+ * ************************************************************************** */
27
25
 
28
26
  /**
29
27
  * A dictionary with formulas for calculating number of bins based on the
@@ -63,163 +61,176 @@ function fitToBinLeftClosed(bins) {
63
61
  /**
64
62
  * Histogram class
65
63
  *
66
- * @constructor seriesTypes.histogram
67
- * @augments seriesTypes.column
68
- * @mixes DerivedSeriesMixin
69
- **/
64
+ * @private
65
+ * @class
66
+ * @name Highcharts.seriesTypes.histogram
67
+ * @augments Highcharts.Series
68
+ */
70
69
 
71
- /**
72
- * A histogram is a column series which represents the distribution of the data
73
- * set in the base series. Histogram splits data into bins and shows their
74
- * frequencies.
75
- *
76
- * @product highcharts
77
- * @sample {highcharts} highcharts/demo/histogram/ Histogram
78
- * @since 6.0.0
79
- * @extends plotOptions.column
80
- * @excluding boostThreshold, pointInterval, pointIntervalUnit, stacking
81
- * @optionparent plotOptions.histogram
82
- **/
83
- seriesType('histogram', 'column', {
70
+ seriesType(
71
+ 'histogram',
72
+ 'column',
84
73
  /**
85
- * A preferable number of bins. It is a suggestion, so a histogram may have
86
- * a different number of bins. By default it is set to the square root
87
- * of the base series' data length. Available options are: `square-root`,
88
- * `sturges`, `rice`. You can also define a function which takes a
89
- * `baseSeries` as a parameter and should return a positive integer.
74
+ * A histogram is a column series which represents the distribution of the
75
+ * data set in the base series. Histogram splits data into bins and shows
76
+ * their frequencies.
90
77
  *
91
- * @type {String|Number|Function}
92
- * @validvalue ["square-root", "sturges", "rice"]
93
- */
94
- binsNumber: 'square-root',
95
-
96
- /**
97
- * Width of each bin. By default the bin's width is calculated as
98
- * `(max - min) / number of bins`. This option takes precedence over
99
- * [binsNumber](#plotOptions.histogram.binsNumber).
78
+ * @sample {highcharts} highcharts/demo/histogram/
79
+ * Histogram
100
80
  *
101
- * @type {Number}
81
+ * @extends plotOptions.column
82
+ * @excluding boostThreshold, pointInterval, pointIntervalUnit, stacking
83
+ * @product highcharts
84
+ * @since 6.0.0
85
+ * @optionparent plotOptions.histogram
102
86
  */
103
- binWidth: undefined,
104
- pointPadding: 0,
105
- groupPadding: 0,
106
- grouping: false,
107
- pointPlacement: 'between',
108
- tooltip: {
109
- headerFormat: '',
110
- pointFormat: '<span style="font-size: 10px">{point.x} - {point.x2}' +
111
- '</span><br/>' +
112
- '<span style="color:{point.color}">\u25CF</span>' +
113
- ' {series.name} <b>{point.y}</b><br/>'
114
- }
115
-
116
- }, merge(derivedSeriesMixin, {
117
- setDerivedData: function () {
118
- var data = this.derivedData(
119
- this.baseSeries.yData,
120
- this.binsNumber(),
121
- this.options.binWidth
122
- );
123
-
124
- this.setData(data, false);
125
- },
126
-
127
- derivedData: function (baseData, binsNumber, binWidth) {
128
- var series = this,
129
- max = arrayMax(baseData),
130
- // Float correction needed, because first frequency value is not
131
- // corrected when generating frequencies (within for loop).
132
- min = correctFloat(arrayMin(baseData)),
133
- frequencies = [],
134
- bins = {},
135
- data = [],
136
- x,
137
- fitToBin;
138
-
139
- binWidth = series.binWidth = series.options.pointRange = correctFloat(
140
- isNumber(binWidth) ?
141
- (binWidth || 1) :
142
- (max - min) / binsNumber
143
- );
144
-
145
- // If binWidth is 0 then max and min are equaled,
146
- // increment the x with some positive value to quit the loop
147
- for (
148
- x = min;
149
- // This condition is needed because of the margin of error while
150
- // operating on decimal numbers. Without that, additional bin was
151
- // sometimes noticeable on the graph, because of too small precision
152
- // of float correction.
153
- x < max &&
154
- (
155
- series.userOptions.binWidth ||
156
- correctFloat(max - x) >= binWidth ||
157
- correctFloat(min + (frequencies.length * binWidth) - x) <= 0
158
- );
159
- x = correctFloat(x + binWidth)
160
- ) {
161
- frequencies.push(x);
162
- bins[x] = 0;
163
- }
164
-
165
- if (bins[min] !== 0) {
166
- frequencies.push(correctFloat(min));
167
- bins[correctFloat(min)] = 0;
87
+ {
88
+ /**
89
+ * A preferable number of bins. It is a suggestion, so a histogram may
90
+ * have a different number of bins. By default it is set to the square
91
+ * root of the base series' data length. Available options are:
92
+ * `square-root`, `sturges`, `rice`. You can also define a function
93
+ * which takes a `baseSeries` as a parameter and should return a
94
+ * positive integer.
95
+ *
96
+ * @type {"square-root"|"sturges"|"rice"|number|function}
97
+ */
98
+ binsNumber: 'square-root',
99
+
100
+ /**
101
+ * Width of each bin. By default the bin's width is calculated as
102
+ * `(max - min) / number of bins`. This option takes precedence over
103
+ * [binsNumber](#plotOptions.histogram.binsNumber).
104
+ *
105
+ * @type {number}
106
+ */
107
+ binWidth: undefined,
108
+ pointPadding: 0,
109
+ groupPadding: 0,
110
+ grouping: false,
111
+ pointPlacement: 'between',
112
+ tooltip: {
113
+ headerFormat: '',
114
+ pointFormat: (
115
+ '<span style="font-size: 10px">{point.x} - {point.x2}' +
116
+ '</span><br/>' +
117
+ '<span style="color:{point.color}">\u25CF</span>' +
118
+ ' {series.name} <b>{point.y}</b><br/>'
119
+ )
168
120
  }
169
121
 
170
- fitToBin = fitToBinLeftClosed(
171
- frequencies.map(function (elem) {
172
- return parseFloat(elem);
173
- })
174
- );
175
-
176
- baseData.forEach(function (y) {
177
- var x = correctFloat(fitToBin(y));
122
+ },
123
+ merge(derivedSeriesMixin, {
124
+ setDerivedData: function () {
125
+ var data = this.derivedData(
126
+ this.baseSeries.yData,
127
+ this.binsNumber(),
128
+ this.options.binWidth
129
+ );
130
+
131
+ this.setData(data, false);
132
+ },
133
+
134
+ derivedData: function (baseData, binsNumber, binWidth) {
135
+ var series = this,
136
+ max = arrayMax(baseData),
137
+ // Float correction needed, because first frequency value is not
138
+ // corrected when generating frequencies (within for loop).
139
+ min = correctFloat(arrayMin(baseData)),
140
+ frequencies = [],
141
+ bins = {},
142
+ data = [],
143
+ x,
144
+ fitToBin;
145
+
146
+ binWidth = series.binWidth = series.options.pointRange = (
147
+ correctFloat(
148
+ isNumber(binWidth) ?
149
+ (binWidth || 1) :
150
+ (max - min) / binsNumber
151
+ )
152
+ );
153
+
154
+ // If binWidth is 0 then max and min are equaled,
155
+ // increment the x with some positive value to quit the loop
156
+ for (
157
+ x = min;
158
+ // This condition is needed because of the margin of error while
159
+ // operating on decimal numbers. Without that, additional bin
160
+ // was sometimes noticeable on the graph, because of too small
161
+ // precision of float correction.
162
+ x < max &&
163
+ (
164
+ series.userOptions.binWidth ||
165
+ correctFloat(max - x) >= binWidth ||
166
+ correctFloat(
167
+ min + (frequencies.length * binWidth) - x
168
+ ) <= 0
169
+ );
170
+ x = correctFloat(x + binWidth)
171
+ ) {
172
+ frequencies.push(x);
173
+ bins[x] = 0;
174
+ }
175
+
176
+ if (bins[min] !== 0) {
177
+ frequencies.push(correctFloat(min));
178
+ bins[correctFloat(min)] = 0;
179
+ }
180
+
181
+ fitToBin = fitToBinLeftClosed(
182
+ frequencies.map(function (elem) {
183
+ return parseFloat(elem);
184
+ })
185
+ );
186
+
187
+ baseData.forEach(function (y) {
188
+ var x = correctFloat(fitToBin(y));
189
+
190
+ bins[x]++;
191
+ });
178
192
 
179
- bins[x]++;
180
- });
193
+ objectEach(bins, function (frequency, x) {
194
+ data.push({
195
+ x: Number(x),
196
+ y: frequency,
197
+ x2: correctFloat(Number(x) + binWidth)
198
+ });
199
+ });
181
200
 
182
- objectEach(bins, function (frequency, x) {
183
- data.push({
184
- x: Number(x),
185
- y: frequency,
186
- x2: correctFloat(Number(x) + binWidth)
201
+ data.sort(function (a, b) {
202
+ return a.x - b.x;
187
203
  });
188
- });
189
204
 
190
- data.sort(function (a, b) {
191
- return a.x - b.x;
192
- });
205
+ return data;
206
+ },
193
207
 
194
- return data;
195
- },
208
+ binsNumber: function () {
209
+ var binsNumberOption = this.options.binsNumber;
210
+ var binsNumber = binsNumberFormulas[binsNumberOption] ||
211
+ // #7457
212
+ (typeof binsNumberOption === 'function' && binsNumberOption);
196
213
 
197
- binsNumber: function () {
198
- var binsNumberOption = this.options.binsNumber;
199
- var binsNumber = binsNumberFormulas[binsNumberOption] ||
200
- // #7457
201
- (typeof binsNumberOption === 'function' && binsNumberOption);
202
-
203
- return Math.ceil(
204
- (binsNumber && binsNumber(this.baseSeries)) ||
205
- (
206
- isNumber(binsNumberOption) ?
207
- binsNumberOption :
208
- binsNumberFormulas['square-root'](this.baseSeries)
209
- )
210
- );
211
- }
212
- }));
214
+ return Math.ceil(
215
+ (binsNumber && binsNumber(this.baseSeries)) ||
216
+ (
217
+ isNumber(binsNumberOption) ?
218
+ binsNumberOption :
219
+ binsNumberFormulas['square-root'](this.baseSeries)
220
+ )
221
+ );
222
+ }
223
+ })
224
+ );
213
225
 
214
226
  /**
215
227
  * A `histogram` series. If the [type](#series.histogram.type) option is not
216
228
  * specified, it is inherited from [chart.type](#chart.type).
217
229
  *
218
- * @type {Object}
219
- * @since 6.0.0
220
- * @extends series,plotOptions.histogram
221
- * @excluding dataParser,dataURL,data
222
- * @product highcharts
230
+ * @extends series,plotOptions.histogram
231
+ * @excluding data, dataParser, dataURL
232
+ * @product highcharts
233
+ * @since 6.0.0
223
234
  * @apioption series.histogram
224
235
  */
225
236
 
@@ -227,19 +238,6 @@ seriesType('histogram', 'column', {
227
238
  * An integer identifying the index to use for the base series, or a string
228
239
  * representing the id of the series.
229
240
  *
230
- * @type {Number|String}
231
- * @default undefined
241
+ * @type {number|string}
232
242
  * @apioption series.histogram.baseSeries
233
243
  */
234
-
235
- /**
236
- * An array of data points for the series. For the `histogram` series type,
237
- * points are calculated dynamically. See
238
- * [histogram.baseSeries](#series.histogram.baseSeries).
239
- *
240
- * @type {Array<Object|Array>}
241
- * @since 6.0.0
242
- * @extends series.column.data
243
- * @product highcharts
244
- * @apioption series.histogram.data
245
- */
@@ -19,16 +19,16 @@ var extend = H.extend,
19
19
  piePoint = H.seriesTypes.pie.prototype.pointClass.prototype;
20
20
 
21
21
  /**
22
- * The item series type.
23
- *
24
- * @requires module:modules/item-series
25
- *
26
- * @private
27
- * @class
28
- * @name Highcharts.seriesTypes.item
29
- *
30
- * @augments Highcharts.seriesTypes.pie
31
- */
22
+ * The item series type.
23
+ *
24
+ * @requires module:modules/item-series
25
+ *
26
+ * @private
27
+ * @class
28
+ * @name Highcharts.seriesTypes.item
29
+ *
30
+ * @augments Highcharts.seriesTypes.pie
31
+ */
32
32
  H.seriesType(
33
33
  'item',
34
34
  // Inherits pie as the most tested non-cartesian series with individual
@@ -454,16 +454,20 @@ H.extend(
454
454
  ) {
455
455
  distanceXY = layout.getDistXY(node, repNode);
456
456
  distanceR = layout.vectorLength(distanceXY);
457
-
458
- force = layout.repulsiveForce(distanceR, layout.k);
459
-
460
- layout.force(
461
- 'repulsive',
462
- node,
463
- force * repNode.mass,
464
- distanceXY,
465
- distanceR
466
- );
457
+ if (distanceR !== 0) {
458
+ force = layout.repulsiveForce(
459
+ distanceR,
460
+ layout.k
461
+ );
462
+
463
+ layout.force(
464
+ 'repulsive',
465
+ node,
466
+ force * repNode.mass,
467
+ distanceXY,
468
+ distanceR
469
+ );
470
+ }
467
471
  }
468
472
  });
469
473
  });
@@ -628,9 +632,9 @@ H.extend(
628
632
  }
629
633
  );
630
634
 
631
- /*
635
+ /* ************************************************************************** *
632
636
  * Multiple series support:
633
- */
637
+ * ************************************************************************** */
634
638
  // Clear previous layouts
635
639
  addEvent(Chart, 'predraw', function () {
636
640
  if (this.graphLayoutsLookup) {