1/* * 2 * 3 * (c) 2010-2024 Torstein Honsi 4 * 5 * License: www.highcharts.com/license 6 * 7 * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!! 8 * 9 * */ 10'use strict'; 11/* * 12 * 13 * API Options 14 * 15 * */ 16/** 17 * General options for all series types. 18 * 19 * @optionparent plotOptions.series 20 */ 21const seriesDefaults = { 22 // Base series options 23 /** 24 * The SVG value used for the `stroke-linecap` and `stroke-linejoin` 25 * of a line graph. Round means that lines are rounded in the ends and 26 * bends. 27 * 28 * @type {Highcharts.SeriesLinecapValue} 29 * @default round 30 * @since 3.0.7 31 * @apioption plotOptions.line.linecap 32 */ 33 /** 34 * Pixel width of the graph line. 35 * 36 * @see In styled mode, the line stroke-width can be set with the 37 * `.highcharts-graph` class name. 38 * 39 * @sample {highcharts} highcharts/plotoptions/series-linewidth-general/ 40 * On all series 41 * @sample {highcharts} highcharts/plotoptions/series-linewidth-specific/ 42 * On one single series 43 * 44 * @product highcharts highstock 45 */ 46 lineWidth: 2, 47 /** 48 * For some series, there is a limit that shuts down animation 49 * by default when the total number of points in the chart is too high. 50 * For example, for a column chart and its derivatives, animation does 51 * not run if there is more than 250 points totally. To disable this 52 * cap, set `animationLimit` to `Infinity`. This option works if animation 53 * is fired on individual points, not on a group of points like e.g. during 54 * the initial animation. 55 * 56 * @sample {highcharts} highcharts/plotoptions/series-animationlimit/ 57 * Animation limit on updating individual points 58 * 59 * @type {number} 60 * @apioption plotOptions.series.animationLimit 61 */ 62 /** 63 * Allow this series' points to be selected by clicking on the graphic 64 * (columns, point markers, pie slices, map areas etc). 65 * 66 * The selected points can be handled by point select and unselect 67 * events, or collectively by the [getSelectedPoints 68 * ](/class-reference/Highcharts.Chart#getSelectedPoints) function. 69 * 70 * And alternative way of selecting points is through dragging. 71 * 72 * @sample {highcharts} highcharts/plotoptions/series-allowpointselect-line/ 73 * Line 74 * @sample {highcharts} highcharts/plotoptions/series-allowpointselect-column/ 75 * Column 76 * @sample {highcharts} highcharts/plotoptions/series-allowpointselect-pie/ 77 * Pie 78 * @sample {highcharts} highcharts/chart/events-selection-points/ 79 * Select a range of points through a drag selection 80 * @sample {highmaps} maps/plotoptions/series-allowpointselect/ 81 * Map area 82 * @sample {highmaps} maps/plotoptions/mapbubble-allowpointselect/ 83 * Map bubble 84 * 85 * @since 1.2.0 86 * 87 * @private 88 */ 89 allowPointSelect: false, 90 /** 91 * When true, each point or column edge is rounded to its nearest pixel 92 * in order to render sharp on screen. In some cases, when there are a 93 * lot of densely packed columns, this leads to visible difference 94 * in column widths or distance between columns. In these cases, 95 * setting `crisp` to `false` may look better, even though each column 96 * is rendered blurry. 97 * 98 * @sample {highcharts} highcharts/plotoptions/column-crisp-false/ 99 * Crisp is false 100 * 101 * @since 5.0.10 102 * @product highcharts highstock gantt 103 * 104 * @private 105 */ 106 crisp: true, 107 /** 108 * If true, a checkbox is displayed next to the legend item to allow 109 * selecting the series. The state of the checkbox is determined by 110 * the `selected` option. 111 * 112 * @productdesc {highmaps} 113 * Note that if a `colorAxis` is defined, the color axis is represented 114 * in the legend, not the series. 115 * 116 * @sample {highcharts} highcharts/plotoptions/series-showcheckbox-true/ 117 * Show select box 118 * 119 * @since 1.2.0 120 * 121 * @private 122 */ 123 showCheckbox: false, 124 /** 125 * Enable or disable the initial animation when a series is displayed. 126 * The animation can also be set as a configuration object. Please 127 * note that this option only applies to the initial animation of the 128 * series itself. For other animations, see [chart.animation]( 129 * #chart.animation) and the animation parameter under the API methods. 130 * The following properties are supported: 131 * 132 * - `defer`: The animation delay time in milliseconds. 133 * 134 * - `duration`: The duration of the animation in milliseconds. (Defaults to 135 * `1000`) 136 * 137 * - `easing`: Can be a string reference to an easing function set on 138 * the `Math` object or a function. See the _Custom easing function_ 139 * demo below. (Defaults to `easeInOutSine`) 140 * 141 * Due to poor performance, animation is disabled in old IE browsers 142 * for several chart types. 143 * 144 * @sample {highcharts} highcharts/plotoptions/series-animation-disabled/ 145 * Animation disabled 146 * @sample {highcharts} highcharts/plotoptions/series-animation-slower/ 147 * Slower animation 148 * @sample {highcharts} highcharts/plotoptions/series-animation-easing/ 149 * Custom easing function 150 * @sample {highstock} stock/plotoptions/animation-slower/ 151 * Slower animation 152 * @sample {highstock} stock/plotoptions/animation-easing/ 153 * Custom easing function 154 * @sample {highmaps} maps/plotoptions/series-animation-true/ 155 * Animation enabled on map series 156 * @sample {highmaps} maps/plotoptions/mapbubble-animation-false/ 157 * Disabled on mapbubble series 158 * 159 * @type {boolean|Highcharts.AnimationOptionsObject} 160 * @default {highcharts} true 161 * @default {highstock} true 162 * @default {highmaps} false 163 * 164 * @private 165 */ 166 animation: { 167 /** @ignore-option */ 168 duration: 1000 169 }, 170 /** 171 * An additional class name to apply to the series' graphical elements. 172 * This option does not replace default class names of the graphical 173 * element. Changes to the series' color will also be reflected in a 174 * chart's legend and tooltip. 175 * 176 * @sample {highcharts} highcharts/css/point-series-classname 177 * Series and point class name 178 * 179 * @type {string} 180 * @since 5.0.0 181 * @apioption plotOptions.series.className 182 */ 183 /** 184 * Disable this option to allow series rendering in the whole plotting 185 * area. 186 * 187 * **Note:** Clipping should be always enabled when 188 * [chart.zoomType](#chart.zoomType) is set 189 * 190 * @sample {highcharts} highcharts/plotoptions/series-clip/ 191 * Disabled clipping 192 * 193 * @default true 194 * @type {boolean} 195 * @since 3.0.0 196 * @apioption plotOptions.series.clip 197 */ 198 /** 199 * The main color of the series. In line type series it applies to the 200 * line and the point markers unless otherwise specified. In bar type 201 * series it applies to the bars unless a color is specified per point. 202 * The default value is pulled from the `options.colors` array. 203 *
204 * In styled mode, the color can be defined by the 205 * [colorIndex](#plotOptions.series.colorIndex) option. Also, the series 206 * color can be set with the `.highcharts-series`, 207 * `.highcharts-color-{n}`, `.highcharts-{type}-series` or 208 * `.highcharts-series-{n}` class, or individual classes given by the 209 * `className` option. 210 * 211 * @productdesc {highmaps} 212 * In maps, the series color is rarely used, as most choropleth maps use 213 * the color to denote the value of each point. The series color can 214 * however be used in a map with multiple series holding categorized 215 * data. 216 * 217 * @sample {highcharts} highcharts/plotoptions/series-color-general/ 218 * General plot option 219 * @sample {highcharts} highcharts/plotoptions/series-color-specific/ 220 * One specific series 221 * @sample {highcharts} highcharts/plotoptions/series-color-area/ 222 * Area color 223 * @sample {highcharts} highcharts/series/infographic/ 224 * Pattern fill 225 * @sample {highmaps} maps/demo/category-map/ 226 * Category map by multiple series 227 * 228 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 229 * @apioption plotOptions.series.color 230 */ 231 /** 232 * Styled mode only. A specific color index to use for the series, so its 233 * graphic representations are given the class name `highcharts-color-{n}`. 234 * 235 * Since v11, CSS variables on the form `--highcharts-color-{n}` make 236 * changing the color scheme very convenient. 237 * 238 * @sample {highcharts} highcharts/css/colorindex/ Series and point color 239 * index 240 * 241 * @type {number} 242 * @since 5.0.0 243 * @apioption plotOptions.series.colorIndex 244 */ 245 /** 246 * Whether to connect a graph line across null points, or render a gap 247 * between the two points on either side of the null. 248 * 249 * In stacked area chart, if `connectNulls` is set to true, 250 * null points are interpreted as 0. 251 * 252 * @sample {highcharts} highcharts/plotoptions/series-connectnulls-false/ 253 * False by default 254 * @sample {highcharts} highcharts/plotoptions/series-connectnulls-true/ 255 * True 256 * 257 * @type {boolean} 258 * @default false 259 * @product highcharts highstock 260 * @apioption plotOptions.series.connectNulls 261 */ 262 /** 263 * You can set the cursor to "pointer" if you have click events attached 264 * to the series, to signal to the user that the points and lines can 265 * be clicked. 266 * 267 * In styled mode, the series cursor can be set with the same classes 268 * as listed under [series.color](#plotOptions.series.color). 269 * 270 * @sample {highcharts} highcharts/plotoptions/series-cursor-line/ 271 * On line graph 272 * @sample {highcharts} highcharts/plotoptions/series-cursor-column/ 273 * On columns 274 * @sample {highcharts} highcharts/plotoptions/series-cursor-scatter/ 275 * On scatter markers 276 * @sample {highstock} stock/plotoptions/cursor/ 277 * Pointer on a line graph 278 * @sample {highmaps} maps/plotoptions/series-allowpointselect/ 279 * Map area 280 * @sample {highmaps} maps/plotoptions/mapbubble-allowpointselect/ 281 * Map bubble 282 * 283 * @type {string|Highcharts.CursorValue} 284 * @apioption plotOptions.series.cursor 285 */ 286 /** 287 * A reserved subspace to store options and values for customized 288 * functionality. Here you can add additional data for your own event 289 * callbacks and formatter callbacks. 290 * 291 * @sample {highcharts} highcharts/point/custom/ 292 * Point and series with custom data 293 * 294 * @type {Highcharts.Dictionary<*>} 295 * @apioption plotOptions.series.custom 296 */ 297 /** 298 * Name of the dash style to use for the graph, or for some series types 299 * the outline of each shape. 300 * 301 * In styled mode, the 302 * [stroke dash-array](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/css/series-dashstyle/) 303 * can be set with the same classes as listed under 304 * [series.color](#plotOptions.series.color). 305 * 306 * @sample {highcharts} highcharts/plotoptions/series-dashstyle-all/ 307 * Possible values demonstrated 308 * @sample {highcharts} highcharts/plotoptions/series-dashstyle/ 309 * Chart suitable for printing in black and white 310 * @sample {highstock} highcharts/plotoptions/series-dashstyle-all/ 311 * Possible values demonstrated 312 * @sample {highmaps} highcharts/plotoptions/series-dashstyle-all/ 313 * Possible values demonstrated 314 * @sample {highmaps} maps/plotoptions/series-dashstyle/ 315 * Dotted borders on a map 316 * 317 * @type {Highcharts.DashStyleValue} 318 * @default Solid 319 * @since 2.1 320 * @apioption plotOptions.series.dashStyle 321 */ 322 /** 323 * A description of the series to add to the screen reader information 324 * about the series. 325 * 326 * @type {string} 327 * @since 5.0.0 328 * @requires modules/accessibility 329 * @apioption plotOptions.series.description 330 */ 331 /** 332 * Options for the series data sorting. 333 * 334 * @type {Highcharts.DataSortingOptionsObject} 335 * @since 8.0.0 336 * @product highcharts highstock 337 * @apioption plotOptions.series.dataSorting 338 */ 339 /** 340 * Enable or disable data sorting for the series. Use [xAxis.reversed]( 341 * #xAxis.reversed) to change the sorting order. 342 * 343 * @sample {highcharts} highcharts/datasorting/animation/ 344 * Data sorting in scatter-3d 345 * @sample {highcharts} highcharts/datasorting/labels-animation/ 346 * Axis labels animation 347 * @sample {highcharts} highcharts/datasorting/dependent-sorting/ 348 * Dependent series sorting 349 * @sample {highcharts} highcharts/datasorting/independent-sorting/ 350 * Independent series sorting 351 * 352 * @type {boolean} 353 * @since 8.0.0 354 * @apioption plotOptions.series.dataSorting.enabled 355 */ 356 /** 357 * Whether to allow matching points by name in an update. If this option 358 * is disabled, points will be matched by order. 359 * 360 * @sample {highcharts} highcharts/datasorting/match-by-name/ 361 * Enabled match by name 362 * 363 * @type {boolean} 364 * @since 8.0.0 365 * @apioption plotOptions.series.dataSorting.matchByName 366 */ 367 /** 368 * Determines what data value should be used to sort by. 369 * 370 * @sample {highcharts} highcharts/datasorting/sort-key/ 371 * Sort key as `z` value 372 * 373 * @type {string} 374 * @since 8.0.0 375 * @default y 376 * @apioption plotOptions.series.dataSorting.sortKey 377 */ 378 /** 379 * Enable or disable the mouse tracking for a specific series. This 380 * includes point tooltips and click events on graphs and points. For 381 * large datasets it improves performance. 382 * 383 * @sample {highcharts} highcharts/plotoptions/series-enablemousetracking-false/ 384 * No mouse tracking 385 * @sample {highmaps} maps/plotoptions/series-enablemousetracking-false/ 386 * No mouse tracking 387 * 388 * @type {boolean} 389 * @default true 390 * @apioption plotOptions.series.enableMouseTracking 391 */ 392 enableMouseTracking: true, 393 /** 394 * Whether to use the Y extremes of the total chart width or only the 395 * zoomed area when zooming in on parts of the X axis. By default, the 396 * Y axis adjusts to the min and max of the visible data. Cartesian 397 * series only. 398 * 399 * @type {boolean} 400 * @default false 401 * @since 4.1.6 402 * @product highcharts highstock gantt 403 * @apioption plotOptions.series.getExtremesFromAll 404 */ 405 /** 406 * Highlight only the hovered point and fade the remaining points. 407 * 408 * Scatter-type series require enabling the 'inactive' marker state and 409 * adjusting opacity. Note that this approach could affect performance 410 * with large datasets. 411 * 412 * @sample {highcharts} highcharts/plotoptions/series-inactiveotherpoints-enabled/ 413 * Chart with inactiveOtherPoints option enabled. 414 * 415 * @type {boolean} 416 * @default false 417 * @apioption plotOptions.series.inactiveOtherPoints 418 */ 419 /** 420 * An array specifying which option maps to which key in the data point 421 * array. This makes it convenient to work with unstructured data arrays 422 * from different sources. 423 * 424 * @see [series.data](#series.line.data) 425 * 426 * @sample {highcharts|highstock} highcharts/series/data-keys/ 427 * An extended data array with keys 428 * @sample {highcharts|highstock}
428 highcharts/series/data-nested-keys/ 429 * Nested keys used to access object properties 430 * 431 * @type {Array<string>} 432 * @since 4.1.6 433 * @apioption plotOptions.series.keys 434 */ 435 /** 436 * The line cap used for line ends and line joins on the graph. 437 * 438 * @sample highcharts/series-line/linecap/ 439 * Line cap comparison 440 * 441 * @type {Highcharts.SeriesLinecapValue} 442 * @default round 443 * @product highcharts highstock 444 * @apioption plotOptions.series.linecap 445 */ 446 /** 447 * The [id](#series.id) of another series to link to. Additionally, 448 * the value can be ":previous" to link to the previous series. When 449 * two series are linked, only the first one appears in the legend. 450 * Toggling the visibility of this also toggles the linked series. 451 * 452 * If master series uses data sorting and linked series does not have 453 * its own sorting definition, the linked series will be sorted in the 454 * same order as the master one. 455 * 456 * @sample {highcharts|highstock} highcharts/demo/arearange-line/ 457 * Linked series 458 * 459 * @type {string} 460 * @since 3.0 461 * @product highcharts highstock gantt 462 * @apioption plotOptions.series.linkedTo 463 */ 464 /** 465 * Options for the corresponding navigator series if `showInNavigator` 466 * is `true` for this series. Available options are the same as any 467 * series, documented at [plotOptions](#plotOptions.series) and 468 * [series](#series). 469 * 470 * These options are merged with options in [navigator.series]( 471 * #navigator.series), and will take precedence if the same option is 472 * defined both places. 473 * 474 * @see [navigator.series](#navigator.series) 475 * 476 * @type {Highcharts.PlotSeriesOptions} 477 * @since 5.0.0 478 * @product highstock 479 * @apioption plotOptions.series.navigatorOptions 480 */ 481 /** 482 * The color for the parts of the graph or points that are below the 483 * [threshold](#plotOptions.series.threshold). Note that `zones` takes 484 * precedence over the negative color. Using `negativeColor` is 485 * equivalent to applying a zone with value of 0. 486 * 487 * @see In styled mode, a negative color is applied by setting this option 488 * to `true` combined with the `.highcharts-negative` class name. 489 * 490 * @sample {highcharts} highcharts/plotoptions/series-negative-color/ 491 * Spline, area and column 492 * @sample {highcharts} highcharts/plotoptions/arearange-negativecolor/ 493 * Arearange 494 * @sample {highcharts} highcharts/css/series-negative-color/ 495 * Styled mode 496 * @sample {highstock} highcharts/plotoptions/series-negative-color/ 497 * Spline, area and column 498 * @sample {highstock} highcharts/plotoptions/arearange-negativecolor/ 499 * Arearange 500 * @sample {highmaps} highcharts/plotoptions/series-negative-color/ 501 * Spline, area and column 502 * @sample {highmaps} highcharts/plotoptions/arearange-negativecolor/ 503 * Arearange 504 * 505 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 506 * @since 3.0 507 * @apioption plotOptions.series.negativeColor 508 */ 509 /** 510 * Same as 511 * [accessibility.point.descriptionFormat](#accessibility.point.descriptionFormat), 512 * but for an individual series. Overrides the chart wide configuration. 513 * 514 * @type {Function} 515 * @since 11.1.0 516 * @apioption plotOptions.series.pointDescriptionFormat 517 */ 518 /** 519 * Same as 520 * [accessibility.series.descriptionFormatter](#accessibility.series.descriptionFormatter), 521 * but for an individual series. Overrides the chart wide configuration. 522 * 523 * @type {Function} 524 * @since 5.0.12 525 * @apioption plotOptions.series.pointDescriptionFormatter 526 */ 527 /** 528 * If no x values are given for the points in a series, `pointInterval` 529 * defines the interval of the x values. For example, if a series 530 * contains one value every decade starting from year 0, set 531 * `pointInterval` to `10`. In true `datetime` axes, the `pointInterval` 532 * is set in milliseconds. 533 *
534 * It can be also be combined with `pointIntervalUnit` to draw irregular 535 * time intervals. 536 * 537 * If combined with `relativeXValue`, an x value can be set on each 538 * point, and the `pointInterval` is added x times to the `pointStart` 539 * setting. 540 * 541 * Please note that this options applies to the _series data_, not the 542 * interval of the axis ticks, which is independent. 543 * 544 * @sample {highcharts} highcharts/plotoptions/series-pointstart-datetime/ 545 * Datetime X axis 546 * @sample {highcharts} highcharts/plotoptions/series-relativexvalue/ 547 * Relative x value 548 * @sample {highstock} stock/plotoptions/pointinterval-pointstart/ 549 * Using pointStart and pointInterval 550 * @sample {highstock} stock/plotoptions/relativexvalue/ 551 * Relative x value 552 * 553 * @type {number} 554 * @default 1 555 * @product highcharts highstock gantt 556 * @apioption plotOptions.series.pointInterval 557 */ 558 /** 559 * On datetime series, this allows for setting the 560 * [pointInterval](#plotOptions.series.pointInterval) to irregular time 561 * units, `day`, `month` and `year`. A day is usually the same as 24 562 * hours, but `pointIntervalUnit` also takes the DST crossover into 563 * consideration when dealing with local time. Combine this option with 564 * `pointInterval` to draw weeks, quarters, 6 months, 10 years etc. 565 * 566 * Please note that this options applies to the _series data_, not the 567 * interval of the axis ticks, which is independent. 568 * 569 * @sample {highcharts} highcharts/plotoptions/series-pointintervalunit/ 570 * One point a month 571 * @sample {highstock} highcharts/plotoptions/series-pointintervalunit/ 572 * One point a month 573 * 574 * @type {string} 575 * @since 4.1.0 576 * @product highcharts highstock gantt 577 * @validvalue ["day", "month", "year"] 578 * @apioption plotOptions.series.pointIntervalUnit 579 */ 580 /** 581 * Possible values: `"on"`, `"between"`, `number`. 582 * 583 * In a column chart, when pointPlacement is `"on"`, the point will not 584 * create any padding of the X axis. In a polar column chart this means 585 * that the first column points directly north. If the pointPlacement is 586 * `"between"`, the columns will be laid out between ticks. This is 587 * useful for example for visualising an amount between two points in 588 * time or in a certain sector of a polar chart. 589 * 590 * Since Highcharts 3.0.2, the point placement can also be numeric, 591 * where 0 is on the axis value, -0.5 is between this value and the 592 * previous, and 0.5 is between this value and the next. Unlike the 593 * textual options, numeric point placement options won't affect axis 594 * padding. 595 * 596 * Note that pointPlacement needs a [pointRange]( 597 * #plotOptions.series.pointRange) to work. For column series this is 598 * computed, but for line-type series it needs to be set. 599 * 600 * For the `xrange` series type and gantt charts, if the Y axis is a 601 * category axis, the `pointPlacement` applies to the Y axis rather than 602 * the (typically datetime) X axis. 603 * 604 * Defaults to `undefined` in cartesian charts, `"between"` in polar 605 * charts. 606 * 607 * @see [xAxis.tickmarkPlacement](#xAxis.tickmarkPlacement) 608 * 609 * @sample {highcharts|highstock} highcharts/plotoptions/series-pointplacement-between/ 610 * Between in a column chart 611 * @sample {highcharts|highstock} highcharts/plotoptions/series-pointplacement-numeric/ 612 * Numeric placement for custom layout 613 * @sample {highcharts|highstock} maps/plotoptions/heatmap-pointplacement/ 614 * Placement in heatmap 615 * 616 * @type {string|number} 617 * @since 2.3.0 618 * @product highcharts highstock gantt 619 * @apioption plotOptions.series.pointPlacement 620 */ 621 /** 622 * If no x values are given for the points in a series, `pointStart` 623 * defines on what value to start. For example, if a series contains one 624 * yearly value starting from 1945, set `pointStart` to 1945. 625 * 626 * The `pointStart` setting can be a number, or a datetime string that is 627 * parsed according to the `time.timezone` setting. 628 * 629 * If combined with `relativeXValue`, an x value can be set on each 630 * point. The x value from the point options is multiplied by 631 * `pointInterval` and added to `pointStart` to produce a modified x 632 * value. 633 * 634 * @sample {highcharts} highcharts/plotoptions/series-pointstart-linear/ 635 * Linear 636 * @sample {highcharts} highcharts/plotoptions/series-pointstart-datetime/ 637 * Datetime 638 * @sample {highcharts} highcharts/plotoptions/series-relativexvalue/ 639 * Relative x value 640 * @sample {highstock} stock/plotoptions/pointinterval-pointstart/ 641 * Using pointStart and pointInterval 642 * @sample {highstock} stock/plotoptions/relativexvalue/ 643 * Relative x value 644 * 645 * @type {number|string} 646 * @default 0 647 * @product highcharts highstock gantt 648 * @apioption plotOptions.series.pointStart 649 */ 650 /** 651 * When true, X values in the data set are relative to the current 652 * `pointStart`, `pointInterval` and `pointIntervalUnit` settings. This 653 * allows compression of the data for datasets with irregular X values. 654 * 655 * The real X values are computed on the formula `f(x) = ax + b`, where 656 * `a` is the `pointInterval` (optionally with a time unit given by 657 * `pointIntervalUnit`), and `b` is the `pointStart`. 658 * 659 * @sample {highcharts} highcharts/plotoptions/series-relativexvalue/ 660 * Relative X value 661 * @sample {highstock} stock/plotoptions/relativexvalue/ 662 * Relative X value 663 * 664 * @type {boolean} 665 * @default false 666 * @product highcharts highstock 667 * @apioption plotOptions.series.relativeXValue 668 */ 669 /** 670 * Whether to select the series initially. If `showCheckbox` is true,
671 * the checkbox next to the series name in the legend will be checked 672 * for a selected series. 673 * 674 * @sample {highcharts} highcharts/plotoptions/series-selected/ 675 * One out of two series selected 676 * 677 * @type {boolean} 678 * @default false 679 * @since 1.2.0 680 * @apioption plotOptions.series.selected 681 */ 682 /** 683 * Whether to apply a drop shadow to the graph line. Since 2.3 the 684 * shadow can be an object configuration containing `color`, `offsetX`, 685 * `offsetY`, `opacity` and `width`. 686 * 687 * Note that in some cases, like stacked columns or other dense layouts, the 688 * series may cast shadows on each other. In that case, the 689 * `chart.seriesGroupShadow` allows applying a common drop shadow to the 690 * whole series group. 691 * 692 * @sample {highcharts} highcharts/plotoptions/series-shadow/ 693 * Shadow enabled 694 * 695 * @type {boolean|Highcharts.ShadowOptionsObject} 696 * @default false 697 * @apioption plotOptions.series.shadow 698 */ 699 /** 700 * Whether to display this particular series or series type in the 701 * legend. Standalone series are shown in legend by default, and linked 702 * series are not. Since v7.2.0 it is possible to show series that use 703 * colorAxis by setting this option to `true`. 704 * 705 * @sample {highcharts} highcharts/plotoptions/series-showinlegend/ 706 * One series in the legend, one hidden 707 * 708 * @type {boolean} 709 * @apioption plotOptions.series.showInLegend 710 */ 711 /** 712 * Whether or not to show the series in the navigator. Takes precedence 713 * over [navigator.baseSeries](#navigator.baseSeries) if defined. 714 * 715 * @type {boolean} 716 * @since 5.0.0 717 * @product highstock 718 * @apioption plotOptions.series.showInNavigator 719 */ 720 /** 721 * If set to `true`, the accessibility module will skip past the points 722 * in this series for keyboard navigation. 723 * 724 * @type {boolean} 725 * @since 5.0.12 726 * @apioption plotOptions.series.skipKeyboardNavigation 727 */ 728 /** 729 * Whether to stack the values of each series on top of each other. 730 * Possible values are `undefined` to disable, `"normal"` to stack by 731 * value or `"percent"`. 732 * 733 * When stacking is enabled, data must be sorted 734 * in ascending X order. 735 * 736 * Some stacking options are related to specific series types. In the 737 * streamgraph series type, the stacking option is set to `"stream"`. 738 * The second one is `"overlap"`, which only applies to waterfall 739 * series. 740 * 741 * @see [yAxis.reversedStacks](#yAxis.reversedStacks) 742 * 743 * @sample {highcharts} highcharts/plotoptions/series-stacking-line/ 744 * Line 745 * @sample {highcharts} highcharts/plotoptions/series-stacking-column/ 746 * Column 747 * @sample {highcharts} highcharts/plotoptions/series-stacking-bar/ 748 * Bar 749 * @sample {highcharts} highcharts/plotoptions/series-stacking-area/ 750 * Area 751 * @sample {highcharts} highcharts/plotoptions/series-stacking-percent-line/ 752 * Line 753 * @sample {highcharts} highcharts/plotoptions/series-stacking-percent-column/ 754 * Column 755 * @sample {highcharts} highcharts/plotoptions/series-stacking-percent-bar/ 756 * Bar 757 * @sample {highcharts} highcharts/plotoptions/series-stacking-percent-area/ 758 * Area 759 * @sample {highcharts} highcharts/plotoptions/series-waterfall-with-normal-stacking 760 * Waterfall with normal stacking 761 * @sample {highcharts} highcharts/plotoptions/series-waterfall-with-overlap-stacking 762 * Waterfall with overlap stacking 763 * @sample {highstock} stock/plotoptions/stacking/ 764 * Area 765 * 766 * @type {string} 767 * @product highcharts highstock 768 * @validvalue ["normal", "overlap", "percent", "stream"] 769 * @apioption plotOptions.series.stacking 770 */ 771 /** 772 * Whether to apply steps to the line. Possible values are `left`, 773 * `center` and `right`. 774 * 775 * @sample {highcharts} highcharts/plotoptions/line-step/ 776 * Different step line options 777 * @sample {highcharts} highcharts/plotoptions/area-step/ 778 * Stepped, stacked area 779 * @sample {highstock} stock/plotoptions/line-step/ 780 * Step line 781 * 782 * @type {string} 783 * @since 1.2.5 784 * @product highcharts highstock 785 * @validvalue ["left", "center", "right"] 786 * @apioption plotOptions.series.step 787 */ 788 /** 789 * The threshold, also called zero level or base level. For line type 790 * series this is only used in conjunction with 791 * [negativeColor](#plotOptions.series.negativeColor). 792 * 793 * @see [softThreshold](#plotOptions.series.softThreshold). 794 * 795 * @type {number|null} 796 * @default 0 797 * @since 3.0 798 * @product highcharts highstock 799 * @apioption plotOptions.series.threshold 800 */ 801 /** 802 * Set the initial visibility of the series. 803 * 804 * @sample {highcharts} highcharts/plotoptions/series-visible/ 805 * Two series, one hidden and one visible 806 * @sample {highstock} stock/plotoptions/series-visibility/ 807 * Hidden series 808 * 809 * @type {boolean} 810 * @default true 811 * @apioption plotOptions.series.visible 812 */ 813 /** 814 * Defines the Axis on which the zones are applied. 815 *
816 * @see [zones](#plotOptions.series.zones) 817 * 818 * @sample {highcharts} highcharts/series/color-zones-zoneaxis-x/ 819 * Zones on the X-Axis 820 * @sample {highstock} highcharts/series/color-zones-zoneaxis-x/ 821 * Zones on the X-Axis 822 * 823 * @type {string} 824 * @default y 825 * @since 4.1.0 826 * @product highcharts highstock 827 * @apioption plotOptions.series.zoneAxis 828 */ 829 /** 830 * General event handlers for the series items. These event hooks can 831 * also be attached to the series at run time using the 832 * `Highcharts.addEvent` function. 833 * 834 * @declare Highcharts.SeriesEventsOptionsObject 835 * 836 * @private 837 */ 838 events: {}, 839 /** 840 * Fires after the series has finished its initial animation, or in case 841 * animation is disabled, immediately as the series is displayed. 842 * 843 * @sample {highcharts} highcharts/plotoptions/series-events-afteranimate/ 844 * Show label after animate 845 * @sample {highstock} highcharts/plotoptions/series-events-afteranimate/ 846 * Show label after animate 847 * 848 * @type {Highcharts.SeriesAfterAnimateCallbackFunction} 849 * @since 4.0 850 * @product highcharts highstock gantt 851 * @context Highcharts.Series 852 * @apioption plotOptions.series.events.afterAnimate 853 */ 854 /** 855 * Fires when the checkbox next to the series' name in the legend is 856 * clicked. One parameter, `event`, is passed to the function. The state 857 * of the checkbox is found by `event.checked`. The checked item is 858 * found by `event.item`. Return `false` to prevent the default action 859 * which is to toggle the select state of the series. 860 * 861 * @sample {highcharts} highcharts/plotoptions/series-events-checkboxclick/ 862 * Alert checkbox status 863 * 864 * @type {Highcharts.SeriesCheckboxClickCallbackFunction} 865 * @since 1.2.0 866 * @context Highcharts.Series 867 * @apioption plotOptions.series.events.checkboxClick 868 */ 869 /** 870 * Fires when the series is clicked. One parameter, `event`, is passed 871 * to the function, containing common event information. Additionally, 872 * `event.point` holds a pointer to the nearest point on the graph. 873 * 874 * @sample {highcharts} highcharts/plotoptions/series-events-click/ 875 * Alert click info 876 * @sample {highstock} stock/plotoptions/series-events-click/ 877 * Alert click info 878 * @sample {highmaps} maps/plotoptions/series-events-click/ 879 * Display click info in subtitle 880 * 881 * @type {Highcharts.SeriesClickCallbackFunction} 882 * @context Highcharts.Series 883 * @apioption plotOptions.series.events.click 884 */ 885 /** 886 * Fires when the series is hidden after chart generation time, either 887 * by clicking the legend item or by calling `.hide()`. 888 * 889 * @sample {highcharts} highcharts/plotoptions/series-events-hide/ 890 * Alert when the series is hidden by clicking the legend item 891 * 892 * @type {Highcharts.SeriesHideCallbackFunction} 893 * @since 1.2.0 894 * @context Highcharts.Series 895 * @apioption plotOptions.series.events.hide 896 */ 897 /** 898 * Fires when the legend item belonging to the series is clicked. One 899 * parameter, `event`, is passed to the function. The default action 900 * is to toggle the visibility of the series. This can be prevented 901 * by returning `false` or calling `event.preventDefault()`. 902 * 903 * **Note:** This option is deprecated in favor of 904 * [legend.events.itemClick](#legend.events.itemClick). 905 * 906 * @type {Highcharts.SeriesLegendItemClickCallbackFunction} 907 * @deprecated 11.4.4 908 * @context Highcharts.Series 909 * @apioption plotOptions.series.events.legendItemClick 910 */ 911 /** 912 * Fires when the mouse leaves the graph. One parameter, `event`, is 913 * passed to the function, containing common event information. If the 914 * [stickyTracking](#plotOptions.series) option is true, `mouseOut` 915 * doesn't happen before the mouse enters another graph or leaves the 916 * plot area. 917 * 918 * @sample {highcharts} highcharts/plotoptions/series-events-mouseover-sticky/ 919 * With sticky tracking by default 920 * @sample {highcharts} highcharts/plotoptions/series-events-mouseover-no-sticky/ 921 * Without sticky tracking 922 * 923 * @type {Highcharts.SeriesMouseOutCallbackFunction} 924 * @context Highcharts.Series 925 * @apioption plotOptions.series.events.mouseOut 926 */ 927 /** 928 * Fires when the mouse enters the graph. One parameter, `event`, is 929 * passed to the function, containing common event information. 930 * 931 * @sample {highcharts} highcharts/plotoptions/series-events-mouseover-sticky/ 932 * With sticky tracking by default 933 * @sample {highcharts} highcharts/plotoptions/series-events-mouseover-no-sticky/ 934 * Without sticky tracking 935 * 936 * @type {Highcharts.SeriesMouseOverCallbackFunction} 937 * @context Highcharts.Series 938 * @apioption plotOptions.series.events.mouseOver 939 */ 940 /** 941 * Fires when the series is shown after chart generation time, either 942 * by clicking the legend item or by calling `.show()`. 943 * 944 * @sample {highcharts} highcharts/plotoptions/series-events-show/ 945 * Alert when the series is shown by clicking the legend item. 946 * 947 * @type {Highcharts.SeriesShowCallbackFunction} 948 * @since 1.2.0 949 * @context Highcharts.Series 950 * @apioption plotOptions.series.events.show 951 */ 952 /** 953 * Options for the point markers of line and scatter-like series. Properties 954 * like `fillColor`, `lineColor` and `lineWidth` define the visual 955 * appearance of the markers. The `symbol` option defines the shape. Other 956 * series types, like column series, don't have markers, but have visual 957 * options on the series level instead. 958 *
959 * In styled mode, the markers can be styled with the `.highcharts-point`, 960 * `.highcharts-point-hover` and `.highcharts-point-select` class names. 961 * 962 * @declare Highcharts.PointMarkerOptionsObject 963 * 964 * @sample {highmaps} maps/demo/mappoint-mapmarker 965 * Using the mapmarker symbol for points 966 * 967 * @private 968 */ 969 marker: { 970 /** 971 * Enable or disable the point marker. If `undefined`, the markers 972 * are hidden when the data is dense, and shown for more widespread 973 * data points. 974 * 975 * @sample {highcharts} highcharts/plotoptions/series-marker-enabled/ 976 * Disabled markers 977 * @sample {highcharts} highcharts/plotoptions/series-marker-enabled-false/ 978 * Disabled in normal state but enabled on hover 979 * @sample {highstock} stock/plotoptions/series-marker/ 980 * Enabled markers 981 * 982 * @type {boolean} 983 * @default {highcharts} undefined 984 * @default {highstock} false 985 * @apioption plotOptions.series.marker.enabled 986 */ 987 /** 988 * The threshold for how dense the point markers should be before 989 * they are hidden, given that `enabled` is not defined. The number 990 * indicates the horizontal distance between the two closest points 991 * in the series, as multiples of the `marker.radius`. In other 992 * words, the default value of 2 means points are hidden if 993 * overlapping horizontally. 994 * 995 * @sample highcharts/plotoptions/series-marker-enabledthreshold 996 * A higher threshold 997 * 998 * @since 6.0.5 999 */ 1000 enabledThreshold: 2, 1001 /** 1002 * The fill color of the point marker. When `undefined`, the series' 1003 * or point's color is used. 1004 * 1005 * @sample {highcharts} highcharts/plotoptions/series-marker-fillcolor/ 1006 * White fill 1007 * 1008 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1009 * @apioption plotOptions.series.marker.fillColor 1010 */ 1011 /** 1012 * Image markers only. Set the image width explicitly. When using 1013 * this option, a `width` must also be set. 1014 * 1015 * @sample {highcharts} highcharts/plotoptions/series-marker-width-height/ 1016 * Fixed width and height 1017 * @sample {highstock} highcharts/plotoptions/series-marker-width-height/ 1018 * Fixed width and height 1019 * 1020 * @type {number} 1021 * @since 4.0.4 1022 * @apioption plotOptions.series.marker.height 1023 */ 1024 /** 1025 * The color of the point marker's outline. When `undefined`, the 1026 * series' or point's color is used. 1027 * 1028 * @sample {highcharts} highcharts/plotoptions/series-marker-fillcolor/ 1029 * Inherit from series color (undefined) 1030 * 1031 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1032 */ 1033 lineColor: "#ffffff" /* Palette.backgroundColor */, 1034 /** 1035 * The width of the point marker's outline. 1036 * 1037 * @sample {highcharts} highcharts/plotoptions/series-marker-fillcolor/ 1038 * 2px blue marker 1039 */ 1040 lineWidth: 0, 1041 /** 1042 * The radius of the point marker. 1043 * 1044 * @sample {highcharts} highcharts/plotoptions/series-marker-radius/ 1045 * Bigger markers 1046 * 1047 * @default {highstock} 2 1048 * @default {highcharts} 4 1049 * 1050 */ 1051 radius: 4, 1052 /** 1053 * A predefined shape or symbol for the marker. When undefined, the 1054 * symbol is pulled from options.symbols. Other possible values are 1055 * `'circle'`, `'square'`,`'diamond'`, `'triangle'` and 1056 * `'triangle-down'`. 1057 * 1058 * Additionally, the URL to a graphic can be given on this form: 1059 * `'url(graphic.png)'`. Note that for the image to be applied to 1060 * exported charts, its URL needs to be accessible by the export 1061 * server. 1062 * 1063 * Custom callbacks for symbol path generation can also be added to 1064 * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then
1065 * used by its method name, as shown in the demo. 1066 * 1067 * @sample {highcharts} highcharts/plotoptions/series-marker-symbol/ 1068 * Predefined, graphic and custom markers 1069 * @sample {highstock} highcharts/plotoptions/series-marker-symbol/ 1070 * Predefined, graphic and custom markers 1071 * @sample {highmaps} maps/demo/mappoint-mapmarker 1072 * Using the mapmarker symbol for points 1073 * 1074 * @type {string} 1075 * @apioption plotOptions.series.marker.symbol 1076 */ 1077 /** 1078 * Image markers only. Set the image width explicitly. When using 1079 * this option, a `height` must also be set. 1080 * 1081 * @sample {highcharts} highcharts/plotoptions/series-marker-width-height/ 1082 * Fixed width and height 1083 * @sample {highstock} highcharts/plotoptions/series-marker-width-height/ 1084 * Fixed width and height 1085 * 1086 * @type {number} 1087 * @since 4.0.4 1088 * @apioption plotOptions.series.marker.width 1089 */ 1090 /** 1091 * States for a single point marker. 1092 * 1093 * @declare Highcharts.PointStatesOptionsObject 1094 */ 1095 states: { 1096 /** 1097 * The normal state of a single point marker. Currently only 1098 * used for setting animation when returning to normal state 1099 * from hover. 1100 * 1101 * @declare Highcharts.PointStatesNormalOptionsObject 1102 */ 1103 normal: { 1104 /** 1105 * Animation when returning to normal state after hovering. 1106 * 1107 * @type {boolean|Partial<Highcharts.AnimationOptionsObject>} 1108 */ 1109 animation: true 1110 }, 1111 /** 1112 * The hover state for a single point marker. 1113 * 1114 * @declare Highcharts.PointStatesHoverOptionsObject 1115 */ 1116 hover: { 1117 /** 1118 * Animation when hovering over the marker. 1119 * 1120 * @type {boolean|Partial<Highcharts.AnimationOptionsObject>} 1121 */ 1122 animation: { 1123 /** @internal */ 1124 duration: 150 1125 }, 1126 /** 1127 * Enable or disable the point marker. 1128 * 1129 * @sample {highcharts} highcharts/plotoptions/series-marker-states-hover-enabled/ 1130 * Disabled hover state 1131 */ 1132 enabled: true, 1133 /** 1134 * The fill color of the marker in hover state. When 1135 * `undefined`, the series' or point's fillColor for normal 1136 * state is used. 1137 * 1138 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1139 * @apioption plotOptions.series.marker.states.hover.fillColor 1140 */ 1141 /** 1142 * The color of the point marker's outline. When 1143 * `undefined`, the series' or point's lineColor for normal 1144 * state is used. 1145 * 1146 * @sample {highcharts} highcharts/plotoptions/series-marker-states-hover-linecolor/ 1147 * White fill color, black line color 1148 * 1149 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1150 * @apioption plotOptions.series.marker.states.hover.lineColor 1151 */ 1152 /** 1153 * The width of the point marker's outline. When 1154 * `undefined`, the series' or point's lineWidth for normal 1155 * state is used. 1156 * 1157 * @sample {highcharts} highcharts/plotoptions/series-marker-states-hover-linewidth/ 1158 * 3px line width 1159 * 1160 * @type {number} 1161 * @apioption plotOptions.series.marker.states.hover.lineWidth 1162 */ 1163 /** 1164 * The radius of the point marker. In hover state, it
1165 * defaults to the normal state's radius + 2 as per the 1166 * [radiusPlus](#plotOptions.series.marker.states.hover.radiusPlus) 1167 * option. 1168 * 1169 * @sample {highcharts} highcharts/plotoptions/series-marker-states-hover-radius/ 1170 * 10px radius 1171 * 1172 * @type {number} 1173 * @apioption plotOptions.series.marker.states.hover.radius 1174 */ 1175 /** 1176 * The number of pixels to increase the radius of the 1177 * hovered point. 1178 * 1179 * @sample {highcharts} highcharts/plotoptions/series-states-hover-linewidthplus/ 1180 * 5 pixels greater radius on hover 1181 * @sample {highstock} highcharts/plotoptions/series-states-hover-linewidthplus/ 1182 * 5 pixels greater radius on hover 1183 * 1184 * @since 4.0.3 1185 */ 1186 radiusPlus: 2, 1187 /** 1188 * The additional line width for a hovered point. 1189 * 1190 * @sample {highcharts} highcharts/plotoptions/series-states-hover-linewidthplus/ 1191 * 2 pixels wider on hover 1192 * @sample {highstock} highcharts/plotoptions/series-states-hover-linewidthplus/ 1193 * 2 pixels wider on hover 1194 * 1195 * @since 4.0.3 1196 */ 1197 lineWidthPlus: 1 1198 }, 1199 /** 1200 * The appearance of the point marker when selected. In order to 1201 * allow a point to be selected, set the 1202 * `series.allowPointSelect` option to true. 1203 * 1204 * @declare Highcharts.PointStatesSelectOptionsObject 1205 */ 1206 select: { 1207 /** 1208 * Enable or disable visible feedback for selection. 1209 * 1210 * @sample {highcharts} highcharts/plotoptions/series-marker-states-select-enabled/ 1211 * Disabled select state 1212 * 1213 * @type {boolean} 1214 * @default true 1215 * @apioption plotOptions.series.marker.states.select.enabled 1216 */ 1217 /** 1218 * The radius of the point marker. In hover state, it 1219 * defaults to the normal state's radius + 2. 1220 * 1221 * @sample {highcharts} highcharts/plotoptions/series-marker-states-select-radius/ 1222 * 10px radius for selected points 1223 * 1224 * @type {number} 1225 * @apioption plotOptions.series.marker.states.select.radius 1226 */ 1227 /** 1228 * The fill color of the point marker. 1229 * 1230 * @sample {highcharts} highcharts/plotoptions/series-marker-states-select-fillcolor/ 1231 * Solid red discs for selected points 1232 * 1233 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1234 */ 1235 fillColor: "#cccccc" /* Palette.neutralColor20 */, 1236 /** 1237 * The color of the point marker's outline. When 1238 * `undefined`, the series' or point's color is used. 1239 * 1240 * @sample {highcharts} highcharts/plotoptions/series-marker-states-select-linecolor/ 1241 * Red line color for selected points 1242 * 1243 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1244 */ 1245 lineColor: "#000000" /* Palette.neutralColor100 */, 1246 /** 1247 * The width of the point marker's outline. 1248 * 1249 * @sample {highcharts} highcharts/plotoptions/series-marker-states-select-linewidth/ 1250 * 3px line width for selected points 1251 */ 1252 lineWidth: 2 1253 } 1254 } 1255 }, 1256 /** 1257 * Properties for each single point. 1258 * 1259 * @declare Highcharts.PlotSeriesPointOptions 1260 * 1261 * @private 1262 */ 1263 point: { 1264 /** 1265 * Fires when a point is clicked. One parameter, `event`, is passed 1266 * to the function, containing common event information. 1267 * 1268 * If the `series.allowPointSelect` option is true, the default 1269 * action for the point's click event is to toggle the point's 1270 * select state. Returning `false` cancels this action. 1271 * 1272 * @sample {highcharts} highcharts/plotoptions/series-point-events-click/ 1273 * Click marker to alert values 1274 * @sample {highcharts} highcharts/plotoptions/series-point-events-click-column/ 1275 * Click column 1276 * @sample {highcharts} highcharts/plotoptions/series-point-events-click-url/ 1277 * Go to URL 1278 * @sample {highmaps} maps/plotoptions/series-point-events-click/ 1279 * Click marker to display values 1280 * @sample {highmaps} maps/plotoptions/series-point-events-click-url/ 1281 * Go to URL 1282 * 1283 * @type {Highcharts.PointClickCallbackFunction} 1284 * @context Highcharts.Point 1285 * @apioption plotOptions.series.point.events.click 1286 */ 1287 /** 1288 * Fires when the mouse leaves the area close to the point. One 1289 * parameter, `event`, is passed to the function, containing common 1290 * event information. 1291 * 1292 * @sample {highcharts} highcharts/plotoptions/series-point-events-mouseover/
1293 * Show values in the chart's corner on mouse over 1294 * 1295 * @type {Highcharts.PointMouseOutCallbackFunction} 1296 * @context Highcharts.Point 1297 * @apioption plotOptions.series.point.events.mouseOut 1298 */ 1299 /** 1300 * Fires when the mouse enters the area close to the point. One 1301 * parameter, `event`, is passed to the function, containing common 1302 * event information. 1303 * 1304 * Returning `false` cancels the default behavior, which is to show a 1305 * tooltip for the point. 1306 * 1307 * @sample {highcharts} highcharts/plotoptions/series-point-events-mouseover/ 1308 * Show values in the chart's corner on mouse over 1309 * 1310 * @type {Highcharts.PointMouseOverCallbackFunction} 1311 * @context Highcharts.Point 1312 * @apioption plotOptions.series.point.events.mouseOver 1313 */ 1314 /** 1315 * Fires when the point is removed using the `.remove()` method. One 1316 * parameter, `event`, is passed to the function. Returning `false` 1317 * cancels the operation. 1318 * 1319 * @sample {highcharts} highcharts/plotoptions/series-point-events-remove/ 1320 * Remove point and confirm 1321 * 1322 * @type {Highcharts.PointRemoveCallbackFunction} 1323 * @since 1.2.0 1324 * @context Highcharts.Point 1325 * @apioption plotOptions.series.point.events.remove 1326 */ 1327 /** 1328 * Fires when the point is selected either programmatically or 1329 * following a click on the point. One parameter, `event`, is passed 1330 * to the function. Returning `false` cancels the operation. 1331 * 1332 * @sample {highcharts} highcharts/plotoptions/series-point-events-select/ 1333 * Report the last selected point 1334 * @sample {highmaps} maps/plotoptions/series-allowpointselect/ 1335 * Report select and unselect 1336 * 1337 * @type {Highcharts.PointSelectCallbackFunction} 1338 * @since 1.2.0 1339 * @context Highcharts.Point 1340 * @apioption plotOptions.series.point.events.select 1341 */ 1342 /** 1343 * Fires when the point is unselected either programmatically or 1344 * following a click on the point. One parameter, `event`, is passed 1345 * to the function. 1346 * Returning `false` cancels the operation. 1347 * 1348 * @sample {highcharts} highcharts/plotoptions/series-point-events-unselect/ 1349 * Report the last unselected point 1350 * @sample {highmaps} maps/plotoptions/series-allowpointselect/ 1351 * Report select and unselect 1352 * 1353 * @type {Highcharts.PointUnselectCallbackFunction} 1354 * @since 1.2.0 1355 * @context Highcharts.Point 1356 * @apioption plotOptions.series.point.events.unselect 1357 */ 1358 /** 1359 * Fires when the point is updated programmatically through the 1360 * `.update()` method. One parameter, `event`, is passed to the 1361 * function. The new point options can be accessed through 1362 * `event.options`. Returning `false` cancels the operation. 1363 * 1364 * @sample {highcharts} highcharts/plotoptions/series-point-events-update/ 1365 * Confirm point updating 1366 * 1367 * @type {Highcharts.PointUpdateCallbackFunction} 1368 * @since 1.2.0 1369 * @context Highcharts.Point 1370 * @apioption plotOptions.series.point.events.update 1371 */ 1372 /** 1373 * Events for each single point. 1374 * 1375 * @declare Highcharts.PointEventsOptionsObject 1376 */ 1377 events: {} 1378 }, 1379 /** 1380 * Options for the series data labels, appearing next to each data 1381 * point. 1382 * 1383 * Since v6.2.0, multiple data labels can be applied to each single 1384 * point by defining them as an array of configs. 1385 * 1386 * In styled mode, the data labels can be styled with the 1387 * `.highcharts-data-label-box` and `.highcharts-data-label` class names 1388 * ([see example](https://www.highcharts.com/samples/highcharts/css/series-datalabels)). 1389 * 1390 * @sample {highcharts} highcharts/plotoptions/series-datalabels-enabled 1391 * Data labels enabled 1392 * @sample {highcharts} highcharts/plotoptions/series-datalabels-multiple 1393 * Multiple data labels on a bar series 1394 * @sample {highcharts} highcharts/css/series-datalabels 1395 * Styled mode example 1396 * @sample {highmaps} maps/demo/color-axis 1397 * Choropleth map with data labels 1398 * @sample {highmaps} maps/demo/mappoint-datalabels-mapmarker 1399 * Using data labels as map markers 1400 * 1401 * @type {*|Array<*>} 1402 * @product highcharts highstock highmaps gantt 1403 * 1404 * @private 1405 */ 1406 dataLabels: { 1407 /** 1408 * Enable or disable the initial animation when a series is displayed 1409 * for the `dataLabels`. The animation can also be set as a 1410 * configuration object. Please note that this option only applies to 1411 * the initial animation. 1412 * 1413 * For other animations, see [chart.animation](#chart.animation) and the 1414 * animation parameter under the API methods. The following properties 1415 * are supported: 1416 * 1417 * - `defer`: The animation delay time in milliseconds. 1418 * 1419 * @sample {highcharts} highcharts/plotoptions/animation-defer/ 1420 * Animation defer settings 1421 * 1422 * @type {boolean|Partial<Highcharts.AnimationOptionsObject>} 1423 * @since 8.2.0 1424 * @apioption plotOptions.series.dataLabels.animation 1425 */ 1426 animation: {}, 1427 /** 1428 * The animation delay time in milliseconds. Set to `0` to render the 1429 * data labels immediately. As `undefined` inherits defer time from the 1430 * [series.animation.defer](#plotOptions.series.animation.defer). 1431 * 1432 * @type {number} 1433 * @since 8.2.0 1434 * @apioption plotOptions.series.dataLabels.animation.defer 1435 */ 1436 /** 1437 * The alignment of the data label compared to the point. If `right`, 1438 * the right side of the label should be touching the point. For points 1439 * with an extent, like columns, the alignments also dictates how to 1440 * align it inside the box, as given with the 1441 * [inside](#plotOptions.column.dataLabels.inside) option. Can be one of 1442 * `left`, `center` or `right`. 1443 * 1444 * @sample {highcharts} 1445 * highcharts/plotoptions/series-datalabels-align-left/ Left 1446 * aligned 1447 * @sample {highcharts} 1448 * highcharts/plotoptions/bar-datalabels-align-inside-bar/ Data 1449 * labels inside the bar 1450 * 1451 * @type {Highcharts.AlignValue|null} 1452 */ 1453 align: 'center', 1454 /** 1455 * Alignment method for data labels. If set to `plotEdges`, the labels 1456 * are aligned within the plot area in the direction of the y-axis. So 1457 * in a regular column chart, the labels are aligned vertically 1458 * according to the `verticalAlign` setting. In a bar chart, which is 1459 * inverted, the labels are aligned horizontally according to the 1460 * `align` setting. Applies to cartesian series only. 1461 * 1462 * @sample {highcharts} highcharts/series-bar/datalabels-alignto/ 1463 * Align to plot edges 1464 * 1465 * @type {string} 1466 * @since 11.4.2 1467 * @apioption plotOptions.series.dataLabels.alignTo 1468 */ 1469 /** 1470 * Whether to allow data labels to overlap. To make the labels less 1471 * sensitive for overlapping, the 1472 * [dataLabels.padding](#plotOptions.series.dataLabels.padding) 1473 * can be set to 0. 1474 * 1475 * @sample {highcharts} highcharts/plotoptions/series-datalabels-allowoverlap-false/ 1476 * Don't allow overlap 1477 * 1478 * @type {boolean} 1479 * @default false 1480 * @since 4.1.0 1481 * @apioption plotOptions.series.dataLabels.allowOverlap 1482 */ 1483 /** 1484 * The background color or gradient for the data label. Setting it to 1485 * `auto` will use the point's color. 1486 * 1487 * @sample {highcharts} highcharts/plotoptions/series-datalabels-box/ 1488 * Data labels box options 1489 * @sample {highmaps} maps/plotoptions/series-datalabels-box/ 1490 * Data labels box options 1491 * @sample {highmaps} maps/demo/mappoint-datalabels-mapmarker 1492 * Data labels as map markers 1493 * 1494 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1495 * @since 2.2.1 1496 * @apioption plotOptions.series.dataLabels.backgroundColor 1497 */ 1498 /** 1499 * The border color for the data label. Setting it to `auto` will use 1500 * the point's color. Defaults to `undefined`. 1501 * 1502 * @sample {highcharts} highcharts/plotoptions/series-datalabels-box/ 1503 * Data labels box options 1504 * 1505 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 1506 * @since 2.2.1 1507 * @apioption plotOptions.series.dataLabels.borderColor 1508 */ 1509 /** 1510 * The border radius in pixels for the data label. 1511 * 1512 * @sample {highcharts} highcharts/plotoptions/series-datalabels-box/ 1513 * Data labels box options 1514 * @sample {highmaps} maps/plotoptions/series-datalabels-box/ 1515 * Data labels box options 1516 * 1517 * @type {number} 1518 * @default 0 1519 * @since 2.2.1 1520 * @apioption plotOptions.series.dataLabels.borderRadius 1521 */ 1522 /** 1523 * The border width in pixels for the data label. 1524 * 1525 * @sample {highcharts} highcharts/plotoptions/series-datalabels-box/ 1526 * Data labels box options 1527 * 1528 * @type {number} 1529 * @default 0 1530 * @since 2.2.1 1531 * @apioption plotOptions.series.dataLabels.borderWidth 1532 */ 1533 borderWidth: 0, 1534 /** 1535 * A class name for the data label. Particularly in styled mode, 1536 * this can be used to give each series' or point's data label 1537 * unique styling. In addition to this option, a default color class 1538 * name is added so that we can give the labels a contrast text 1539 * shadow. 1540 * 1541 * @sample {highcharts} highcharts/css/data-label-contrast/ 1542 * Contrast text shadow 1543 * @sample {highcharts} highcharts/css/series-datalabels/ 1544 * Styling by CSS 1545 * 1546 * @type {string} 1547 * @since 5.0.0 1548 * @apioption plotOptions.series.dataLabels.className 1549 */ 1550 /** 1551 * This options is deprecated. 1552 * Use [style.color](#plotOptions.series.dataLabels.style) instead. 1553 * 1554 * The text color for the data labels. Defaults to `undefined`. For 1555 * certain series types, like column or map, the data labels can be 1556 * drawn inside the points. In this case the data label will be 1557 * drawn with maximum contrast by default. Additionally, it will be 1558 * given a `text-outline` style with the opposite color, to further 1559 * increase the contrast. This can be overridden by setting the 1560 * `text-outline` style to `none` in the `dataLabels.style` option. 1561 * 1562 * @sample {highcharts} highcharts/plotoptions/series-datalabels-color/ 1563 * Red data labels 1564 * @sample {highmaps} maps/demo/color-axis/ 1565 * White data labels 1566 * 1567 * @see [style.color](#plotOptions.series.dataLabels.style) 1568 * 1569 * @type {Highcharts.ColorType} 1570 * @deprecated 10.3 1571 * @apioption plotOptions.series.dataLabels.color 1572 */ 1573 /** 1574 * Whether to hide data labels that are outside the plot area. By 1575 * default, the data label is moved inside the plot area according 1576 * to the 1577 * [overflow](#plotOptions.series.dataLabels.overflow) 1578 * option. 1579 * 1580 * @type {boolean} 1581 * @default true 1582 * @since 2.3.3 1583 * @apioption plotOptions.series.dataLabels.crop 1584 */ 1585 /** 1586 * Whether to defer displaying the data labels until the initial 1587 * series animation has finished. Setting to `false` renders the 1588 * data label immediately. If set to `true` inherits the defer 1589 * time set in [plotOptions.series.animation](#plotOptions.series.animation). 1590 * 1591 * @since 4.0.0 1592 * @type {boolean} 1593 * @product highcharts highstock gantt 1594 */ 1595 defer: true, 1596 /** 1597 * Enable or disable the data labels. 1598 * 1599 * @sample {highcharts} highcharts/plotoptions/series-datalabels-enabled/ 1600 * Data labels enabled 1601 * @sample {highmaps} maps/demo/color-axis/ 1602 * Data labels enabled 1603 * 1604 * @type {boolean} 1605 * @default false 1606 * @apioption plotOptions.series.dataLabels.enabled 1607 */ 1608 /** 1609 * A declarative filter to control of which data labels to display. 1610 * The declarative filter is designed for use when callback 1611 * functions are not available, like when the chart options require 1612 * a pure JSON structure or for use with graphical editors. For 1613 * programmatic control, use the `formatter` instead, and return 1614 * `undefined` to disable a single data label. 1615 * 1616 * @example 1617 * filter: { 1618 * property: 'percentage', 1619 * operator: '>', 1620 * value: 4 1621 * } 1622 * 1623 * @sample {highcharts} highcharts/demo/pie-monochrome 1624 * Data labels filtered by percentage 1625 * 1626 * @declare Highcharts.DataLabelsFilterOptionsObject 1627 * @since 6.0.3 1628 * @apioption plotOptions.series.dataLabels.filter 1629 */ 1630 /** 1631 * The operator to compare by. Can be one of `>`, `<`, `>=`, `<=`, 1632 * `==`, `===`, `!=` and `!==`. 1633 * 1634 * @type {string} 1635 * @validvalue [">", "<", ">=", "<=", "==", "===", "!=", "!=="] 1636 * @apioption plotOptions.series.dataLabels.filter.operator
1637 */ 1638 /** 1639 * The point property to filter by. Point options are passed 1640 * directly to properties, additionally there are `y` value, 1641 * `percentage` and others listed under {@link Highcharts.Point} 1642 * members. 1643 * 1644 * @type {string} 1645 * @apioption plotOptions.series.dataLabels.filter.property 1646 */ 1647 /** 1648 * The value to compare against. 1649 * 1650 * @type {number} 1651 * @apioption plotOptions.series.dataLabels.filter.value 1652 */ 1653 /** 1654 * A 1655 * [format string](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting) 1656 * for the data label. Available variables are the same as for 1657 * `formatter`. 1658 * 1659 * @sample {highcharts} highcharts/plotoptions/series-datalabels-format/ 1660 * Add a unit 1661 * @sample {highcharts} highcharts/plotoptions/series-datalabels-format-subexpression/ 1662 * Complex logic in the format string 1663 * @sample {highmaps} maps/plotoptions/series-datalabels-format/ 1664 * Formatted value in the data label 1665 * 1666 * @type {string} 1667 * @default y 1668 * @default point.value 1669 * @since 3.0 1670 * @apioption plotOptions.series.dataLabels.format 1671 */ 1672 // eslint-disable-next-line valid-jsdoc 1673 /** 1674 * Callback JavaScript function to format the data label. Note that if a 1675 * `format` is defined, the format takes precedence and the formatter is 1676 * ignored. 1677 * 1678 * @sample {highmaps} maps/plotoptions/series-datalabels-format/ 1679 * Formatted value 1680 * 1681 * @type {Highcharts.DataLabelsFormatterCallbackFunction} 1682 */ 1683 formatter: function () { 1684 const { numberFormatter } = this.series.chart; 1685 return typeof this.y !== 'number' ? 1686 '' : numberFormatter(this.y, -1); 1687 }, 1688 /** 1689 * For points with an extent, like columns or map areas, whether to 1690 * align the data label inside the box or to the actual value point. 1691 * Defaults to `false` in most cases, `true` in stacked columns. 1692 * 1693 * @type {boolean} 1694 * @since 3.0 1695 * @apioption plotOptions.series.dataLabels.inside 1696 */ 1697 /** 1698 * Format for points with the value of null. Works analogously to 1699 * [format](#plotOptions.series.dataLabels.format). `nullFormat` can 1700 * be applied only to series which support displaying null points 1701 * i.e `heatmap` or `tilemap`. Does not work with series that don't 1702 * display null points, like `line`, `column`, `bar` or `pie`. 1703 * 1704 * @sample {highcharts} highcharts/plotoptions/series-datalabels-nullformat/ 1705 * Format data label for null points in heat map 1706 * 1707 * @type {boolean|string} 1708 * @since 7.1.0 1709 * @apioption plotOptions.series.dataLabels.nullFormat 1710 */ 1711 /** 1712 * Callback JavaScript function that defines formatting for points 1713 * with the value of null. Works analogously to 1714 * [formatter](#plotOptions.series.dataLabels.formatter). 1715 * `nullFormatter` can be applied only to series which support 1716 * displaying null points i.e `heatmap` or `tilemap`. Does not work 1717 * with series that don't display null points, like `line`, `column`, 1718 * `bar` or `pie`. 1719 * 1720 * @sample {highcharts} highcharts/plotoptions/series-datalabels-nullformat/ 1721 * Format data label for null points in heat map 1722 * 1723 * @type {Highcharts.DataLabelsFormatterCallbackFunction} 1724 * @since 7.1.0 1725 * @apioption plotOptions.series.dataLabels.nullFormatter 1726 */ 1727 /** 1728 * How to handle data labels that flow outside the plot area. The 1729 * default is `"justify"`, which aligns them inside the plot area. 1730 * For columns and bars, this means it will be moved inside the bar. 1731 * To display data labels outside the plot area, set `crop` to 1732 * `false` and `overflow` to `"allow"`. 1733 * 1734 * @type {Highcharts.DataLabelsOverflowValue} 1735 * @default justify 1736 * @since 3.0.6 1737 * @apioption plotOptions.series.dataLabels.overflow 1738 */ 1739 /** 1740 * When either the `borderWidth` or the `backgroundColor` is set, 1741 * this is the padding within the box. 1742 * 1743 * @sample {highcharts} highcharts/plotoptions/series-datalabels-box/ 1744 * Data labels box options 1745 * @sample {highmaps} maps/plotoptions/series-datalabels-box/ 1746 * Data labels box options 1747 * 1748 * @since 2.2.1 1749 */ 1750 padding: 5, 1751 /** 1752 * Aligns data labels relative to points. If `center` alignment is 1753 * not possible, it defaults to `right`. 1754 * 1755 * @type {Highcharts.AlignValue} 1756 * @default center 1757 * @apioption plotOptions.series.dataLabels.position 1758 */ 1759 /** 1760 * Text rotation in degrees. Note that due to a more complex 1761 * structure, backgrounds, borders and padding will be lost on a 1762 * rotated data label. 1763 * 1764 * @sample {highcharts} highcharts/plotoptions/series-datalabels-rotation/ 1765 * Vertical labels 1766 * 1767 * @type {number} 1768 * @default 0 1769 * @apioption plotOptions.series.dataLabels.rotation 1770 */ 1771 /** 1772 * The shadow of the box. Works best with `borderWidth` or 1773 * `backgroundColor`. Since 2.3 the shadow can be an object 1774 * configuration containing `color`, `offsetX`, `offsetY`, `opacity` 1775 * and `width`. 1776 * 1777 * @sample {highcharts} highcharts/plotoptions/series-datalabels-box/ 1778 * Data labels box options 1779 * 1780 * @type {boolean|Highcharts.ShadowOptionsObject} 1781 * @default false 1782 * @since 2.2.1 1783 * @apioption plotOptions.series.dataLabels.shadow 1784 */ 1785 /** 1786 * The name of a symbol to use for the border around the label. 1787 * Symbols are predefined functions on the Renderer object. 1788 * 1789 * @sample {highcharts} highcharts/plotoptions/series-datalabels-shape/ 1790 * A callout for annotations 1791 * 1792 * @type {string} 1793 * @default square 1794 * @since 4.1.2 1795 * @apioption plotOptions.series.dataLabels.shape 1796 */ 1797 /** 1798 * Styles for the label. The default `color` setting is 1799 * `"contrast"`, which is a pseudo color that Highcharts picks up 1800 * and applies the maximum contrast to the underlying point item, 1801 * for example the bar in a bar chart. 1802 * 1803 * The `textOutline` is a pseudo property that applies an outline of 1804 * the given width with the given color, which by default is the 1805 * maximum contrast to the text. So a bright text color will result 1806 * in a black text outline for maximum readability on a mixed 1807 * background. In some cases, especially with grayscale text, the 1808 * text outline doesn't work well, in which cases it can be disabled 1809 * by setting it to `"none"`. When `useHTML` is true, the 1810 * `textOutline` will not be picked up. In this, case, the same 1811 * effect can be acheived through the `text-shadow` CSS property. 1812 * 1813 * For some series types, where each point has an extent, like for 1814 * example tree maps, the data label may overflow the point. There 1815 * are two strategies for handling overflow. By default, the text 1816 * will wrap to multiple lines. The other strategy is to set 1817 * `style.textOverflow` to `ellipsis`, which will keep the text on 1818 * one line plus it will break inside long words. 1819 * 1820 * @sample {highcharts} highcharts/plotoptions/series-datalabels-style/ 1821 * Bold labels 1822 * @sample {highcharts} highcharts/plotoptions/pie-datalabels-overflow/ 1823 * Long labels truncated with an ellipsis in a pie 1824 * @sample {highcharts} highcharts/plotoptions/pie-datalabels-overflow-wrap/ 1825 * Long labels are wrapped in a pie 1826 * @sample {highmaps} maps/demo/color-axis/ 1827 * Bold labels 1828 * 1829 * @type {Highcharts.CSSObject} 1830 * @since 4.1.0 1831 * @apioption plotOptions.series.dataLabels.style 1832 */ 1833 style: { 1834 /** @internal */ 1835 fontSize: '0.7em', 1836 /** @internal */ 1837 fontWeight: 'bold', 1838 /** @internal */ 1839 color: 'contrast', 1840 /** @internal */ 1841 textOutline: '1px contrast' 1842 }, 1843 /** 1844 * Options for a label text which should follow marker's shape. 1845 * Border and background are disabled for a label that follows a 1846 * path. 1847 * 1848 * **Note:** Only SVG-based renderer supports this option. Setting 1849 * `useHTML` to true will disable this option. 1850 * 1851 * @declare Highcharts.DataLabelsTextPathOptionsObject 1852 * @since 7.1.0 1853 * @apioption plotOptions.series.dataLabels.textPath 1854 */ 1855 /** 1856 * Presentation attributes for the text path. 1857 * 1858 * @type {Highcharts.SVGAttributes} 1859 * @since 7.1.0 1860 * @apioption plotOptions.series.dataLabels.textPath.attributes 1861 */ 1862 /** 1863 * Enable or disable `textPath` option for link's or marker's data 1864 * labels. 1865 * 1866 * @type {boolean} 1867 * @since 7.1.0 1868 * @apioption plotOptions.series.dataLabels.textPath.enabled 1869 */ 1870 /** 1871 * Whether to 1872 * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html) 1873 * to render the labels. 1874 * 1875 * @type {boolean} 1876 * @default false 1877 * @apioption plotOptions.series.dataLabels.useHTML 1878 */ 1879 /** 1880 * The vertical alignment of a data label. Can be one of `top`, 1881 * `middle` or `bottom`. The default value depends on the data, for 1882 * instance in a column chart, the label is above positive values 1883 * and below negative values. 1884 * 1885 * @type {Highcharts.VerticalAlignValue|null} 1886 * @since 2.3.3 1887 */ 1888 verticalAlign: 'bottom', 1889 /** 1890 * The x position offset of the label relative to the point in 1891 * pixels. 1892 * 1893 * @sample {highcharts} highcharts/plotoptions/series-datalabels-rotation/ 1894 * Vertical and positioned 1895 * @sample {highcharts} highcharts/plotoptions/bar-datalabels-align-inside-bar/ 1896 * Data labels inside the bar 1897 */ 1898 x: 0, 1899 /** 1900 * The z index of the data labels. Use a `zIndex` of 6 to display it above 1901 * the series, or use a `zIndex` of 2 to display it behind the series. 1902 * 1903 * @type {number} 1904 * @default 6 1905 * @since 2.3.5 1906 * @apioption plotOptions.series.dataLabels.zIndex 1907 */ 1908 /** 1909 * The y position offset of the label relative to the point in 1910 * pixels. 1911 * 1912 * @sample {highcharts} highcharts/plotoptions/series-datalabels-rotation/ 1913 * Vertical and positioned 1914 */ 1915 y: 0 1916 }, 1917 /** 1918 * When the series contains less points than the crop threshold, all 1919 * points are drawn, even if the points fall outside the visible plot 1920 * area at the current zoom. The advantage of drawing all points 1921 * (including markers and columns), is that animation is performed on
1922 * updates. On the other hand, when the series contains more points than 1923 * the crop threshold, the series data is cropped to only contain points 1924 * that fall within the plot area. The advantage of cropping away 1925 * invisible points is to increase performance on large series. 1926 * 1927 * @since 2.2 1928 * @product highcharts highstock 1929 * 1930 * @private 1931 */ 1932 cropThreshold: 300, 1933 /** 1934 * Opacity of a series parts: line, fill (e.g. area) and dataLabels. 1935 * 1936 * @see [states.inactive.opacity](#plotOptions.series.states.inactive.opacity) 1937 * 1938 * @since 7.1.0 1939 * 1940 * @private 1941 */ 1942 opacity: 1, 1943 /** 1944 * The width of each point on the x axis. For example in a column chart 1945 * with one value each day, the pointRange would be 1 day (= 24 * 3600 1946 * * 1000 milliseconds). This is normally computed automatically, but 1947 * this option can be used to override the automatic value. 1948 * 1949 * @product highstock 1950 * 1951 * @private 1952 */ 1953 pointRange: 0, 1954 /** 1955 * When this is true, the series will not cause the Y axis to cross 1956 * the zero plane (or [threshold](#plotOptions.series.threshold) option) 1957 * unless the data actually crosses the plane. 1958 * 1959 * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 1960 * 3 will make the Y axis show negative values according to the 1961 * `minPadding` option. If `softThreshold` is `true`, the Y axis starts 1962 * at 0. 1963 * 1964 * @since 4.1.9 1965 * @product highcharts highstock 1966 * 1967 * @private 1968 */ 1969 softThreshold: true, 1970 /** 1971 * @declare Highcharts.SeriesStatesOptionsObject 1972 * 1973 * @private 1974 */ 1975 states: { 1976 /** 1977 * The normal state of a series, or for point items in column, pie 1978 * and similar series. Currently only used for setting animation 1979 * when returning to normal state from hover. 1980 * 1981 * @declare Highcharts.SeriesStatesNormalOptionsObject 1982 */ 1983 normal: { 1984 /** 1985 * Animation when returning to normal state after hovering. 1986 * 1987 * @type {boolean|Partial<Highcharts.AnimationOptionsObject>} 1988 */ 1989 animation: true 1990 }, 1991 /** 1992 * Options for the hovered series. These settings override the 1993 * normal state options when a series is moused over or touched. 1994 * 1995 * @declare Highcharts.SeriesStatesHoverOptionsObject 1996 */ 1997 hover: { 1998 /** 1999 * Enable separate styles for the hovered series to visualize 2000 * that the user hovers either the series itself or the legend. 2001 * 2002 * @sample {highcharts} highcharts/plotoptions/series-states-hover-enabled/ 2003 * Line 2004 * @sample {highcharts} highcharts/plotoptions/series-states-hover-enabled-column/ 2005 * Column 2006 * @sample {highcharts} highcharts/plotoptions/series-states-hover-enabled-pie/ 2007 * Pie 2008 * 2009 * @type {boolean} 2010 * @default true 2011 * @since 1.2 2012 * @apioption plotOptions.series.states.hover.enabled 2013 */ 2014 /** 2015 * Animation setting for hovering the graph in line-type series. 2016 * 2017 * @type {boolean|Partial<Highcharts.AnimationOptionsObject>} 2018 * @since 5.0.8 2019 * @product highcharts highstock 2020 */ 2021 animation: { 2022 /** 2023 * The duration of the hover animation in milliseconds. By 2024 * default the hover state animates quickly in, and slowly 2025 * back to normal. 2026 * 2027 * @internal 2028 */ 2029 duration: 150 2030 }, 2031 /** 2032 * Pixel width of the graph line. By default this property is 2033 * undefined, and the `lineWidthPlus` property dictates how much 2034 * to increase the linewidth from normal state. 2035 * 2036 * @sample {highcharts} highcharts/plotoptions/series-states-hover-linewidth/ 2037 * 5px line on hover 2038 * 2039 * @type {number} 2040 * @product highcharts highstock 2041 * @apioption plotOptions.series.states.hover.lineWidth 2042 */ 2043 /** 2044 * The additional line width for the graph of a hovered series. 2045 * 2046 * @sample {highcharts} highcharts/plotoptions/series-states-hover-linewidthplus/ 2047 * 5 pixels wider 2048 * @sample {highstock} highcharts/plotoptions/series-states-hover-linewidthplus/ 2049 * 5 pixels wider 2050 * 2051 * @since 4.0.3 2052 * @product highcharts highstock 2053 */ 2054 lineWidthPlus: 1, 2055 /** 2056 * In Highcharts 1.0, the appearance of all markers belonging 2057 * to the hovered series. For settings on the hover state of the 2058 * individual point, see 2059 * [marker.states.hover](#plotOptions.series.marker.states.hover). 2060 * 2061 * @deprecated 2062 * 2063 * @extends plotOptions.series.marker 2064 * @excluding states, symbol 2065 * @product highcharts highstock 2066 */ 2067 marker: { 2068 // `lineWidth: base + 1`, 2069 // `radius: base + 1` 2070 }, 2071 /** 2072 * Options for the halo appearing around the hovered point in 2073 * line-type series as well as outside the hovered slice in pie 2074 * charts. By default the halo is filled by the current point or 2075 * series color with an opacity of 0.25\. The halo can be 2076 * disabled by setting the `halo` option to `null`. 2077 *
2078 * In styled mode, the halo is styled with the 2079 * `.highcharts-halo` class, with colors inherited from 2080 * `.highcharts-color-{n}`. 2081 * 2082 * @sample {highcharts} highcharts/plotoptions/halo/ 2083 * Halo options 2084 * @sample {highstock} highcharts/plotoptions/halo/ 2085 * Halo options 2086 * 2087 * @declare Highcharts.SeriesStatesHoverHaloOptionsObject 2088 * @type {null|*} 2089 * @since 4.0 2090 * @product highcharts highstock 2091 */ 2092 halo: { 2093 /** 2094 * A collection of SVG attributes to override the appearance 2095 * of the halo, for example `fill`, `stroke` and 2096 * `stroke-width`. 2097 * 2098 * @type {Highcharts.SVGAttributes} 2099 * @since 4.0 2100 * @product highcharts highstock 2101 * @apioption plotOptions.series.states.hover.halo.attributes 2102 */ 2103 /** 2104 * The pixel size of the halo. For point markers this is the 2105 * radius of the halo. For pie slices it is the width of the 2106 * halo outside the slice. For bubbles it defaults to 5 and 2107 * is the width of the halo outside the bubble. 2108 * 2109 * @since 4.0 2110 * @product highcharts highstock 2111 */ 2112 size: 10, 2113 /** 2114 * Opacity for the halo unless a specific fill is overridden 2115 * using the `attributes` setting. Note that Highcharts is 2116 * only able to apply opacity to colors of hex or rgb(a) 2117 * formats. 2118 * 2119 * @since 4.0 2120 * @product highcharts highstock 2121 */ 2122 opacity: 0.25 2123 } 2124 }, 2125 /** 2126 * Specific options for point in selected states, after being 2127 * selected by 2128 * [allowPointSelect](#plotOptions.series.allowPointSelect) 2129 * or programmatically. 2130 * 2131 * @sample maps/plotoptions/series-allowpointselect/ 2132 * Allow point select demo 2133 * 2134 * @declare Highcharts.SeriesStatesSelectOptionsObject 2135 * @extends plotOptions.series.states.hover 2136 * @excluding brightness 2137 */ 2138 select: { 2139 animation: { 2140 /** @internal */ 2141 duration: 0 2142 } 2143 }, 2144 /** 2145 * The opposite state of a hover for series. 2146 * 2147 * @sample highcharts/plotoptions/series-states-inactive-disabled 2148 * Disabled inactive state 2149 * 2150 * @declare Highcharts.SeriesStatesInactiveOptionsObject 2151 */ 2152 inactive: { 2153 /** 2154 * Enable or disable the inactive state for a series 2155 * 2156 * @sample highcharts/plotoptions/series-states-inactive-disabled 2157 * Disabled inactive state 2158 * 2159 * @type {boolean} 2160 * @default true 2161 * @apioption plotOptions.series.states.inactive.enabled 2162 */ 2163 /** 2164 * The animation for entering the inactive state. 2165 * 2166 * @type {boolean|Partial<Highcharts.AnimationOptionsObject>} 2167 */ 2168 animation: { 2169 /** @internal */ 2170 duration: 150 2171 }, 2172 /** 2173 * Opacity of series elements (dataLabels, line, area). 2174 * 2175 * @type {number} 2176 */ 2177 opacity: 0.2 2178 } 2179 }, 2180 /** 2181 * Sticky tracking of mouse events. When true, the `mouseOut` event on a 2182 * series isn't triggered until the mouse moves over another series, or 2183 * out of the plot area. When false, the `mouseOut` event on a series is 2184 * triggered when the mouse leaves the area around the series' graph or 2185 * markers. This also implies the tooltip when not shared. When 2186 * `stickyTracking` is false and `tooltip.shared` is false, the tooltip 2187 * will be hidden when moving the mouse between series. Defaults to true 2188 * for line and area type series, but to false for columns, pies etc. 2189 * 2190 * **Note:** The boost module will force this option because of 2191 * technical limitations. 2192 * 2193 * @sample {highcharts} highcharts/plotoptions/series-stickytracking-true/ 2194 * True by default 2195 * @sample {highcharts} highcharts/plotoptions/series-stickytracking-false/ 2196 * False 2197 * 2198 * @default {highcharts} true 2199 * @default {highstock} true 2200 * @default {highmaps} false 2201 * @since 2.0 2202 * 2203 * @private 2204 */ 2205 stickyTracking: true, 2206 /** 2207 * A configuration object for the tooltip rendering of each single 2208 * series. Properties are inherited from [tooltip](#tooltip), but only 2209 * the following properties can be defined on a series level. 2210 * 2211 * @declare Highcharts.SeriesTooltipOptionsObject 2212 * @since 2.3 2213 * @extends tooltip 2214 * @excluding animation, backgroundColor, borderColor, borderRadius, 2215 * borderWidth, className, crosshairs, enabled, formatter, 2216 * headerShape, hideDelay, outside, padding, positioner, 2217 * shadow, shape, shared, snap, split, stickOnContact, 2218 * style, useHTML 2219 * @apioption plotOptions.series.tooltip 2220 */ 2221 /** 2222 * When a series contains a `data` array that is longer than this, the
2223 * Series class looks for data configurations of plain numbers or arrays of 2224 * numbers. The first and last valid points are checked. If found, the rest 2225 * of the data is assumed to be the same. This saves expensive data checking 2226 * and indexing in long series, and makes data-heavy charts render faster. 2227 * 2228 * Set it to `0` disable. 2229 * 2230 * Note: 2231 * - In boost mode turbo threshold is forced. Only array of numbers or two 2232 * dimensional arrays are allowed. 2233 * - In version 11.4.3 and earlier, if object configurations were passed 2234 * beyond the turbo threshold, a warning was logged in the console and the 2235 * data series didn't render. 2236 * 2237 * @since 2.2 2238 * @product highcharts highstock gantt 2239 * 2240 * @private 2241 */ 2242 turboThreshold: 1000, 2243 /** 2244 * An array defining zones within a series. Zones can be applied to the 2245 * X axis, Y axis or Z axis for bubbles, according to the `zoneAxis` 2246 * option. The zone definitions have to be in ascending order regarding 2247 * to the value. 2248 * 2249 * In styled mode, the color zones are styled with the 2250 * `.highcharts-zone-{n}` class, or custom classed from the `className` 2251 * option 2252 * ([view live demo](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/css/color-zones/)). 2253 * 2254 * @see [zoneAxis](#plotOptions.series.zoneAxis) 2255 * 2256 * @sample {highcharts} highcharts/series/color-zones-simple/ 2257 * Color zones 2258 * @sample {highstock} highcharts/series/color-zones-simple/ 2259 * Color zones 2260 * 2261 * @declare Highcharts.SeriesZonesOptionsObject 2262 * @type {Array<*>} 2263 * @since 4.1.0 2264 * @product highcharts highstock 2265 * @apioption plotOptions.series.zones 2266 */ 2267 /** 2268 * Styled mode only. A custom class name for the zone. 2269 * 2270 * @sample highcharts/css/color-zones/
2271 * Zones styled by class name 2272 * 2273 * @type {string} 2274 * @since 5.0.0 2275 * @apioption plotOptions.series.zones.className 2276 */ 2277 /** 2278 * Defines the color of the series. 2279 * 2280 * @see [series color](#plotOptions.series.color) 2281 * 2282 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 2283 * @since 4.1.0 2284 * @product highcharts highstock 2285 * @apioption plotOptions.series.zones.color 2286 */ 2287 /** 2288 * A name for the dash style to use for the graph. 2289 * 2290 * @see [plotOptions.series.dashStyle](#plotOptions.series.dashStyle) 2291 * 2292 * @sample {highcharts|highstock} highcharts/series/color-zones-dashstyle-dot/ 2293 * Dashed line indicates prognosis 2294 * 2295 * @type {Highcharts.DashStyleValue} 2296 * @since 4.1.0 2297 * @product highcharts highstock 2298 * @apioption plotOptions.series.zones.dashStyle 2299 */ 2300 /** 2301 * Defines the fill color for the series (in area type series) 2302 * 2303 * @see [fillColor](#plotOptions.area.fillColor) 2304 * 2305 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 2306 * @since 4.1.0 2307 * @product highcharts highstock 2308 * @apioption plotOptions.series.zones.fillColor 2309 */ 2310 /** 2311 * The value up to where the zone extends, if undefined the zones 2312 * stretches to the last value in the series. 2313 * 2314 * @type {number} 2315 * @since 4.1.0 2316 * @product highcharts highstock 2317 * @apioption plotOptions.series.zones.value 2318 */ 2319 /** 2320 * When using dual or multiple color axes, this number defines which 2321 * colorAxis the particular series is connected to. It refers to 2322 * either the 2323 * {@link #colorAxis.id|axis id} 2324 * or the index of the axis in the colorAxis array, with 0 being the 2325 * first. Set this option to false to prevent a series from connecting 2326 * to the default color axis. 2327 * 2328 * Since v7.2.0 the option can also be an axis id or an axis index 2329 * instead of a boolean flag. 2330 * 2331 * @sample highcharts/coloraxis/coloraxis-with-pie/ 2332 * Color axis with pie series 2333 * @sample highcharts/coloraxis/multiple-coloraxis/ 2334 * Multiple color axis 2335 * 2336 * @type {number|string|boolean} 2337 * @default 0 2338 * @product highcharts highstock highmaps 2339 * @apioption plotOptions.series.colorAxis 2340 */ 2341 /** 2342 * Determines what data value should be used to calculate point color 2343 * if `colorAxis` is used. Requires to set `min` and `max` if some 2344 * custom point property is used or if approximation for data grouping 2345 * is set to `'sum'`. 2346 * 2347 * @sample highcharts/coloraxis/custom-color-key/ 2348 * Custom color key 2349 * @sample highcharts/coloraxis/color-key-with-stops/ 2350 * Custom colorKey with color axis stops 2351 * @sample highcharts/coloraxis/changed-default-color-key/ 2352 * Changed default color key 2353 * 2354 * @type {string} 2355 * @default y 2356 * @since 7.2.0 2357 * @product highcharts highstock highmaps 2358 * @apioption plotOptions.series.colorKey 2359 */ 2360 /** 2361 * What type of legend symbol to render for this series. Can be one of 2362 * `areaMarker`, `lineMarker` or `rectangle`. 2363 * 2364 * @validvalue ["areaMarker", "lineMarker", "rectangle"] 2365 * 2366 * @sample {highcharts} highcharts/series/legend-symbol/ 2367 * Change the legend symbol 2368 * 2369 * @type {string} 2370 * @default rectangle 2371 * @since 11.0.1 2372 * @apioption plotOptions.series.legendSymbol 2373 */ 2374 /** 2375 * Defines the color of the legend symbol for this series. Defaults to 2376 * undefined, in which case the series color is used. Does not work with 2377 * styled mode. 2378 * 2379 * @sample {highcharts|highstock} highcharts/series/legend-symbol-color/ 2380 * Change the legend symbol color 2381 * 2382 * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject} 2383 * @default undefined 2384 * @since 12.0.0 2385 * @product highcharts highstock highmaps 2386 * @apioption plotOptions.series.legendSymbolColor 2387 */ 2388 /** 2389 * Determines whether the series should look for the nearest point 2390 * in both dimensions or just the x-dimension when hovering the series. 2391 * Defaults to `'xy'` for scatter series and `'x'` for most other 2392 * series. If the data has duplicate x-values, it is recommended to 2393 * set this to `'xy'` to allow hovering over all points. 2394 * 2395 * Applies only to series types using nearest neighbor search (not 2396 * direct hover) for tooltip. 2397 * 2398 * @sample {highcharts} highcharts/series/findnearestpointby/ 2399 * Different hover behaviors 2400 * @sample {highstock} highcharts/series/findnearestpointby/ 2401 * Different hover behaviors 2402 * @sample {highmaps} highcharts/series/findnearestpointby/ 2403 * Different hover behaviors 2404 * 2405 * @since 5.0.10 2406 * @validvalue ["x", "xy"] 2407 * 2408 * @private 2409 */ 2410 findNearestPointBy: 'x' 2411}; 2412/* * 2413 * 2414 * Default Export 2415 * 2416 * */ 2417export default seriesDefaults;
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.